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.2 (126 votes)

Hello kingson,

If I were in your position, I would probably say something like 'Employee Y usually send me emails about special deals. Could you do that for me too?', but yes, it's also fine to say something like 'Employee Y had been sending me regular emails about special deals before going on holiday'. Perhaps you could leave out the reference point ('before going on holiday'), but I'd recommend including it to make it clear.

All the best,
The LearnEnglish Team

Submitted by NoorEldeen on Sat, 04/12/2021 - 19:49


there was a question in my exam that want's me to correct the grammatical mistake but I don't know the answer the question was:I have already studied since 2 hours.
a:I have been studied since 2 hours
b:I has been studying for 2 hours
c:I have studied 2 hours ago
d:I studied since 2 hours
e:I have already studied for 2 hours

Hello NoorEldeen,

The correct answers is 'e'.

'a' is grammatically possible but makes the sentence passive.
'b' is incorrect. You need to say 'have' after 'I'.
'c' is incorrect. 'Ago' shows finished time so past simple is needed ('studied') not present perfect ('have studied').
'd' is incorrect. 'Since' needs a point of time (12.30) and not a period of time ('2 hours'). 'Since also shows unfinished time so needs the present perfect and not the past simple.

The LearnEnglish Team

Submitted by kingsonselvaraj on Fri, 26/11/2021 - 23:38


Dear Team,
I have two things to ask.
1. I have a friend (We are friends for 10 years)
How can I say that?
A. He is my friend for the past 10 years
B. He has been my friend for the past 10 years.
In which way I can say it? Please help me in this line.
2. It seems "to have finished."
What sort of tense (to have finished) is used here and what does this mean?
Please enlighten me in this regard.
Thank you,

Hi kingsonselvaraj,

1. Sentence A is understandable, but sentence B is the correct one. The verb needs the present perfect to support the meaning of "for the past 10 years", a duration of time from the past until the present.

2. This is called a perfect infinitive. The structure is "to + have + past participle". It shows that the action ("finish") is already complete, i.e., it happened and finished sometime before the present moment. You can read more about it on this Cambridge Dictionary page:…

I hope it helps :)

The LearnEnglish Team

Dear Jonathan,

Thank you very much for your response. So (from your answer I understand) we can also say "He is my friend for 10 years." Is that right?
I have another question...
My friend bought a house few days ago and the house has got a young tree at the front yard. I asked him the following question using present perfect.
Has this tree been there already? (meaning my friend did not plant it but it comes with the house when he bought the house)
Is the question right ? Or is there any grammatical error in it?
Following that I have another question.
Can I put my question in the following way.
Had the tree been there already when you bought this house?
Please let me know whether this is correct or not?
Thank you again.

Hi kingson,

About "He is my friend for 10 years", some people do say that, and I expect that the meaning (from the past until now) will probably be obvious from the context of the conversation if somebody said that in real life. But, it would be considered incorrect from a grammatical point of view. So, can we say it? Yes, we can, but whether it's appropriate or not depends on the situation. In a formal situation, for example, I would say "He's been ..." instead, as there is usually a higher expectation that people should speak clearly and accurately, but in a casual conversation it would probably be acceptable.

For the question about the tree, it should be in the past simple, because you are asking about a past time:
-- Was this tree there already (when you bought the house)?

The past perfect ("Had the tree been there ...") doesn't work here, because the tree was still there at the moment of buying the house, and is still there now (i.e. it was and is an ongoing state).

Best wishes,
The LearnEnglish Team

Thank you very much, Jonathan,

Can we use the present perfect to indicate the "on going status" (the tree is still there) of the tree?
Has this tree been there already, when you bought the house? (I know this refers to a past time (when you bought) but still want to know whether we can construct a sentence like this).
Thank you,

Hi kingson,

No, because the time of "when you bought the house" is in the past, not ongoing, as you pointed out. But we could ask "How long has the tree been there?" (i.e., until the present moment) using the present perfect.

I hope that helps.

The LearnEnglish Team

Dear Jonathan,

Thank you very much for your responses. I understand the ongoing status and relating to present moment can be mentioned by the present perfect tense. I have a new question now. Sometimes we use present perfect tense to relate to a futuristic action.
e.g. After you have finished (present perfect) the work come and see me (future action).
In this case it is not an ongoing action or it is not related to present/current situation.
So please explain to me how we can understand this kind of verb (present perfect tense) use in a futuristic action.
Thank you,