Skip to content
Grammar
B1IntermediateTopic: Tenses

Present perfect continuous

An activity that started in the past and is still going on, or has just stopped: I've been waiting for an hour.

Practise

Not sure B1 is your level? Find out in 8–40 questions, no account needed.

The present perfect continuous is about an activity that began in the past and has gone on up to now. It may still be going on, or it may have just stopped and left a result we can see. The form is have or has + been + the verb with -ing.

Form: have been + -ing

Only have changes with the subject. Been and the -ing form stay the same.

Subject
Positive
Negative
I, you, we, they
I've been working
I haven't been working
he, she, it
she's been working
she hasn't been working
  • I've been looking for a new flat since January.
  • It has been raining all morning.
  • She hasn't been sleeping well this week.
  • Incorrect: I have been wait for twenty minutes.
  • Correct: I have been waiting for twenty minutes.
    After been, the verb takes -ing.
  • Incorrect: He has working here since May.
  • Correct: He has been working here since May.
    The form needs all three parts: has + been + -ing.

Questions and short answers

Put have or has before the subject. Short answers use only have or has.

Question
Yes
No
Have you been waiting long?
Yes, I have.
No, I haven't.
Has it been snowing?
Yes, it has.
No, it hasn't.
  • Have you been waiting long?
  • What have you been doing all day?
  • How long has Oleg been learning German?

How long up to now: for and since

Use it to say how long an activity has been in progress. It started in the past and is still going on. English can't use a present tense here.

  • I've been waiting for an hour, and the bus still isn't here.
  • We've been living in this flat since 2021.
  • How long have you been studying English?
  • Incorrect: I am waiting for an hour.
  • Correct: I've been waiting for an hour.
    For an hour measures the time up to now. That needs have been + -ing, not am + -ing.
  • Incorrect: How long are you learning English?
  • Correct: How long have you been learning English?

Compare the present continuous, which says what is happening but not how long.

  • I'm waiting for the bus.
  • I've been waiting for the bus for an hour.

Lately, recently, all day

We also use it for an activity that has filled the recent period, often with lately, recently, all day, all week or this month. The activity may be repeated, not one long action.

  • I've been working very hard lately.
  • Tanya has been going to the gym a lot recently.
  • We've been talking about moving for months.

An activity that has just stopped: the result is visible

Use it for a recent activity that explains the present situation. The activity may be over, but we can see, hear or feel what it has left.

  • There's flour all over the worktop. Have you been baking?
  • The kitchen windows are steamed up. Someone has been cooking.
  • Sorry about the mess. I've been sorting out old papers.
  • "You look tired." "I've been driving all night."

In these sentences the interest is in the activity itself, not in whether it is finished.

Verbs that are not used in the continuous

Verbs that describe a state, such as be, know, have (= own), like, want, believe and understand, don't normally take the continuous form. With them, use the present perfect simple, even with for and since.

  • I've known Oleg for ten years.
  • We've had this car since 2020.
  • Incorrect: I have been knowing her since school.
  • Correct: I have known her since school.
    Know describes a state, so it has no continuous form.
  • Incorrect: They have been being married for a year.
  • Correct: They have been married for a year.

For, since and ago

With a period of time, use for. With a starting point, use since.

  • Incorrect: I've been working here since three years.
  • Correct: I've been working here for three years.
  • Incorrect: She has been learning Spanish two years ago.
  • Correct: She started learning Spanish two years ago.
    Ago gives a finished moment in the past, so it takes the past simple.
  • Correct: She has been learning Spanish for two years.

Practise this rule

Where this rule sits

All B1 rulesTenses: all rules