Present Perfect
The Present Perfect connects the past to now. We use it for results now, time up to now, and life experiences.
Structure
- I/you/we/they + have + past participle (V3): I have finished.
- he/she/it + has + past participle (V3): She has finished.
- Regular verbs: verb + -ed (play → played, work → worked). Irregular verbs have special forms (see → seen, go → gone, write → written, eat → eaten). Learn them one by one.
- Other past participles: watched, been, done.
- Contractions: I've, you've, we've, they've; he's, she's, it's; haven't, hasn't.
How the Grammar Works
- Affirmative: subject + have/has + V3. Example: I've finished the report. She has opened the window.
- Negative: subject + have/has + not + V3. Example: I haven't finished yet. He hasn't called me.
- Yes/No question: Have/Has + subject + V3? Example: Have you seen this film? — Yes, I have. / No, I haven't.
- Wh-question: Wh-word + have/has + subject + V3? Example: Where have you put the keys? How long have you lived here?
Common Use Cases
- Life experience (no specific time): I have visited Italy. Have you ever tried sushi?
- Result now: a past action has a result now. I've lost my keys. (I don't have them now.)
- Unfinished time period (today, this week, this year): I've had two meetings today.
- Duration up to now, with for/since: We've lived here for 3 years. He has worked here since 2022.
- Recent news: The team has won the cup!
- Been vs gone: She has gone to Paris. (She is in Paris or on her way, and she is not back yet.) She has been to Paris. (She visited and came back.)
For vs Since (Duration)
- for + a length of time: for two hours, for three days, for a long time. Example: I've studied English for two years.
- since + a starting point: since Monday, since 2020, since I was 10. Example: She has worked here since 2020.
- Typical question: How long have you known him? — I've known him for five years. / I've known him since 2019.
Placing just, already, yet, never, ever, before
- just = a short time ago. It goes between have/has and the main verb: I've just finished.
- already = before now, sometimes earlier than expected. It usually goes between have/has and the main verb: She has already eaten. It can also go at the end: She has eaten already.
- yet = up to now, when we expect something. We use it in negatives and questions, and it usually goes at the end: I haven't finished yet. Have they arrived yet?
- never and ever go between have/has and the main verb: I have never smoked. Have you ever been to Spain?
- before usually goes at the end: Have you been here before? I've never played tennis before.
Frequent Mistakes and How to Avoid Them
- Present Perfect with a finished time word. Incorrect: I have seen her yesterday. Correct: I saw her yesterday. Words like yesterday, last year and in 2019 need the Past Simple.
- Present Simple for a state that continues to now. Incorrect: I live here since 2022. Correct: I have lived here since 2022.
- Using since with a length of time. Incorrect: since two years. Correct: for two years.
- Putting yet before the verb. Have you yet finished? is unusual. The normal everyday order is Have you finished yet?
- Double negative with never. Incorrect: I haven't never been there. Correct: I've never been there.
Comparison with Related Grammar
The Present Perfect connects the past to now. Use the Past Simple for events in a finished past time. The time can be stated or understood. If the sentence has a finished-time word (yesterday, last year, in 2019), use the Past Simple, not the Present Perfect. (See the separate rule: Past Simple vs Present Perfect.)
Example Sentences
- I've just finished the report.
- She has already eaten.
- Have you ever been to Berlin?
- We've lived here for three years.
- He has worked at the company since 2022.
When to Use This Rule
Use the Present Perfect for a past action or state connected to now: a result, an experience, or a period that isn't finished. Put just, already and never between have and the verb. Yet usually goes at the end. Do not use it with finished-time words like yesterday.