usage 3 min read

should have could have

Situational usage guide for choosing should have or could have when talking about the past.

A closer look

Use should have when you regret a past choice or expected it to happen: I should have called her yesterday.

Use could have for a past option that never happened: We could have taken the train instead.

You're explaining what you did, or didn't do

  • You're giving advice after the fact: use should have. You should have booked the hotel earlier. Your wording says that was the sensible choice, and it didn't happen.

  • You're blaming yourself: also should have, usually with a regretful tone. I should have double-checked the address. You're saying the right action existed and you missed it.

  • You expected something by now: should have works here too. The package should have arrived by now. Your wording says it was due, and it hasn't shown up.

  • You had a chance but didn't take it: use could have. We could have cycled there instead of driving. You're pointing to a real past option, not judging it as the right one.

  • Someone had an ability they didn't use: could have fits too. She could have passed the exam if she'd studied. The possibility was there; the outcome stayed open.

  • You turned down an invitation and want to explain it neutrally: could have. I could have joined them, but I stayed home. You're naming a live past option without calling it a mistake.

When both forms are grammatically possible

Both forms can fit the same sentence, so tone is what decides. You should have told me sounds critical, like you were owed the information.

You could have told me only names the missed chance, often softer or even curious. Same fact, different judgment on the past choice.

A quick test: if you'd call the past choice wrong or unmet, pick should have. If you're only naming an option or ability that existed, pick could have.

Try it: finish this sentence with should have or could have, depending on whether you're regretting it or just naming the option. I ___ studied abroad in college.

If the sentence just names a chance you never took, could have is the right choice, as in I could have studied abroad in college. That sentence doesn't judge your past decision; it simply points to an option that existed back then. You could say it neutrally, without regret or approval, and could have matches that tone.

wrong_result label removed per criteria. Compare this with I could have called my grandmother more before she passed. On its surface, could have works grammatically there, but the sentence carries regret and an unmet expectation, and that tone calls for should have: I should have called my grandmother more before she passed. When what you feel is regret about what you didn't do, reach for should have, and let the form match your tone.

All articles