Grammar referenceB1

The present perfect

The short answer

The present perfect is have or has plus a past participle. It connects a past event to now, and covers three things: experience with no time attached, something inside a period that is still open, and a past action whose result still matters. A finished time expression blocks it.

Or skip ahead and practise it now: present perfect, free, no signup.

The rule

The present perfect links the past to the present. It is formed with have or has plus the past participle, which for regular verbs is the same as the past simple form and for irregular verbs is often a third form. The present perfect is used for experience without a stated time, for actions inside an unfinished period, for results that still stand, and for duration up to now with for and since. It cannot be used with a finished time expression, which is the rule that decides most cases in practice.

FormStructureExample
Affirmativesubjecthave/haspast participleI have finished.
Negativesubjecthaven’t/hasn’tpast participleShe hasn’t replied.
QuestionHave/Hassubjectpast participleHave you eaten?
Third formregular = -edirregular has its ownworked, gone, seen, written
Continuoushave/hasbeenverb-ingI’ve been waiting.

Part 1 of 3

Experience, with no time attached

This is the “have you ever” use: the question is whether something has happened at any point in your life, not when. Ever, never, before and twice are the usual company.

Attaching a specific time forces the other tense. Have you ever been to Japan?: Yes, I went in 2019. The moment a date appears the sentence switches to the past simple, which is why answers so often change tense mid-conversation.

I’ve never eaten oysters.

At no point so far.

She’s worked abroad twice.

Two occasions, no dates given.

Have you read his latest book?

At any point up to now.

Part 2 of 3

Unfinished time, and results that stand

If the period is still open: today, this week, this year, the present perfect is used, because more could still happen inside it. I’ve had three coffees today implies the day is not over.

The other use is a past action whose consequence is present. I’ve lost my keys means they are still lost; that is the whole reason for saying it. Just, already and yet belong to this use, and they are what turns a bare event into a piece of current news.

We’ve had a lot of rain this month.

The month is not over.

He’s just left.

Moments ago, and it explains why he isn’t here.

They haven’t confirmed yet.

Up to now, and confirmation is still expected.

NBYet belongs to negatives and questions; already belongs to positives.

Part 3 of 3

For, since, and the continuous

Duration up to the present takes the present perfect with for or since: I’ve worked here for six years. Most European languages use a present tense here, which makes this the single most persistent error with the tense.

The continuous form: have been plus -ing: stresses the activity rather than the result. I’ve read the report says the reading is done; I’ve been reading the report says you are in the middle of it. With for and since either can work, and the continuous emphasises duration.

I’ve known her since university.

And still do.

It’s been raining all morning.

Continuous, the activity is the point.

I’ve written three emails. / I’ve been writing emails all morning.

Result, then activity.

NBThe first counts what is finished; the second describes how the time was spent.

Mistakes to avoid

What learners actually get wrong

  • I have finished the report yesterday.

    I finished the report yesterday.

    A finished time expression is incompatible with the present perfect. Yesterday, ago, last week and any specific date force the past simple, and this is the fastest single check you can run on the tense.

  • I am here since two hours.

    I’ve been here for two hours.

    Two errors at once, and they travel together: the tense must be a perfect, and a length of time takes for rather than since. Both come from languages that use a present tense and a single preposition.

  • When have you finished?

    When did you finish?

    When asks for a specific point, which closes the period, so it cannot take the present perfect. Have you finished? is fine, it asks whether, not when.

  • I have went to the bank.

    I have been to the bank.

    The perfect needs the past participle, not the past simple form. And been rather than gone, because you came back. He has gone to the bank would mean he is still there.

Now use it

Present perfect

for, since, just, yet, already, ever: the words that pick the tense. Reading a rule and being able to apply it are different skills, and only one of them shows up when you speak.

  • 20 questions
  • Instant feedback
  • No ads, no signup
Start the exercise

Questions

Asked and answered

Why does my language not have this tense?
Many do have the form and use it differently. French passé composé and German Perfekt look identical to the English present perfect but function as ordinary past tenses, so the form transfers and the meaning does not. That is worse than having no equivalent, because it feels familiar while being wrong.
Is American English different?
Yes, in a limited way. American English accepts the past simple where British English prefers the perfect, especially with just, already and yet: “did you eat yet?” is normal in the US. Both are correct within their variety; Cambridge and IELTS expect the British pattern.
Been or gone?
Been means went and came back; gone means went and is still there. She’s been to Paris describes an experience; she’s gone to Paris explains her absence. This distinction exists only in the perfect, the past simple has just went for both.