Take the 2-minute tour ×

I have studied "present perfect" and "present perfect continuous" for a week. I know forms, verb and helping verb I should use when I write them.

For me, they have nearly same definition because I can use them interchangeably in Thai language. (My native language)

For example, the sentences

  • I have learned English language in the past few weeks.
  • I have been learning English language in the past few weeks.

have no difference in meaning to me. They both mean "I began learning the English language in the past and I am still learning it"

Can I use them interchangeably in English? Or is there any difference between them? For example, when should I use present perfect but not present perfect continuous?

share|improve this question
possible duplicate of english.stackexchange.com/questions/21727/… –  speedyGonzales May 6 '12 at 16:46

8 Answers 8

This is a difficult area of English for foreign learners, and I’m afraid you’re not going to understand it fully from a few answers here. Very briefly, you use the present perfect continuous form to talk about events in the recent past, particularly activities that have not been completed. The form is often found with the prepositions ‘for’ and ‘since’, as in ‘He’s been speaking for a very long time’ or ‘I’ve been working non-stop since this morning’.

Here are a few examples contrasting the present perfect with the present perfect continuous:

'I’ve done my homework' (it’s finished) / 'I’ve been doing my homework' (it’s not finished)

‘I’ve drunk my coffee' (it’s all gone) / ‘I’ve been drinking my coffee’ (there’s some left)

‘It’s rained every day since the weekend’ (repeated rain) / ‘It’s been raining all day’ (continuous rain)

Your own examples don’t really illustrate the use very well. You wouldn’t say ‘I have learned English language in the past few weeks’, because that suggests you’ve finished your studies and you don’t need to do any more. That’s unrealistic. No one learns English in a few weeks. I think these two examples might show the difference more clearly:

‘I have been studying English for two years’ (I’m still studying it)

'I have studied English, but I don’t speak it very well' (I studied it at some time in the past, but am not studying it any more)

share|improve this answer
What if I want to say that I have been learning English in the past few weeks but am not going to go on learning it and I haven't really learnt it? What tense shall I use? May be "I was learning English in the past few weeks?" As all say that PPC implies continuation then how do we get out of it if we don't need this continuation and we also don't need a completion? –  user1425 Jan 10 '13 at 9:42
@user1425. You would have to say something like ‘I’ve been trying to learn English over the past few weeks, but I’m not going to carry on with it, and I can’t really say that I’ve learnt any.’ –  Barrie England Jan 10 '13 at 9:49
oops another thought. Does "in" have something to do with "completion"? "I have learnt English in the past few weeks" - completion is implied. BUT: "I have learnt English for the past few weeks" - doesn't sound like completion is implied. May be it also has something to do with "in" and "for"? –  user1425 Jan 10 '13 at 11:14
It does, which means that to say ‘I have learnt English in the past few weeks’ is unlikely to be true. You can use for or, as I did, over, but you need to use it with the perfect progressive construction: ‘I have been learning English for the past few weeks.’ –  Barrie England Jan 10 '13 at 11:19
I don't like to say any grammatical structure is wrong, because there may be circumstances in which it would be appropriate, but, in most likely contexts, I have been learning . . . is what you need. –  Barrie England Jan 10 '13 at 11:45

"I have learned the English language in the past few weeks" implies that you have completed learning it. "I have been learning the English language" doesn't imply it.

This isn't true in all cases. "I have been eating blueberries for the past few weeks" means nearly the same thing as "I have eaten blueberries for the past few weeks."

On the other hand, "I have eaten the plums that were in the icebox" means that they are all gone, while "I have been eating the plums that were in the icebox" does not. The difference here is that "the plums that were in the icebox" is much more specific than "blueberries". As Barrie says in his answer, this is a fairly tricky area of English to learn.

