English grammar

CEFR A2-B1

Test yourself (24 questions)

Present perfect in English: rules, for and since, examples

The present perfect is the tense that connects the past to the present. It is also one of the most troublesome for learners, because many languages do not separate "I have done" from "I did" the way English does. Once you see what the present perfect is actually for, the split stops feeling arbitrary.

How to form the present perfect

The structure never changes:

/ + participle

SubjectAuxiliaryPast participleExample
/ / / .
/ / .

For regular verbs the past participle is the same as the past simple: the -ed form (worked, played, finished). For irregular verbs you have to learn it, and it is often different from the past simple (see go, went, gone below). The irregular verbs page lists all three forms of the common ones.

  • : add not after the auxiliary. I have not seen it. She has not arrived. The short forms are haven't and hasn't.
  • : put the auxiliary first. Have you finished? Has he called?

When to use the present perfect

There are three main jobs, and almost every present perfect sentence you meet is doing one of them.

1. A past action with a result that matters now

The action is finished, but you are talking about its effect on the present.

  • I have lost my keys. (So I cannot get in now.)
  • She has broken her leg. (So she cannot walk now.)

2. Life experience, up to now

You are talking about whether something has ever happened in your life, without saying when.

  • I have been to Japan.
  • Have you ever eaten octopus?
  • He has never flown before.

3. A situation that started in the past and continues

The action began earlier and is still true now. This is where for and since live.

  • I have lived here for ten years. (And I still live here.)
  • We have known each other since university.

When you want to stress the activity and how long it has gone on, English often uses the present perfect continuous instead: I have been waiting for an hour.

For vs since

Both answer "how long?", but they take different things:

UseWithExamples
length , ,
, 2010,

If today is Thursday, I have been here for three days = I have been here since Monday. Same meaning, different framing. For where already, yet and still go in the sentence, see for, since, already, yet and still.

The big one: present perfect vs past simple

This is the distinction that matters most, and the rule is simpler than it looks.

Past simplePresent perfect
Unfinished unstated
I saw her yesterday.I have seen her.
He arrived at six.He has arrived.
We lived in Rome in 2015.We have lived in Rome.

The test: , . Words like yesterday, last week, in 2015, two days ago all pin the action to finished time, so they force the past simple. I have seen her yesterday is wrong; it has to be I saw her yesterday. The past simple page covers the other half of this split.

Words that often signal the present perfect: ever, never, just, already, yet, so far, recently, this week (a week that has not finished).

British vs American usage

British and American English differ here, and both are correct in their own variety:

  • With just, already and yet, British English prefers the present perfect (I have just eaten. Have you finished yet?), while American English often allows the past simple (I just ate. Did you finish yet?).
  • The past participle of get is in British English and usually gotten in American English (It has got cold vs It has gotten cold).

If you are learning British English, use the present perfect with just, already and yet. More differences like this are collected in British vs American grammar.

Common mistakes

The ones that turn up most:

  1. . I have visited Paris last year. Wrong. Say I visited Paris last year or drop the time word: I have visited Paris.
  2. participle. I have went, he has ate, they have wrote. The present perfect needs the participle: gone, eaten, written.
  3. vs . for Monday and since two hours are both wrong. It is since Monday and for two hours.
  4. Forgetting //. She have finished should be She has finished.

Practice

Choose the correct form. Answers are below.

  1. I ___ (not see) that film yet.
  2. We ___ (live) in this house since 2018.
  3. ___ you ever ___ (be) to Canada?
  4. She ___ (finish) her homework an hour ago.
  5. They ___ (know) each other for twenty years.

: 1. have not seen 2. have lived 3. Have ... been 4. finished (a finished time, "an hour ago", forces the past simple) 5. have known

Practise: test yourself

Pick the right one

0/8

Choose the present perfect or the past simple for each sentence (British English).

  1. I her last night.

  2. I him a lot since he came back.

  3. She her hand three times since she was ten.

  4. We to that school when we were kids.

  5. He his job last year.

  6. He in this house since he was a child.

  7. They house last year.

  8. She , so she does not want to eat.

Fill in the blank

0/8

Complete each sentence with the present perfect form of the verb given.

  1. She home. (go)

  2. I him before. (meet)

  3. We here for three years. (live)

  4. He all his money. (lose)

  5. They the door. (open)

  6. I to my mother today. (speak)

  7. You my life. (change)

  8. She nothing all day. (eat)

Matching

0/8

Match each verb to its past participle.

Frequently asked questions

What is the present perfect tense?
The present perfect links the past to the present. It is formed with have or has plus the past participle (I have finished, she has gone) and is used for past actions that still matter now, experiences in your life so far, and situations that started in the past and continue.
What is the difference between present perfect and past simple?
Use the past simple for a finished action at a finished time (I saw him yesterday). Use the present perfect when the time is unfinished or unstated and the action connects to now (I have seen him, so I know the news). If you say exactly when, you almost always need the past simple.
When do I use for and since with the present perfect?
Use for with a length of time (for three years, for ten minutes) and since with a starting point (since 2019, since Monday, since I was a child). Both answer how long a situation has lasted.
Is it I have went or I have gone?
It is I have gone. Go is irregular: its past simple is went but its past participle is gone, and the present perfect always uses the past participle. I have went is one of the most common learner errors.