In the US, when people work together, they may look for a colleague or any person to say something or for any other reason, asking colleagues or other people this type of question:

  1. Have you seen Michael?
  2. Did you see Michael?

Which is considered right if the question refers to an activity (in our case "see") during the day and not in the past in general?

  • 4
    "Have you seen Michael today?" or "Did you see Michael today?" are both right.
    – GEdgar
    Commented Jun 27, 2015 at 23:48
  • 2
    "X, have you seen Michael" might be interpreted as "I haven't seen Michael today, I {wonder if he's here today/need to see him today}, have you seen him today?", whereas "X, did you see Michael" might be what you say if you already saw Michael, and when you saw Michael he told you that he was looking for X, so you wonder whether Michael did find X. (Michael might have told you 5 minutes ago or yesterday). Another way to say this latter idea is "Did Michael find you? (If it was just minutes ago) or "Did Michael ever find you?" (if it was hours or days ago). Commented Jun 28, 2015 at 11:12
  • To clarify, people already saw Michael during a day, maximum 2 hrs before the question, but ask "have you seen him?"
    – Gogog
    Commented Jun 29, 2015 at 18:33
  • If you're looking for him, asking have you seen him? is almost always correct. It doesn't matter how long ago he was last seen. Commented Apr 30, 2016 at 14:06

1 Answer 1


Have you seen Michael today?

Have you seen Michael in the last 3 days / 3 years / 30 years?

These phrases are all correct. "Did" cannot apply: it is used for a "remote" past: one that is "detached" from this time, day, week, etc.

Did you see Michael this morning? (now it is the afternoon)

Did you see Michael yesterday / last week / last year / 20 years ago?

These phrases are all correct. "Have" cannot apply: it is used when the past is "attached" to this time.

In other words, it is not a question of how far back something happened. It is just a question of how you describe it; meaning up to this moment or with a period in between, which detaches that past from this time.


  1. In the last 10 years I have been abroad 20 times (it's a long time, but it is "up to now")
  2. Yesterday I went to London (yesterday does not "touch" this moment: it ended some hours ago).
  3. In the last few days (they do "touch" this time) I saw John
  4. In the last 20 years (the period is very long, but it is "up to now") I have seen John very many times.

This is how it should be. What is actually used is a different story, of course.

  • Hey, alsa, and what's the difference between: 'Have you seen Michael in the last year?' and just 'Did you see Michael last year?'? Thanks! Commented Nov 17, 2015 at 21:00
  • 1
    @ArtyomLugovoy. The two phrases are correct. In fact, as far as I know, "In the last year" means in the last 365 days (which means up to now) and "Last year" means the last full year, which normally does not "touch" this moment (unless today's date is the first of January ...). I hope it is now clearer.
    – alsa
    Commented Feb 27, 2016 at 16:52
  • However this answer does not explain the difference between 1. Did you see Michael? and 2. Have you seen Michael? When no time reference is mentioned but the speaker is "in" the present.
    – Mari-Lou A
    Commented Apr 30, 2016 at 7:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.