share|improve this answer
You have bad examples in showing the difference because the verb eat carry itself the meaning of durability. However you can point out the difference using "the blueberries" like: "I have been eating the blueberries for the past few weeks" and "I have eaten the blueberries for the past few weeks." referring to quantity of blueberries, a basket of blueberries for example. –  speedyGonzales May 6 '12 at 16:39
@speedyGonzales: "I have eaten the blueberries for the past few weeks" needn't refer to a specific quantity, only to a specific set as distinct from any and all potential supplies of the fruit. PeterShor's examples are fine, and I +1 him for them –  Robusto May 6 '12 at 16:47
@speedyGonzales: I wouldn't take the first sentence to mean that at all. Your interpretation would be expressed (at least in my circle) "I have eaten the blueberries over the last few weeks". –  TimLymington May 6 '12 at 17:13
@speedyGonzales: you are correct in that if you replace "blueberries" by something very specific, like William Carlos Williams' "plums that were in the icebox", "have eaten" does indeed mean that they are all gone. That was my point in introducing the "blueberries" example: there's not always much difference between the two constructions, and the difference depends on context. –  Peter Shor May 6 '12 at 21:22
By the way, don't copy what Peter did and use the "It does imply" construct; always use "It implies" until you are very proficient in the language and know the situations where you can use it. It's extremely strong and I've seen non-native speakers abuse it after they've seen it used by somebody else. (In fact, I would probably edit the answer to "implies" to avoid any confusion) –  Andreas Bonini May 6 '12 at 22:02

"I have learned English language in the past few weeks" and "I have been learning English language in the past few weeks" have only a slight difference in meaning, and, even then, some might not pick up on that difference unless the two statements were put together, side-by-side.

"I have learned" implies a sense of finality (as though maybe the learning is now over), while "I have been learning" implies that the activity is not necessarily over yet, and may continue.

So, a choir member might say "We have practiced our song over the past two weeks" on the eve of a show, but opt for "We have been practicing our song for a whole week" when they still have a week of practice remaining.

This difference is very subtle, though, and there are many cases where using one in place of the other wouldn't confuse a native speaker or listener.

That said, "I have learned" can also refer to something was taught a long time ago: "I have learned the difference between right and wrong" could be said by a penitent criminal who has learned a very recent lesson, or by an aged man who learned the difference long ago. "I have been learning" wouldn't normally be used for such long-ago learning (although there may be some exceptions; this community has a way of finding them!)

share|improve this answer

Sometimes the two tenses are interchangeable, as in the OP's example. But sometimes they are not. Essentially, it depends on whether the action denoted by the verb is regarded by the speaker as completable or not. By this definition, living and learning, for example, are not completable, in which case both tenses are possible:

  • I've been living in London since 2001.
  • I've lived in London since 2001.

Conversely, if the verb is completable then the present perfect is used to indicate that the action has indeed been completed, whereas the continuous form implies only that the action was carried out, but with no indication if it was completed. For example:

  • I've read the book.

means I've finished reading it. Whereas:

  • I've been reading the book.

means only that I was in the process of reading it. It carries no implication that the reading is complete. Indeed, it tends to imply that the reading is not complete. There's a similar difference in meaning between:

  • I have been learning the irregular verbs.
  • I have learned the irregular verbs.

In this case the verb learn is conceived by the speaker as completable.

share|improve this answer

The following examples could help you understanding the difference in meaning:

"I have done ballet for years." : I did ballet in the past and up to and including the present, but I may getting bored with it.

"I have been doing ballet for years." : I did ballet in the past and have continued until the present time and probably will continue in the future. I haven't finished with it yet. Ballet is here for the duration.

As we can understand, the difference in meaning is not so slight.

It is simply to create a parallelism between the above examples and (your) "I have learned ..."/"I have been learning ... ."

Note that tenses put actions into the past, present and future, the 'may-yet-be' or the 'might-have-been'.

share|improve this answer

I can relate to English having verb tenses not present in your native language. I struggled for a while with the two different forms of "to be" in Spanish. What helped me were clear rules distinguishing them.

The short answer is I have learned English language in the past few weeks means that you have completely learned English and have nothing left to learn (or have at least learned enough that you do not need to learn any more), while I have been learning English language in the past few weeks means that you have been engaging in a process of learning that is not finished.

(By the way, the idiom, or customary way to phrase it, would be either "learned the English language" or just "learned English". In the U.S. I most often hear "learned English" or even more often "studied English".)

The important thing to remember is that the word "perfect", when used in grammar to describe English verb tenses, generally means "completed" rather than "free from flaws" (the most common usage of "perfect" outside of grammar). Thus the future perfect, present perfect, and past perfect all refer to actions that will have been/have been/were completed, while the continuous forms all refer to actions that will be/are/were ongoing. This should help you with the majority of cases.

