Past perfect

Past perfect

Do you know how to use phrases like They'd finished the project by March or Had you finished work when I called? Test what you know with interactive exercises and read the explanation to help you.

Look at these examples to see how the past perfect is used.

He couldn't make a sandwich because he'd forgotten to buy bread.
The hotel was full, so I was glad that we'd booked in advance.
My new job wasn't exactly what I’d expected.

Try this exercise to test your grammar.

Grammar test 1

Grammar B1-B2: Past perfect: 1

Read the explanation to learn more.

Grammar explanation

Time up to a point in the past

We use the past perfect simple (had + past participle) to talk about time up to a certain point in the past.

She'd published her first poem by the time she was eight. 
We'd finished all the water before we were halfway up the mountain.
Had the parcel arrived when you called yesterday?

Past perfect for the earlier of two past actions

We can use the past perfect to show the order of two past events. The past perfect shows the earlier action and the past simple shows the later action.

When the police arrived, the thief had escaped.

It doesn't matter in which order we say the two events. The following sentence has the same meaning.

The thief had escaped when the police arrived.

Note that if there's only a single event, we don't use the past perfect, even if it happened a long time ago.

The Romans spoke Latin. (NOT The Romans had spoken Latin.)

Past perfect after before

We can also use before + past perfect to show that an action was not done or was incomplete when the past simple action happened.

They left before I'd spoken to them.
Sadly, the author died before he'd finished the series.


We often use the adverbs already (= 'before the specified time'), still (= as previously), just (= 'a very short time before the specified time'), ever (= 'at any time before the specified time') or never (= 'at no time before the specified time') with the past perfect. 

I called his office but he'd already left.
It still hadn't rained at the beginning of May.
I went to visit her when she'd just moved to Berlin.
It was the most beautiful photo I'd ever seen.
Had you ever visited London when you moved there?
I'd never met anyone from California before I met Jim.

Do this exercise to test your grammar again.

Grammar test 2

Grammar B1-B2: Past perfect: 2


Language level

Average: 4.3 (64 votes)
Do you need to improve your English grammar?
Join thousands of learners from around the world who are improving their English grammar with our online courses.

Hi Sefika,

1. It may or may not have the same meaning. To be precise, "a six-month project" means that the project lasted exactly six months. If you say "I was working on a project for six months", that only shows the time that you worked on it, not the length of the whole project. So, it's possible that the project was longer than six months.

2. Yes, the sentences are similar in that they both refer to a past action. But the choice of simple vs. continuous is important - that is the main difference in meaning between the sentences.

3. Yes, this sentence also refers generally to a past action. You're right to point out the importance of the context. That will make one form better than the other (e.g. To talk about actions that happened during that project, "I was working ..." is better. To talk about what happened after and as a result of that project, "I had been working ..." is better).

Does that make sense? I hope it helps.


LearnEnglish team

Regarding the first question I asked, what I was trying to say was "It was a six-month project for me". The project may have lasted longer, of course, as you pointed out.

Submitted by bluefreddie3 on Thu, 16/02/2023 - 18:08


Hi there,

Which one is correct:
After they got their rucksacks they went to Queenstown.
After they had got their rcuksacks they went to Queenstown.

Or can I use both? (they both sound okay to me...)

Submitted by kingsonselvaraj on Wed, 08/02/2023 - 01:18


Dear Team,

Please let me know which of the following is grammatically correct ?

1. "I offered my phone number to him but he said that he has got a connection with the club and is having conversation with the people in the club."

2. "I offered my phone number to him but he said that he 'had got' a connection with the club and 'was having' conversation with the people in the club."

These complex sentences makes me sometimes slips off from the grammar flow. So please help me in this regard.

Hello kingson,

If that man still has a connection and is still having conversations with the people at the time you say this sentence, 1 is the better option. The use of present forms shows that the connection and conversations were true in the past and are still true now.

Using past forms (such as in 2) is also correct, though it's not as clear whether the connections and conversations are still happening now. There is one mistake in 2, however: 'had got' is not the past of 'has got'. Instead you should just use 'had'.

All the best,
LearnEnglish team

Thank you very much for the explanation.

This actually leads me to ask another question.

Direct speech: John said to me "I have got a pen"
Indirect : John told me that he had got a pen.

Here the past tense for "have got" is "had got"

Please let me know, whether my understanding is correct or not.

Thank you,

Hello kingson,

No, I'm afraid that is not correct. The past version of 'has/have got' is simply 'had'.

We only use 'has/have got' in the present.

The verb form 'had got' exists, but it is the past perfect of the verb 'get', which has a different meaning:

  • I've got holidays soon. ('have got' = present simple)
  • I got sick just before my holidays. ('got' = past simple)
  • I had got sick just before my flight and so I caught the next one. ('had got' = past perfect)

All the best,
LearnEnglish team

Dear Kirk,

Thank you very much for your effort to explain things to me.

You mentioned "have got" is a present simple. Is not it (have got) a "present perfect?"

I am just clarifying this bit. That's all.