The present perfect and present perfect continuous tenses are often confused. In some cases, they are both possible. However, there are some differences as well.
The present perfect continuous tense
The present perfect continuous tense is mainly used to talk about shorter and temporary situations.
- He has been waiting outside for ten minutes.
- The baby has been sleeping since morning.
- It has been raining for hours.
The present perfect tense, on the other hand, is used to talk about longer or more permanent situations.
- The castle has stood on the hill for five hundred years. (More natural than ‘The castle has been standing on the hill for five hundred years.’)
- I have lived in France for thirty years.
Note that in some cases both tenses are used. It depends on how the speaker sees the situation.
So you can say:
- I have been living in this street for five years.
- OR I have lived in this street for five years.
Some verbs are almost never used in the continuous form. Examples are: be, know and have. In this case, we will use a perfect tense even when the meaning is one where we would use a continuous tense.
- He has been here since morning. (NOT He has been being here since morning.)
- I have known him for two months. (NOT I have been knowing him for two months.)
- I have had a headache since morning. (NOT I have been having a headache since morning.)
One more tip
The present perfect tense is used when the emphasis is on the results.
- I have written six letters since morning.
If the focus is on the activity, we tend to use the present perfect continuous tense.
- I have been writing letters since morning.