How English works

Present perfect or past simple?

Both of them look back. Only one of them also says: and it matters now.

A2–B1 5 min read Updated 10 October 2026

By Dilnoza Yusufova · Linguist

In short

  • A finished time in the sentence — yesterday, in 2019, at six — forces the past simple.
  • No time, or a time frame that still includes today, takes the present perfect.
  • Questions with when are always past simple.

Past simple

A finished moment. The time is closed — named outright, or obvious from the story.

I saw her on Monday.

  • yesterday
  • last week
  • in 2019
  • two days ago
  • then
  • when I was ten

Present perfect

A result that reaches now. The time frame is still open, and it is never named.

I have seen her twice this week.

  • already
  • yet
  • just
  • ever
  • never
  • so far
  • since 2019
The present perfect is not a past tense. It is a present tense about the past — which is why it cannot sit next to yesterday.

Why the rule about “yesterday” is not arbitrary

Look at what the form is made of: have plus a participle. The part that carries the tense is have, and have is present. That is the whole explanation of a rule most textbooks state without one. A present-tense verb cannot be anchored to a finished past moment, so I have seen her yesterday breaks before it reaches any rule about perfects — it puts a present verb on a closed day.

Everything below follows from that. The past simple places an event inside finished time. The present perfect places a result inside time that is still running, and the clock it runs on is the one you are reading this with.

How to choose, line by line

What the sentence doesFormExample
Names a finished timePast simpleShe left at six.
Asks when something happenedPast simpleWhen did you arrive?
Tells a story in orderPast simpleHe came in, sat down and said nothing.
Describes a period now closedPast simpleWe lived there for a year.
Reports news with no timePresent perfectShe has left.
Counts up to nowPresent perfectI have read three of them.
Describes a period still openPresent perfectWe have lived here for a year.

Same room, two sentences

A colleague walks out of a meeting. Both sentences below are correct English, and they do not mean the same thing.

This is the test worth keeping: ask yourself whether you are reporting when, or reporting where things stand. The first is the past simple. The second is the present perfect.

Four jobs only the present perfect does

1. The result is still here

2. Experience in a life that is still going on

3. A period that has not closed yet

4. News, before the details arrive

In real speech That pair is a pattern you can hear on any news bulletin: the first sentence is a present perfect, and every sentence after it switches to the past simple. The perfect announces that something has changed; the past simple fills in a closed timeline. Once you notice it, the two forms stop feeling interchangeable.

For and since: the trap in the middle

For takes a length of time — for three years, for an hour. Since takes the point it started from — since 2016, since Monday. Both go with the present perfect when the period runs up to now, and that is exactly where speakers of many other languages reach for the present tense instead.

Containers that close Some time phrases change sides depending on the hour. This morning is an open container while it is still morning — I have had three coffees this morning — and a closed one by the afternoon: I had three coffees this morning. Nothing about the phrase changes. The clock does.
British and American Did you eat yet? and I already ate are normal American English, where British English expects Have you eaten yet? and I’ve already eaten. Neither is an error, and both are understood everywhere. If you are sitting a British exam, use the perfect.

Mistakes to avoid

Wrong: I have seen her yesterday. correct: I saw her yesterday.

A named finished time and a present-tense verb cannot share a clause.

Wrong: When have you arrived? correct: When did you arrive?

The question asks for a point inside finished time. That is what the past simple is for.

Wrong: How long do you know him? correct: How long have you known him?

The knowing started in the past and reaches now, so English uses the perfect here.

Wrong: I have finished it two hours ago. correct: I finished it two hours ago.

Ago counts backwards from now to a closed point. Naming the point closes it.

Check yourself

Try 5 sentences

Loading…

Getting your first question ready.

Keep this

  1. A named finished time takes the past simple. There is no exception worth learning.
  2. If the result or the period reaches now, use the present perfect.
  3. Questions with when are past simple, every time.

Both forms also turn up together in mixed practice, where nothing tells you in advance which one the sentence wants — which is how they come at you outside a lesson.

Questions readers ask

So is “Did you eat yet?” wrong?

Not in American English, where it is the ordinary way to ask. British English expects Have you eaten yet? This is a difference between varieties, not a mistake — though British exams mark the perfect as the answer.

Is the present perfect a past tense?

No. The verb that carries the tense is have, and it is present. The form talks about the past, but it is anchored in the present — which is why a finished-time phrase cannot be attached to it.

What about “this morning”?

It depends on when you are speaking. While it is still morning the period is open and takes the perfect; after midday it is closed and takes the past simple.

Practise this

Next in this series

Dilnoza Yusufova Linguist

Writes the How English works series on LingoChallenge.