English grammar

CEFR B2

Test yourself (24 questions)

Past modals in English: should have, could have, must have

English talks about the past it did not get by bolting have plus a past participle onto a modal verb. I should have called. She must have left. It could have been worse. One shape, three quite different jobs: regret, deduction, and the road you did not take. The shape never varies, which makes this an unusually cheap topic to learn. What costs learners marks is choosing the wrong modal, and writing should of.

This page follows on from modal verbs and from modals of deduction, which does the same guessing work in the present.

The shape

modal + + participle. That is all of it.

Modal+ have+ past participleResult
I should have gone.
She must have left.
It could have been.
He might have known.

Three rules hold throughout, and they are the rules modals always follow:

  • have never changes. Not has, not had. She must have seen it, never she must has seen it.
  • The verb after have is the past participle, so you need your irregular forms. Gone, seen, taken, known, left, caught. The irregular verbs page has the list.
  • Negatives put not on the modal, not on have: shouldn't have, can't have, might not have.

In speech the whole thing collapses to should've, must've, could've. Say it that way by all means. In careful writing, write it out.

should have: regret and criticism

Should have done means the right thing was available and you did not do it. Turned on yourself it is regret; turned on someone else it is criticism, and often a fairly pointed one.

  • I should have booked earlier. (Regret. Now there are no seats.)
  • You should have told me. (Criticism. You did not.)
  • They shouldn't have sold the house. (It was a mistake.)

The negative works the same way in reverse. Shouldn't have done means you did it and you were wrong to. I shouldn't have eaten so much is the classic.

Ought to have means exactly the same thing and sounds a shade more formal: you ought to have said something. Nobody will misunderstand you, but should have is what people actually say.

One warning about tone. Because should have carries blame, it is not a neutral way to describe the past. You should have locked the door is not a report; it is a complaint. If you only want to say what happened, use the past simple.

must have and can't have: deduction about the past

This is the past version of the certainty scale. You are working out what happened from what you can see now.

MeaningFormExample
must haveThe ground is cold, so it must have rained.
might haveShe might have missed the bus.
could haveHe could have gone out the back way.
can't haveHe can't have seen us, he was facing the wall.

The negative trap is the same one as in the present, and it is worth repeating because learners keep falling into it. The opposite of must have is 't , not mustn't have. Mustn't is about prohibition (you mustn't smoke here), not about how sure you are. He mustn't have known is heard in some regional speech, but it is not standard English; write he can't have known.

Couldn't have is an acceptable alternative to can't have here: she couldn't have finished already. Both say you are sure it did not happen.

could have and might have: the option you did not take

Alongside deduction, could have does a second job that must have cannot: it describes something that was possible in the past and did not happen.

  • You could have asked me. (You did not.)
  • We could have taken the train. (We drove instead.)
  • She could have been a doctor. (She became something else.)

This is close to the third conditional, and often the if half is simply left out: (if you had wanted) you could have come with us. The conditional sentences page sets out the full pattern.

Might have shades into the same territory, usually with a note of reproach: you might have warned me means you should have and you did not. Context does all the work here; the form is identical to the deduction one.

Two set phrases are worth learning whole, because they come up constantly:

  • It could have been worse. (Said after something bad but survivable.)
  • You could have been killed. (Said to someone who has just done something stupid on a bicycle.)

needn't have done and didn't need to do

These two look interchangeable and are not, in a way that matters.

FormMeaningExample
needn't have done , I needn't have cooked. They had already eaten.
didn't need to do , I didn't need to cook, so I read a book instead.

Needn't have is about wasted effort. Didn't need to is about an obligation that was never there. If the action happened, you want needn't have.

Summary table

FormJobExample
should have, criticismYou should have called.
shouldn't have I shouldn't have said that.
must have She must have left.
can't have He can't have known.
might have, mild reproachThey might have missed it.
could have, We could have walked.
needn't have unnecessaryYou needn't have paid.

Common mistakes

Ranked by how often they appear in real learner writing.

  1. should of, could of, would of, must of. All wrong, all the time. The word is have. This one is not a grammar error so much as a spelling error caused by the contraction should've, but examiners mark it either way.
  2. mustn't have for the negative deduction. He mustn't have heard me should be he can't have heard me. Same trap as the present tense, one page later.
  3. Changing have. She must has gone, he should had told me. Have is a bare infinitive after a modal, so it never inflects.
  4. participle. I should have went, she must have took it. After have you need the third form: gone, taken. If your irregular verbs are shaky, this error will follow you everywhere.
  5. could have for a real past ability. I could have passed the exam does not mean you passed it; it means you did not. If you did, say I was able to pass or simply I passed.

Practice

Choose the best form. Answers are below.

  1. The ground is cold, so it ___ (must have / can't have) rained in the night.
  2. You ___ (should have / shouldn't have) told me you were not well.
  3. He ___ (mustn't have / can't have) seen the note, it was under the table.
  4. I ___ (needn't have / didn't need to) cooked, they had already eaten.
  5. She ___ (could have / must have) been a doctor, but she became a teacher.

: 1. must have (the cold ground is the evidence) 2. should have (criticism, you did not tell me) 3. can't have (never mustn't have for a deduction) 4. needn't have (you cooked, and it was wasted) 5. could have (the option she did not take).

Practise: test yourself

Pick the right one

0/8

Choose the past modal that fits the meaning.

  1. It was your duty to tell me. You told me.

  2. Her light is off. I am sure she gone to bed.

  3. He seen me, he was looking the other way.

  4. I am not sure why she is late. She missed the bus.

  5. The window is broken and there is a ball on the floor. I am certain somebody hit it.

  6. You said sorry to her. It was your fault.

  7. They walked here in ten minutes, it is much too far.

  8. I cannot find my keys. I am not sure, but I left them at work.

Fill in the blank

0/8

Write the past participle of the verb in the hint.

  1. You should have me the truth. (tell)

  2. She must have the early train. (catch)

  3. He can't have the note, it was under the table. (see)

  4. They might have home already. (go)

  5. I should have you with the boxes. (help)

  6. You could have hurt. (be)

  7. She must have about the party. (know)

  8. We should have an hour earlier. (leave)

Pick the right one

0/8

Choose should have (it was the right thing to do) or shouldn't have (it was the wrong thing to do).

  1. I ate the whole cake. I eaten so much.

  2. You told her, she was waiting all day.

  3. He shouted at the boy, it was not his fault.

  4. We left earlier, now we are late.

  5. You paid, I said it was my turn.

  6. She asked for help sooner.

  7. They taken that road, it was closed.

  8. I read the letter before I signed it.

Frequently asked questions

What is the difference between should have done and could have done?
Should have done says it was the right thing to do and you did not do it, so it carries regret or criticism: you should have told me. Could have done says it was possible and you did not do it, with no judgement attached: you could have taken the train instead. Should have blames; could have simply lists an option that was open at the time.
What does must have done mean?
It is a deduction about the past. You did not see it happen, but the evidence leaves no other answer: the ground is cold, so it must have rained in the night. It is the past version of must be, and like must be its negative is can't have, not mustn't have.
Is it should have or should of?
Always should have. Should of does not exist in written English. It appears because should have is pronounced should've, which sounds identical to should of in speech. The same goes for could of, would of and must of, all of them wrong. If you can write should've, the full form is should have.
What is the difference between needn't have done and didn't need to do?
Needn't have done means you did it and it turned out to be unnecessary: I needn't have cooked, they had already eaten. Didn't need to do means it was unnecessary, and usually you did not do it: I didn't need to cook, so I read a book instead. The first is about a wasted action, the second about an obligation that was never there.