The quick rule: Use the past simple (did, saw, went) for a finished action at a finished or stated time — I saw her yesterday. Use the present perfect (have/has + past participle: have done, have seen, has gone) when the time is unspecified, unfinished, or the past action still matters right now — I've seen her. If a sentence names a finished time such as yesterday, in 2019 or last week, you almost always need the past simple, never the present perfect.
The past simple describes something that started and ended in the past. The moment is over, and it is usually anchored to a specific time — either stated outright or clearly understood from context. It pairs naturally with finished-time markers like yesterday, last night, two hours ago, in 2019, when I was ten and at six o'clock.
Whether it happened one minute ago or a century ago, the past simple treats the event as closed and sealed off from the present.
The present perfect (have or has + the past participle) links a past action to the present moment. The form is the same for every subject except he, she and it, which take has: I have worked, she has gone, they have seen. Use it for four main situations.
When something happened at some point before now and the exact time is unknown or beside the point:
With for (a length of time) and since (a starting point), for something that began in the past and is still true:
When the time frame — today, this week, this year — has not ended yet:
This is the single most common mistake learners make. The present perfect cannot sit beside a finished-time expression such as yesterday, last year or ...ago, because those words close the door on the present.
The instant you name a finished time, switch to the past simple. Feel the difference: I've broken my arm (it's in a sling now — present result) versus I broke my arm in 2019 (a fact filed away in the past).
Both usually point to the present perfect, but the past simple is fine for a finished stretch of time: I lived in Spain for a year (finished — I've since left) versus I've lived in Spain for a year (still there). Since almost always takes the present perfect: I've felt better since Monday.
He's gone to the shop means he is there now or on his way and hasn't come back. He's been to the shop means he went and has already returned — and it's also the form for experience: I've been to Paris twice.
These typically trigger the present perfect in British English: just = a moment ago, already = sooner than expected, yet = up to now (in questions and negatives). I've just arrived. I've already paid. Have you eaten yet? I haven't decided yet.
The same phrase can take either tense depending on the clock. I've drunk three coffees this morning (said while it's still morning) but I drank three coffees this morning (said in the afternoon, when the morning is done).
Because the present perfect reaches into the present, it usually needs a subject who could still add to the tally. J.K. Rowling has written many books (she may write more), but Charles Dickens wrote many books — his output is a closed chapter.
Finished time, finished tense. If the sentence tells you exactly when, and that when is over, reach for the past simple. If it's about an experience, a result you can still feel, or a stretch of time running up to now, reach for the present perfect. Quick test: could you add the word yesterday? If yes, you want did; if yesterday would sound wrong, you want have done.
Here the two main dialects really do diverge, so this isn't a myth. British English strongly prefers the present perfect with just, already and yet. American English happily uses the past simple in the very same spots.
Neither version is wrong; this is a real regional split, and American usage accepts the past simple where British usage would flag it. Americans also say Did you ever see...? for life experience where British speakers lean toward Have you ever seen...? Beyond these cases, both dialects obey the same core rule: a stated, finished time always takes the past simple.
The past simple describes a finished action at a finished time (I saw it yesterday). The present perfect links a past action to the present — an experience, a result you still feel, or a period of time reaching up to now (I've seen it). If the sentence names a finished time, use the past simple.
No. The present perfect cannot combine with a finished-time expression such as yesterday, last week, in 2019 or two hours ago. "I have seen him yesterday" is incorrect; say "I saw him yesterday." Those words close off the past, so they force the past simple instead.
Both are correct, depending on the time. Use "I've finished" for a recent action that still matters now, with no stated time. Use "I finished" when a finished time is given or understood, as in "I finished at six." In American English, "I finished" is common even without a stated time.
Yes. American English often uses the past simple where British English prefers the present perfect — especially with just, already and yet ("I just ate," "Did you finish yet?"). Both dialects still require the past simple whenever a finished time is stated, so "I saw her yesterday" is universal.
"He's gone to Paris" means he is there now or on his way and has not returned. "He's been to Paris" means he went and has come back, or simply has the experience of visiting. So "gone" points to absence now, while "been" points to a completed trip or a life experience.