Should Have and Shouldn’t Have: Regret in English
English is wonderfully good at talking about the past — especially when we want to judge it. When we regret something, criticise a decision, apologise for a mistake, or reflect on what went wrong, we often turn to two small but powerful structures: should have and shouldn’t have.
These forms appear constantly in everyday conversation, films, books, and Cambridge B2–C1 writing and speaking tasks, especially in B2 First and C1 Advanced.
Let’s explore how they work, what they mean, and how to use them naturally and accurately.
What does should have mean?
Form ➡️ should + have + past participle
Meaning: Should have is used to talk about a past action that did not happen, but which we now think was the right or better choice. It often expresses regret, reflection, missed opportunity or mild criticism.
- I should have studied more for the exam.
- She should have told him the truth earlier.
- We should have left earlier to avoid the traffic.
- He should have listened to your advice.
In all these sentences, the action did not happen, and the speaker now believes it was a mistake.
For example, I should have studied more means: I did not study enough, and now I regret it.
What does shouldn’t have mean?
Form ➡️ should not + have + past participle
Short form: shouldn’t have
Meaning: Shouldn’t have is used to talk about a past action that did happen, but which we now believe was wrong, unnecessary, unwise or unfortunate. It often expresses regret, criticism or apology.
- I shouldn’t have said that.
- They shouldn’t have spent so much money.
- She shouldn’t have trusted him so easily.
- We shouldn’t have ignored the warning signs.
Here, the action did happen, and the speaker regrets it.
For example, I shouldn’t have said that means: I did say it, and now I think it was a mistake.
Key difference
| should have | ❌ didn’t happen | missed opportunity, regret about not doing something |
| shouldn’t have | ✅ did happen | regret or criticism about doing something |
If you understand this contrast, half the mistakes disappear.
Compare:
- I should have called her.
= I did not call her, and now I regret it. - I shouldn’t have called her.
= I did call her, and now I regret it.
The difference is small, but the meaning changes completely.
Common mistakes to avoid
❌ I should have went earlier.
✔️ I should have gone earlier.
❌ She shouldn’t have say that.
✔️ She shouldn’t have said that.
❌ I should of listened to you.
✔️ I should have listened to you.
✔️ I should’ve listened to you.
Remember: always use the past participle, not the past simple.
Also, do not write should of. In spoken English, should have often sounds like should’ve, but in correct written English we write should have.
Tone and context
Neutral and personal reflection
- I should have asked more questions.
- I shouldn’t have rushed the decision.
- We should have planned the trip more carefully.
Mild criticism
- He should have known better.
- They shouldn’t have left without telling anyone.
- You should have checked the instructions first.
Be careful with tone. Sentences with you should have or you shouldn’t have can sound critical, especially in conversation.
Polite regret in emails and writing
- I should have replied sooner — apologies for the delay.
- We should have informed you earlier.
- I shouldn’t have sent the message before checking the attachment.
- We apologise for any inconvenience this may have caused.
In formal writing, it is often better to soften the sentence slightly, especially if you are criticising someone else.
Instead of:
- You shouldn’t have sent the wrong document.
You could say:
- It might have been better to check the document before sending it.
Compare with should for present advice
Should is used for advice about the present or future.
- You should study more.
= advice for now or the future
Should have is used for regret or criticism about the past.
- You should have studied more.
= regret or criticism about the past
This time shift is small — but crucial.
More examples:
- You should apologise.
= You need to apologise now. - You should have apologised.
= You did not apologise, and that was a mistake. - We should leave earlier tomorrow.
= advice for the future. - We should have left earlier yesterday.
= regret about the past.
Final thoughts
Should have and shouldn’t have are extremely useful structures for talking about regret, criticism and missed opportunities in English.
Use should have when something did not happen, but it would have been better if it had.
Use shouldn’t have when something did happen, but it was a mistake.
Once you understand this difference, you can talk about past decisions, mistakes and regrets much more clearly and naturally.
Download should have/shouldn’t have worksheet with exercise in PDF here
Related posts:
Would have, Could have, Should have
Visit our bookshop for more
Discover more from My Lingua Academy
Subscribe to get the latest posts sent to your email.

0 Comments