I have read on this site the discussion about when to use Present Perfect versus when to use Simple Past.

The cases explained are all clear and seem unproblematic to me, but what about the following:

A: Peter, have you answered David's mail?
B: Yes, I have answered that mail already yesterday / Yes, I answered that mail already yesterday.

The problem here is: on one hand, there is a TIME CLUE indicating the past ("yesterday" => Simple Past?), but the fact that the mail has been answered is STILL RELEVANT at the time of speaking, which suggests that Present Perfect should be used.

Further: I HAVE (?) learned in school (many years ago, but that is still relevant!) that "already" is often an indicator of Present Perfect. On the other hand, I have learned that you don't use Present Perfect when the event is (has been?) finished in the past and a time (indicating that this (has?) happened in the past) is given, or the word "ago" is used.

So which is correct?

  • I edited your question to remove the request that those who answer identify whether they are a native, and their dialect. This is often irrelevant to a good answer and, where it is relevant, a good answer will include the differences between dialects. Please see this meta post for more detail
    – Andrew
    Oct 2, 2017 at 15:51

3 Answers 3


Actually this is less about grammar and more about intention. The present perfect, in general, indicates an ongoing condition. Phrasing the question in the present perfect implies that the task may not yet be complete.

On the other hand, the simple past indicates a complete condition. If I want to emphasize that some task is complete, I use the simple past:

A: Dave, have you finished the report I need for the big meeting?
B: Yes John, I did finish it -- it's been on your desk for the past three hours.

It's fine to use the present perfect to refer to a complete task, if you want to mirror the verb tense of the question (a common practice in English). This doesn't have the same emphasis as the simple past, but that usually makes little difference:

B: Yes, I have finished it. Let me print you a copy.

or, if it's not yet complete.

B: No, I haven't finished it yet. Give me another half hour and I'll get it to you.

Side note: if you use the present perfect, you don't need "already". You can use "already" with the simple past, again to emphasize that it's done:

Yes, I already finished it. Please stop asking me.

As for dialect: I am a native American speaker, but if the British (or Australians) say this differently, I'm sure they'll let me know :)


The choice of present perfect or past simple depends on whether whether you are talking about the state at the present or on an occurence in the past.

Saying "Yes, I have answered that mail already" is a statement about the present. It is equivalent to as of now, the mail has been answered.

If you add "yesterday" to this phrase it sounds odd; you are supposed to talk about the present, not about the past.

The common thinking about present perfect as a "kind of past tense" is due to the fact that it describes a state of completed action. Of course, the completed action took part in the past; but using present perfect emphasizes the completeness.

In contrast, using past simple is sort of telling the other person about a past event. You are not emphasizing the completed action, you are not talking about the present. You can follow it with another event that followed: "I answered this mail yesterday, and I also called David and made sure he was satisfied".

I am not a native English speaker but I speak, read, write and edit English at a professional level. I communicate with speakers of different English dialects, as well as non-native speakers, and in my experience usage of perfect does not depend on dialects as much as it depends on the general skill in the language. You can find American English speakers as well as British, Australians and Indians that use perfect in the same way (perfectly) when they speak or write at a high level. When it comes to non-native speakers it is less common (or sometimes used too much, with some German speakers). There may be difference between dialects in colloquial usage that I'm not aware of.

The canonical post about the perfect in this web site is a great resource, if you haven't read it yet.

  • laugh.....what do you say about Andrew's answer's this part: "Side note: if you use the present perfect, you don't need "already". You can use "already" with the simple past, again to emphasize that it's done: Yes, I already finished it. Please stop asking me"? Is it correct? Apr 28, 2019 at 13:38
  • 1
    I don't see the reason behind this statement. Search for "I have already" and you'll find many examples. For instance: ef.com/ca/english-resources/english-grammar/… . Also see this answer. Apr 30, 2019 at 2:43

The time-phrase in a present perfect construction must not exclude the present. yesterday excludes the present and is thus incompatible with the present perfect. Yesterday + simple past.

An explicit time phrase trumps relevancy. Relevancy-to-present is just a phrase used when trying to explain to learners the present perfect's use in the absence of a time phrase.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .