B2 · Upper Intermediate TOEIC 605–780 IELTS 5.5–6.5 Modality (Modal Verbs)

Should Have / Could Have / Would Have

Should have, could have, and would have express regret, missed opportunities, and hypothetical past results. Essential for third conditionals and reflecting on past decisions.

1. Overview & Concept

  • What is it? Modal perfect constructions — should have, could have, and would have + past participle — are used to talk about hypothetical or unrealised past situations: things that didn't happen but could or should have.
  • Purpose: To express regret, criticism, missed opportunities, and hypothetical past results.

2. Structure & Formula

Construction Structure Example
Should have Subject + should have + past participle You should have called.
Shouldn't have Subject + shouldn't have + past participle She shouldn't have said that.
Could have Subject + could have + past participle We could have won.
Couldn't have Subject + couldn't have + past participle They couldn't have known.
Would have Subject + would have + past participle I would have helped.
Wouldn't have Subject + wouldn't have + past participle He wouldn't have agreed.

Spoken contractions: should've, could've, would've (note: never write should of / could of / would of)

3. Usage Rules

  • Rule 1 — Should have: regret or criticism about the past
  • The action did not happen, but it should have:
  • You should have studied harder. (= but you didn't, and the result is bad)
  • I should have taken that job. (= I regret not taking it)
  • Negative — the action happened but shouldn't have:
  • She shouldn't have told everyone. (= she did, and it was wrong)

  • Rule 2 — Could have: unrealised past possibility or ability

  • Something was possible but didn't happen:
  • We could have taken the earlier train. (= it was possible, but we didn't)
  • He could have become a doctor. (= he had the ability, but chose not to)
  • Negative — something was impossible in the past:
  • They couldn't have survived without help. (= it was impossible)

  • Rule 3 — Would have: hypothetical past result (often in conditionals)

  • Used in the result clause of third conditionals:
  • If I had known, I would have come. (= but I didn't know, so I didn't come)
  • She would have passed if she had revised. (= she didn't revise, so she failed)
  • Also used to express past willingness or refusal:
  • He would have helped, but he was busy.
  • She wouldn't have agreed to that.

4. Signal Words & Context

Construction Typical context
should have regret, criticism, advice about the past
could have missed opportunities, past ability or possibility
would have third conditional results, past willingness

5. Common Pitfalls

Mistake Correction Explanation
I should of gone. I should have gone. Never write of — it's have (contracted to 've).
You could have went. You could have gone. Always use the past participle after have.
He would have came. He would have come. Come is irregular: base = come, pp = come.
She shouldn't have to say that. She shouldn't have said that. No to — use the plain past participle.

6. Real-World Examples

  1. You should have told me — I would have helped!
  2. We could have caught the bus if we'd left five minutes earlier.
  3. I would have gone to the party, but I was ill.
  4. She shouldn't have shared that confidential email.
  5. He could have been a professional footballer — he was incredibly talented.
  6. They would have been disappointed if we hadn't shown up.
  7. I should have listened to my doctor.
  8. You couldn't have done anything differently — it wasn't your fault.
  9. We would have stayed longer if the weather had been better.
  10. She should have double-checked the figures before the presentation.

7. Summary Table

Form Meaning Example
should have + pp past obligation not fulfilled / regret I should have called.
shouldn't have + pp past action that was wrong You shouldn't have left.
could have + pp past possibility not taken We could have won.
couldn't have + pp past impossibility She couldn't have known.
would have + pp hypothetical past result I would have stayed.
wouldn't have + pp hypothetical past refusal/non-event He wouldn't have agreed.