Present Perfect – Verb Meaning and Use

The Present Perfect tense is very common in English, and also one of the most difficult to learn.

This post will show you how to use the Present Perfect. To see how to form the Present Perfect, click here.

When we use the Present Perfect there is always a connection with now. The state or action in the past has a result now.

  • They’ve learned English. (They know English now)
  • He told me his name, but I’ve forgotten it. (I can’t remember it now)
  • It hasn’t stopped raining. (It is raining now)
  • I can’t find my keys. Have you seen them? (I don’t have them now)


We use the Present Perfect to talk about actions or states that happened at an indefinite (not exact) time in the past. We don’t know exactly when the action took place, or it is irrelevant to the conversation.

Do not use time expressions that express a definite (exact) time in the past. When you mention a definite time in the past, you must use the Past Simple.

✔ I’ve read that book, it’s fantastic. (Sometime in the past, but we don’t know when)

✘ I’ve read that book last month.

✔  He has travelled all around the world. (Sometime in the past, but we don’t know when)

✘ He has travelled all around the world in the 1980’s.

✔ We’ve already eaten. (Sometime in the past, but we don’t know when)

✘ We’ve already eaten at 2:00.

✔ Have you met Jennifer? (At any time in the past, but we don’t know when)

✘ Have you met Jennifer at the conference?


The Present Perfect can talk about an action that happens only once, or repeatedly.

  • Freddy has been to Seattle once, but Alex has been many times.
  • Jasmine has failed her driver’s test three times!
  • It has rained everyday for three weeks now.


We use the Present Perfect to ask about life experiences with “ever”.

  • Have you ever seen a shooting star?
  • Have you ever ridden a horse?
  • Have you ever been to Europe?

Do not use “ever” in a response to this question. Affirmative answers should be “Yes, I have.” or “Yes, I have ridden a horse”, and negative answers should be “No, I haven’t” or “No, I’ve never been to Europe”.

* Note, do not use contractions in short affirmative answers.

✘ Yes, I’ve.

✔ Yes, I have.

✔ No, I haven’t

✔ No, I have not.


Adverbs such as “already”, “yet”, “still”, “so far”, “ever” and “never” are frequently used with the Present Perfect.

  • We’ve already made dinner.
  • They haven’t bought their ticket yet.
  • She still hasn’t done her homework!
  • So far, we have finished half of our work.
  • Have you ever seen that movie?
  • He has never been married.


“For” and “since” are often used when expressing continuing time up to now.

“For” + a length of time tells us how long and action or state has continued up to the present time.

  • I’ve worked here for a long time.
  • She’s lived there for six years.
  • How long have you been travelling for?

“Since” + a point in time tells us when an action or state began.

  • I’ve worked here since 2006.
  • She’s lived there since she was a child.
  • You’ve been travelling since last month.


* Note the difference between “gone” and “been”

  • Juan is away on holiday, he‘s gone to New Zealand. (he is there now, or on his way there)
  • Maria is back from holiday now. She has been to Thailand. (she is now back from Thailand)

* Don’t confuse the contraction of “is” with the contraction of “has” in the Present perfect.

  • He‘s working a lot = He is working a lot.
  • He‘s worked a lot = He has worked a lot.

One thought on “Present Perfect – Verb Meaning and Use

  1. Really helpful thank you. As a native speaker I thought I knew my language, but I don’t know the grammatical terminology!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s