Level: beginner

The present perfect is formed from the present tense of the verb have and the past participle of a verb.

We use the present perfect:

  • for something that started in the past and continues in the present:

They've been married for nearly fifty years.
She has lived in Liverpool all her life.

  • when we are talking about our experience up to the present:

I've seen that film before.
I've played the guitar ever since I was a teenager.
He has written three books and he is working on another one.

We often use the adverb ever to talk about experience up to the present:

My last birthday was the worst day I have ever had.

and we use never for the negative form:

Have you ever met George?
Yes, but I've never met his wife.

Present perfect 1


Present perfect 2


  • for something that happened in the past but is important in the present:

I can't get in the house. I've lost my keys.
Teresa isn't at home. I think she has gone shopping.

Present perfect 3


Present perfect 4


have been and have gone

We use have/has been when someone has gone to a place and returned:

A: Where have you been?
B: I've just been out to the supermarket.

A: Have you ever been to San Francisco?
B: No, but I've been to Los Angeles.

But when someone has not returned, we use have/has gone:

A: Where's Maria? I haven't seen her for weeks.
B: She's gone to Paris for a week. She'll be back tomorrow.

have been and have gone


Present perfect with time adverbials 

We often use the present perfect with adverbials which refer to the recent past:

recently just only just

Scientists have recently discovered a new breed of monkey.
We have just got back from our holidays.

or adverbials which include the present:

so far     until now     up to now
(in questions)
yet (in questions and negatives)

Have you ever seen a ghost?
Where have you been up to now?
A: Have you finished your homework yet?
B: No, so far I've only done my history.

After a clause with the present perfect we often use a clause with since to show when something started in the past:

I've worked here since I left school.
I've been watching that programme every week since it started.

Present perfect with time adverbials 1


Present perfect with time adverbials 2


Be careful!
We do not use the present perfect with adverbials which refer to a finished past time:
yesterday last week/month/year in 2017 when I was younger etc.

I have seen that film yesterday.
We have just bought a new car last week.
When we were children we have been to California.

but we can use the present perfect with adverbials which refer to a time which is not yet finished:
today this week/month/year now that I am 18 etc.

Have you seen Helen today?
We have bought a new car this week.

Present perfect and past simple 1


Present perfect and past simple 2


Level: intermediate

Present perfect continuous

The present perfect continuous is formed with have/has been and the -ing form of the verb.

We normally use the present perfect continuous to emphasise that something is still continuing in the present:

She has been living in Liverpool all her life.
It's been raining for hours.
I'm tired out. I've been working all day.
They have been staying with us since last week.

We do not normally use the present perfect continuous with stative verbs. We use the present perfect simple instead:

I've always been liking liked John.

Present perfect continuous 1


Present perfect continuous 2


Present perfect for future

We normally use the present simple to talk about the future in clauses with before, after, until, etc.:

I'll keep looking until I find my book.
We'll begin when everyone arrives.

but we can also use the present perfect:

I'll keep looking until I have found my book.
We'll begin when everyone has arrived.


What if I'm talking about an event in which I lost my keys at some point. In this case it's not really important for the present, should I use simple past?

Hello larissavb,

If the action has no relevant to your current state then the past simple is probably the best choice. For example, if you were just telling an anecdote about the past then you would use the simple past ('Did I ever tell you about the time I lost my keys? It was like this...').




The LearnEnglish Team

Thanks, Peter M. On this page, you say:

for something that started in the past and continues in the present :

She has lived in Liverpool all her life.

Note: We normally use the present perfect continuous for this:
She has been living in Liverpool all her life.

I'm wondering whether there is really not any difference between these. Please tell me the difference so that I can use it exactly.

Hello Crokong,
The difference between the present perfect simple [have/has + verb3] and the present perfect continuous [have/has + been verb-ing] is a tricky one. In some contexts both forms are possible and the choice is dependent on the speaker's choice of emphasis (the result of the action or the the process of achieving that result), while in other contexts there is a clear difference in meaning.
We have a page on this topic which I think will help to clarify it for you. You can find it here:
You might also find our page on the continuous aspect helpful:
The LearnEnglish Team

Hello sir. What is the difference between the following sentences?

I recently met her.
I have recently met her.

Hello Crokong,
Both sentences are grammatically correct.
The choice is between the past simple ('met') and the present perfect ('have met').
We use the past simple when an event is complete and is in the past:
We use the present perfect when an event in the past has an effect on the present in some way:
Thus, if your speaker considers the meeting important in some way in the present (because it has an effect of some kind), then they are more likely to use the present perfect. If they consider the meeting to be something finished and entirely in the past, then they are more likely to use the past simple.
I'd also note that US English speakers tend to use the past simple more in this kind of sentence. British English speakers often use the present perfect for very recent events.
The LearnEnglish Team

I have come across two sentences in a grammar multiple choice item.
The first is "The tennis tournament so far is widely estimated to have cost over $1 million, making it the most expensive so far."
The second says "The tennis tournament is so far widely estimated to have cost over $1 million, making it the most expensive so far."
According to the book, the first sentence is the correct answer. However I cannot see why the second is not correct. Can't we place "so far" after the verb is, and still have the same meaning?

Thank you

Hello enalia,
The position of 'so far' is very flexible and both version are grammatically correct. As an aside, the sentence is not very well written stylistically as it repeats 'so far' rather than finding an alternative phrase such as 'thus far' or 'to date'.
The LearnEnglish Team

Hello! I have a question about the use of present perfect with periods of time. I know that we can use present perfect to talk about our general experience:
"I've lived in London" (but I don't live there now)
But can we use it in the same way with periods of time?
"I've lived in London for 5 years" (but I don't live there now, I only have such an experience, I moved to a different city 10 years ago).
Or the use of periods of time with present perfect necessarily means that whatever I'm describing has been happening up until the moment I said it?
Hopefully, I managed to pose my question in a clear way. Thank you for your time!
Best regards,

Hello LuhacheP,

We use the present perfect to refer to a time period which is in some way unfinished.

This could be our life:

I've lived in London. [in my life and I'm still alive]


When we use for or since with the present perfect, it always refer to a time extending up to the moment of speaking. If the time is finished then we would normally use the past simple, but with an implied or stated time reference:

He lived in London for five years (in the 1980s/when he was a child/before he moved to Paris)



The LearnEnglish Team