I just learned that I should not say:

I could buy it yesterday.

but rather use “was able” or “could have”.

At the same time, I have just seen a sentence: He could help me but he did not. That is correct?

3 Answers 3


It depends on context if the subjunctive mood is required or not

If you had already purchased a product yesterday, and today it's not available, then, "I could buy it yesterday," is a statement of fact, and grammatically correct. It could also be written as "I could buy it yesterday and I did."

On the other hand, if you had seen the product yesterday but not bought it, and today it's not available, then, "I could have bought it yesterday," using the subjunctive mood is needed. That is, "I could have bought it yesterday and didn't, and now I cannot."

  • Just so that this has been said... don't announce that you did things like that unless you know the person enjoys pretending that there's time travel that goes somewhere other than towards tomorrow. There are some people who really hate this.
    – Ed Grimm
    Feb 19, 2019 at 1:21
  • Thanks, and what anout “He could help me but he did not“?
    – John V
    Feb 19, 2019 at 5:40
  • @EdGrimm But doesn't also depend on the context? What about a sentence: I saw the book in the shop last week already, so he could definitely buy it yesterday.
    – John V
    Feb 19, 2019 at 6:23
  • That still sounds like you want could have rather than could, unless he actually did and you're being annoying, or you know he has a time machine.
    – Ed Grimm
    Feb 19, 2019 at 6:44
  • @EdGrimm Ah..and it is the same case here? (Sentence I found):She came from the USA the day before yesterday so Mike could meet her yesterday. But I have no idea whether they met. // or could have met her?
    – John V
    Feb 19, 2019 at 6:47

Maybe by some prescriptivist grammars, I could buy it yesterday doesn't work. It probably breaks some rules; lots of things do.

It is, however, absolutely normal in every dialect that I'm familiar with. It is generally equivalent to the more formally correct "I could have bought it yesterday".


I was able to buy it yesterday, but I didn't. (o) This is grammatically correct, but it sounds unnatural without a resonalbe context. I could buy it yesterday, but I didn't.(x) He could help me, but he didn't (x)

I could have bought it yesterday, but I didn't. (o) He could have helped me (yesteday), but he didn't.(o)

The key point is that when "could" is used to refer to the present situation in a main/independent clause, it means "be willing to" but not "was able to."

For example: I can/could help you if you need. (o)

However, a "could" subordinate/dependent clasue is used differently: I thought I could help, but I found I couldn't.

I am not sure if I am correct with the above understanding.

You must log in to answer this question.

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