Of course, nothing is so simple with English grammar. The perfect tense also refers to an habitual action that began in the past. (I don't know why.) This causes immense confusion.

Now you're probably wondering, "If something has been completed, how could it be in the present?" Also, you may ask, how can you speak of something that has not been started yet as being completed (in the future perfect)? The answer is that the perfect tense is used to show which of two events happened first, whether they both happend in the past or the future. You use the perfect tense for something that completed before something else referred to in the same sentence. The time you use (past, present, or future) corresponds to the time of that something else. If you don't know when it happened, then you use the present.

Present perfect (completed):

I have run 5 miles by now.

Present perfect (habitual):

I have run 5 miles every day for weeks now.

So what does this mean for "present perfect continuous". It means English grammar is cruel, because how could something possibly be both completed and ongoing. I think it comes from the idea that repetitive actions are completed and then repeated so they are both finished and ongoing at the same time. In any case, "continuous" dominates in this tense, and present perfect continuous means something is ongoing, it has not stopped, while "perfect" means it started some time in the past.

"Wait," you say, "if it's ongoing, doesn't that mean it must have already started?" Well, yes, actually. I said English is cruel. The present perfect continuous is used to indicate that something started further in the past than what you might consider "now". A friend greets me at a park:

Friend: What is that kid doing?

Me: She is running. (Present continuous)

Friend: She is pretty sweaty.

Me: Yes, she has been running since I got here. (Present perfect continuous)

Friend: She seems to know her way around the park.

Me: Yes, you can tell she has run around here before. (Present perfect)

For more information, I like the verb tense descriptions (and examples) at EnglishPage.com. However, do not get hung up on their tests. While their correct answers are correct, they reject plenty of acceptable incorrect answers in the name of drilling in whatever it is they are testing.

share|improve this answer

Well I really like @Barrie's answer most as always. He is sharp as always, put it simple and clear. Although I want to add some more information. You have pointed out the difference that Past Perfect Simple wants result and the Past Perfect Continues imply on continuous activity with unclear result. That is really important and all the people that have done it clear are rewarded +1 from me. What they have missed are the corner example and exceptions. So I want to make it clear- there are a list of verbs that do not have continues (Progressive) form.

***Mental and Emotional States***


agree,astonish,deny,disagree,impress,mean,please,promise,satisfy,surprise .

***Other States***


Sam has been having his car for two years. (Not Correct)

Sam has had his car for two years. (Correct)

Although some of them can be used in Continues tense with different meaning.

Non-Continuous Meanings

feel = 'have an opinion' - He feels he should get a second chance.

see = 'understand' - I see what you mean.

think = 'have an opinion' - I think we should leave immediately.

appear = 'look like' - That appears to be stale.

look = 'seem' - It looks impossible!

taste = 'have a taste' - That tastes yummy!

Continuous Meanings

feel = 'feel physically' - I'm feeling awful this afternoon.

see = 'visit' - She's seeing a doctor this morning.

think = 'use the brain' - He's thinking hard about the problem.

appear = 'be on stage / perform' - Jack Daniels is performing at the Paramount tonight.

look = 'stare at' - I'm looking at that strange man.

taste = 'use the mouth' - The cook is tasting the sauce!


Remember that the Present Perfect Continuous has the meaning of "lately" or "recently." If you use the Present Perfect Continuous in a question such as "Have you been feeling alright?", it can suggest that the person looks sick or unhealthy. A question such as "Have you been smoking?" can suggest that you smell the smoke on the person. Using this tense in a question suggests you can see, smell, hear or feel the results of the action. It is possible to insult someone by using this tense incorrectly.

I am not quite sure, but I think that already, by the time, ever, never can be used only with Past Perfect Simple, because they are asking for result.

share|improve this answer

I have full sympathy with the originator of the question (from Thailand). In my personal experience (I am not a native speaker, either) I had start expressing the complete vs. partial result, or on-going activity, by using verb forms as opposed to expressing the same with partial or total form of the object (English language does not have such a differentiation?)

share|improve this answer

protected by Jasper Loy Dec 4 '12 at 9:32


Would you like to answer one of these unanswered questions instead?
