Skip to main content

Past simple or present perfect?

Past simple = I worked Present perfect = I have worked

Definite time in the past

We use the past simple to refer to definite time in the past (when we specify the time or how long) and usually with past time expressions such as yesterday, two weeks ago, last year, in 1995:

  • We met in January 1975. We went to America together in 1978.
  • Not: We have met in January 1975. We have gone to America together in 1978.

Time up to now

We use the present perfect to talk about time up to now, that is, events that took place in the past but which connect with the present. The present perfect is often used with time expressions which indicate time up to now, for example today, this year, in the last six months:

  • I haven’t seen her since January 1995.
  • Not: I didn’t see her since January 1995.

Compare

I haven’t seen her for over 20 years.The last time I saw her was over 20 years ago.
I didn’t see her for over 20 years and then I bumped into her last week.I saw her last week but the last time I saw her before last week was over 20 years ago.

Compare

I finished my homework an hour ago.Definite time in the past.I finished my homework at a time in the past (one hour ago).
I haven’t finished my homework yet.From a time in the past up to now.I started my homework at a time in the past and it is not finished yet (yet means ‘up to now’).
We had a good day yesterday.Definite time in the past. We had a good day in the past (yesterday).
We have had a good day so far.From a time in the past up to now.The day has been good until now but it hasn’t finished yet.
We didn’t see Diana last week.Definite time in the past (last week).
We haven’t seen Diana this week.From the beginning of the week until now.
I didn’t have any lunch today.Today is not finished but it is almost the end of the day and past lunchtime.
I haven’t had any lunch today.It is still today and not too late to have lunch.
See also
  • Present perfect simple (I have worked)