Intermediate grammar · Unit 14 · B1

Present perfect and past 2 (I have done and I did)

Present perfect and past

Use the past simple once the time is finished, whether it is named (yesterday, in 2015) or simply understood. Use the present perfect for a period that is still running: today, this week, recently, since 2019.

Go to the exercises

A A finished time takes the past simple

When you mention a finished time, such as yesterday, last year, on Monday, ten minutes ago, in 2015, use the past simple. The present perfect is not available once the clock has been stopped.

Questions with When ...? and What time ...? also take the past simple, because they ask about a finished moment.

Compare:

Present perfect Past simple
Dan has broken his glasses. He cannot read the menu. Dan broke his glasses on Saturday. He could not read the menu.
Is Priya still here, or has she gone home? When did Priya go home?
  • It was freezing on Tuesday. (not has been)
  • The plumber came about twenty minutes ago. (not has come)
  • Did you watch much telly when you were little? (not have you watched)
  • I got back from Leeds very late last night, so I went straight to bed.
  • When did you move to Cardiff? (not have you moved)
  • What time did the match start?

B A period up to now, or a period that is over

Use the present perfect (have done) for a period that continues until now: today, this week, this morning, recently, since 2019.

Use the past simple (did) for a period that has finished: yesterday, last week, on Sunday, from 2012 to 2016.

Present perfect: the period is not finished Past simple: the period is finished
I've written six emails today. I wrote six emails yesterday.
It hasn't snowed this winter. It didn't snow last winter.
Have you spoken to your mum this morning? (it is still morning) Did you speak to your mum this morning? (it is now afternoon or evening)
Have you heard from Kieran lately? (in the last few days or weeks) Did you hear from Kieran at the weekend?
I've worked at the library since 2019. (I still work there) I worked at the library from 2012 to 2016. (I do not work there now)
I don't know where Owen is. I haven't seen him. (recently) "Was Owen at the wedding?" "I don't think so. I didn't see him."
We've been queuing for forty minutes. (we are still queuing) We queued (or were queuing) for forty minutes. (we are not queuing now)
Hannah lives in York. She has lived there for six years. Hannah lived in Hull for ten years. Now she lives in York.
I've never been skiing. (in my life) I never went skiing when I lived in Austria.

Whether a week counts as finished depends on where the speaker is standing, not on what the calendar would prefer. On the last day of a holiday you say It's been a lovely week. Once you are home again, you say It was a lovely week.

  • It's been a lovely week. We've really enjoyed it.
  • It was a lovely week. We really enjoyed it.
  • Have you seen Grace this morning?
  • I didn't see Grace at the match on Saturday.

Exercises

14.1 Is the part in square brackets correct? Write OK if it is. If it is not, write the correct form.

  1. [I've broken] my phone. The screen won't light up at all.

    OK

    I've broken my phone. The screen won't light up at all.

  2. [Have you lived] in a flat when you were a student?

    Did you live

    Did you live in a flat when you were a student?

  3. [I've finished] the decorating. Come and have a look.

  4. [I've finished] the decorating on Saturday.

  5. Where [have you gone] last weekend?

  6. Callum [has started] his first job in 2008.

  7. I'm looking for my keys. [Have you seen] them?

  8. "[Have you been] to Edinburgh?" "Yes, a few times."

  9. I'm starving. [I haven't had] much to eat today.

  10. When [has the new library been opened]?

14.2 Make sentences from the words in brackets. Use the present perfect or the past simple.

  1. (it / not / snow / this winter)

    It hasn't snowed this winter.

    It hasn't snowed this winter.

  2. (the trains / be / late / recently)

  3. (the trains / late / last Monday)

  4. (I / not / drink / any coffee yesterday)

  5. (I / not / drink / any coffee today)

  6. (Ryan / sell / a lot of cars / this month)

  7. (he / not / sell / so many / last month)

  8. (you / see / any good films / recently?)

14.3 Put the verb into the correct form, present perfect or past simple.

  1. I haven't been (I / not / be) to Iceland, but I'd love to go one day.

    I haven't been to Iceland, but I'd love to go one day.

  2. The taxi arrived (arrive) about five minutes ago.

    The taxi arrived about five minutes ago.

  3. I feel awful. (I / not / sleep) much last night.

  4. (there / be) a storm on Friday, so (there / be) no ferries to the island.

  5. Gareth (teach) at a primary school for twenty years. Then (he / retire). Now he keeps bees.

  6. Aunt Rose lives in Whitby. (she / live) there since she was a girl.

  7. My great-grandmother (die) long before I was born. (I / never / meet) her.

  8. I don't know Sophie's brother. (I / never / meet) him.

  9. It's half past eleven, and (I / not / see) Rachel all morning. I wonder where she is.

  10. " (you / go) to the concert last night?" "Yes, but the band (be) dreadful."

  11. " (it / be) freezing here since we arrived." "Yes, (it / be) minus five yesterday."

  12. "Where do you live?" "In Swansea." "How long (you / live) there?" "Six years." "Where (you / live) before that?" "In Bristol." "And how long (you / live) in Bristol?" "Three years."

14.4 Write sentences about yourself, using the ideas in brackets.

  1. (something you haven't done today)

    Example answer: I haven't watched any telly today.

  2. (something you haven't done today)

  3. (something you didn't do yesterday)

  4. (something you did yesterday evening)

  5. (something you haven't done recently)

  6. (something you've done a lot recently)

See also