TL;DR 🦄
- -았/었어야 했는데 means I should have… but… or it should have been… but…
- Use it when something was necessary or ideal in the past, but it did not happen, so there is regret, disappointment, or “too bad” feeling now.
- Build it from the past 아/어 form + 야 했는데: 공부하다 → 공부했어야 했는데, 가다 → 갔어야 했는데, 먹다 → 먹었어야 했는데.
🎧 Iru Helper Note Use Korean Helper Widgets to compare 공부해야 해요, 공부했어야 했어요, and 공부했어야 했는데. Listen for the regret rhythm in 했어야 했는데.
🌈 The Big Picture
This grammar is for looking back at the past and thinking: “That was the thing I needed to do… but I didn’t.” 😬
-았/었어야 했는데 combines:
- -아/어야 하다 = have to / should / need to
- past 했 = had to / should have
- 는데 = but… / and unfortunately… / which is a shame…
Tiny timeline:
- 공부해야 해요. — I have to study. (present/future obligation)
- 공부했어야 했어요. — I should have studied. (past regret statement)
- 공부했어야 했는데 시험을 망쳤어요. — I should have studied, but I failed the exam. (regret + result)
The sentence often has a second part after 는데, but it can also trail off when the regret is obvious:
- 아, 미리 예약했어야 했는데… — Ah, I should have reserved in advance…
🎨 The Core Regret Family
1. Action regret: “I should have done…”
Use this when the action should have happened.
- 더 공부했어야 했는데 — I should have studied more, but…
- 일찍 왔어야 했는데 — I should have come early, but…
- 우산을 샀어야 했는데 — I should have bought an umbrella, but…
2. Preparation regret: “I should have prepared/checked/sent…”
This pattern is very useful for school and work.
- 자료를 확인했어야 했는데 — I should have checked the materials, but…
- 이메일을 보냈어야 했는데 — I should have sent the email, but…
- 회의를 준비했어야 했는데 — I should have prepared for the meeting, but…
3. State regret: “It should have been…”
You can also use it with descriptive verbs/adjectives.
- 날씨가 좋았어야 했는데 — The weather should have been good, but…
- 방이 따뜻했어야 했는데 — The room should have been warm, but…
- 설명이 쉬웠어야 했는데 — The explanation should have been easy, but…
4. Negative regret preview
For “I should not have done…,” use a different pattern:
- 먹었어야 했는데 — I should have eaten, but…
- 먹지 말았어야 했는데 — I should not have eaten, but…
This lesson focuses on the positive “should have done” pattern. The “should not have” pattern is its own regret tool.
🛠️ How It Works in Sentences
- 시험 전에 더 공부했어야 했는데 너무 늦었어요.
[si-heom jeo-ne deo gong-bu-hae-sseo-ya haet-neun-de neo-mu neu-jeo-sseo-yo]
I should have studied more before the exam, but it is too late. 📚
- 회의 자료를 미리 확인했어야 했는데 못 봤어요.
[hoe-ui ja-ryo-reul mi-ri hwa-gin-hae-sseo-ya haet-neun-de mot bwa-sseo-yo]
I should have checked the meeting materials in advance, but I did not see them. 📋
- 어제 일찍 잤어야 했는데 늦게 잤어요.
[eo-je il-jjik ja-sseo-ya haet-neun-de neut-kke ja-sseo-yo]
I should have slept early yesterday, but I slept late. 😴
- 날씨가 좋았어야 했는데 비가 왔어요.
[nal-ssi-ga jo-a-sseo-ya haet-neun-de bi-ga wa-sseo-yo]
The weather should have been good, but it rained. 🌧️
🧩 Formation Rules
A. Verb/adjective stem + past 았/었/했 + 어야 했는데
Start from the past form, then add the regret frame.
- 가다 → 갔어요 → 갔어야 했는데
- 먹다 → 먹었어요 → 먹었어야 했는데
- 하다 → 했어요 → 했어야 했는데
- 좋다 → 좋았어요 → 좋았어야 했는데
B. 하다 verbs
하다 verbs become 했어야 했는데.
- 공부하다 → 공부했어야 했는데
- 준비하다 → 준비했어야 했는데
- 확인하다 → 확인했어야 했는데
- 예약하다 → 예약했어야 했는데
C. Common contractions
Natural Korean usually contracts these:
- 보내다 → 보냈어야 했는데
- 사다 → 샀어야 했는데
- 자다 → 잤어야 했는데
- 오다 → 왔어야 했는데
D. Irregulars to watch
Use the normal past-form rules first.
- 듣다 → 들었어야 했는데 — should have listened
- 걷다 → 걸었어야 했는데 — should have walked
- 쓰다 → 썼어야 했는데 — should have written
- 돕다 → 도왔어야 했는데 — should have helped
- 고르다 → 골랐어야 했는데 — should have chosen
🔍 Meaning Contrast
-아/어야 해요
Present/future obligation.
- 지금 공부해야 해요. — I have to study now.
-아/어야 했어요
Past obligation, often “had to.”
- 어제 공부해야 했어요. — I had to study yesterday.
-았/었어야 했어요
Regret: should have done, but did not.
- 어제 공부했어야 했어요. — I should have studied yesterday.
-았/었어야 했는데
Regret + open contrast/result.
- 어제 공부했어야 했는데 놀았어요. — I should have studied yesterday, but I played.
📚 Cross-check note
This lesson connects with Obligation: Must and Have to: -아/어야 되다 / 하다, Expressing Regret: -았어야 했는데, and the related “should not have” regret pattern Regret: I shouldn't have: -지 말았어야 했는데.
🪞 Synonym & Usage Alert
- -았/었어야 했는데 — should have done/been, but…; emphasizes a missed needed action or ideal past state.
- -(으)ㄹ걸 그랬어요 — I should have…; often softer, more personal hindsight or “I wish I had…”
- -지 말았어야 했는데 — should not have done, but…; regret about an action you actually did.
- 아쉽다 — it is a shame / disappointing; emotion word, not the same grammar.
Compare:
- 미리 예약했어야 했는데 자리가 없어요. — I should have reserved in advance, but there are no seats.
- 미리 예약할걸 그랬어요. — I should have reserved in advance. / I wish I had reserved.
⚠️ Pitfalls to Dodge
- ❌ 공부해야 했는데 for “I should have studied, but…” → ✅ 공부했어야 했는데. The action itself needs the past form.
- ❌ 오었어야 했는데 → ✅ 왔어야 했는데.
- ❌ 쓰었어야 했는데 → ✅ 썼어야 했는데.
- ❌ Using this for current duty → ✅ 해야 해요 for “I have to do it now.”
- ❌ Using it for “should not have” → ✅ use -지 말았어야 했는데.
- ❌ Forgetting the result after 는데 when the listener needs context → ✅ add what happened: 늦었어요, 못 했어요, 문제가 생겼어요.
You now have the Korean regret pattern for missed necessities: 공부했어야 했는데, 갔어야 했는데, 확인했어야 했는데, and 좋았어야 했는데. Use it, learn from it, and let past-you rest. 😬✨
Try this exercise
Instructions: Fill each blank with the correct -았/었어야 했는데 form. Say the full sentence aloud before opening the answer.
1. 시험 전에 더 ____ 너무 늦었어요.
I should have studied more before the exam, but it is too late.
Answer
공부했어야 했는데 — 공부하다 → 공부했어야 했는데.
2. 회의 자료를 미리 ____ 못 봤어요.
I should have checked the meeting materials in advance, but I did not see them.
Answer
확인했어야 했는데 — 확인하다 → 확인했어야 했는데.
3. 이메일을 어제 ____ 오늘 보냈어요.
I should have sent the email yesterday, but I sent it today.
Answer
보냈어야 했는데 — 보내다 → 보냈어야 했는데.
4. 약속에 일찍 ____ 늦었어요.
I should have gone early, but I was late.
Answer
갔어야 했는데 — 가다 → 갔어야 했는데.
5. 우산을 ____ 안 샀어요.
I should have bought an umbrella, but I did not buy one.
Answer
샀어야 했는데 — 사다 → 샀어야 했는데.
6. 어제 일찍 ____ 늦게 잤어요.
I should have slept early yesterday, but I slept late.
Answer
잤어야 했는데 — 자다 → 잤어야 했는데.
7. 설명을 끝까지 ____ 중간에 나왔어요.
I should have listened until the end, but I left in the middle.
Answer
들었어야 했는데 — 듣다 → 들었어야 했는데.
8. 답장을 바로 ____ 잊어버렸어요.
I should have written the reply right away, but I forgot.
Answer
썼어야 했는데 — 쓰다 → 썼어야 했는데.
9. 날씨가 ____ 비가 왔어요.
The weather should have been good, but it rained.
Answer
좋았어야 했는데 — 좋다 → 좋았어야 했는데.
10. 방이 ____ 너무 추웠어요.
The room should have been warm, but it was too cold.
Answer
따뜻했어야 했는데 — 따뜻하다 → 따뜻했어야 했는데.
Vocabulary Box
- 시험 → exam
- 회의 자료 → meeting materials
- 이메일 → email
- 약속 → appointment / promise
- 우산 → umbrella
- 설명 → explanation
- 답장 → reply
- 날씨 → weather
- 방 → room
Tip 💡 First make the past form, then attach 어야 했는데.
Want more reps? The Practice Hub below turns regret grammar into muscle memory.
🎯 Practice Hub — Regret: Should have done: -았/었어야 했는데
Welcome to the regret repair shop. 😬 You’ll practice what past-you should have done, what should have been different, and how to explain the unfortunate result clearly.
🔊 Audio reminder: Use Korean Helper Widgets whenever you want to hear the completed sentence aloud.
📝 Instructions: Fill each blank, say the sentence aloud, then open the Answer toggle. Watch for 하다 → 했어야 했는데, contractions, irregulars, and the difference between obligation and regret.
Exercise 1 — Form Builder: Action Regrets 🔧
A. 공부하다 → ____
Answer
공부했어야 했는데
B. 준비하다 → ____
Answer
준비했어야 했는데
C. 확인하다 → ____
Answer
확인했어야 했는데
D. 보내다 → ____
Answer
보냈어야 했는데
E. 가다 → ____
Answer
갔어야 했는데
F. 오다 → ____
Answer
왔어야 했는데
G. 먹다 → ____
Answer
먹었어야 했는데
H. 자다 → ____
Answer
잤어야 했는데
I. 쓰다 → ____
Answer
썼어야 했는데
J. 듣다 → ____
Answer
들었어야 했는데
Vocabulary Box
- 공부하다 → to study
- 준비하다 → to prepare
- 확인하다 → to check
- 보내다 → to send
- 가다 → to go
- 오다 → to come
- 먹다 → to eat
- 자다 → to sleep
- 쓰다 → to write
- 듣다 → to listen
Tip 💡 If you know the past form, the regret form becomes easier.
Exercise 2 — Complete the Regret Sentence 😬
A. 시험 전에 더 ____ 시험을 망쳤어요.
Answer
공부했어야 했는데 — I should have studied more, but failed the exam.
B. 회의를 미리 ____ 너무 급했어요.
Answer
준비했어야 했는데 — I should have prepared the meeting in advance.
C. 자료를 먼저 ____ 그냥 보냈어요.
Answer
확인했어야 했는데 — I should have checked the materials first.
D. 이메일을 어제 ____ 오늘 보냈어요.
Answer
보냈어야 했는데 — I should have sent the email yesterday.
E. 약속에 일찍 ____ 늦었어요.
Answer
갔어야 했는데 — I should have gone early.
F. 회의에 제시간에 ____ 못 왔어요.
Answer
왔어야 했는데 — I should have come on time.
G. 아침을 ____ 배가 고파요.
Answer
먹었어야 했는데 — I should have eaten breakfast.
H. 어제 일찍 ____ 너무 피곤해요.
Answer
잤어야 했는데 — I should have slept early yesterday.
I. 답장을 바로 ____ 잊어버렸어요.
Answer
썼어야 했는데 — I should have written the reply right away.
J. 설명을 끝까지 ____ 중간에 나왔어요.
Answer
들었어야 했는데 — I should have listened until the end.
Vocabulary Box
- 시험을 망치다 → to mess up/fail an exam
- 급하다 → to be rushed/urgent
- 그냥 → just / as-is
- 제시간에 → on time
- 배가 고프다 → to be hungry
- 피곤하다 → to be tired
- 잊어버리다 → to forget
- 중간에 → in the middle
Tip 💡 The clause after 는데 usually explains the bad result.
Exercise 3 — State Regrets 🌦️
A. 날씨가 ____ 비가 왔어요.
Answer
좋았어야 했는데 — It should have been good.
B. 방이 ____ 너무 추웠어요.
Answer
따뜻했어야 했는데 — The room should have been warm.
C. 설명이 ____ 이해하기 어려웠어요.
Answer
쉬웠어야 했는데 — The explanation should have been easy.
D. 회의가 ____ 너무 길었어요.
Answer
짧았어야 했는데 — The meeting should have been short.
E. 답장이 ____ 너무 늦었어요.
Answer
빨랐어야 했는데 — The reply should have been fast.
F. 자료가 ____ 빠진 내용이 많았어요.
Answer
완전했어야 했는데 — The materials should have been complete.
G. 문제가 ____ 너무 복잡했어요.
Answer
간단했어야 했는데 — The problem should have been simple.
H. 시간이 ____ 너무 부족했어요.
Answer
충분했어야 했는데 — There should have been enough time.
I. 문서가 ____ 아직 준비되지 않았어요.
Answer
준비됐어야 했는데 — The document should have been ready.
J. 대답이 ____ 오해가 생겼어요.
Answer
명확했어야 했는데 — The answer should have been clear.
Vocabulary Box
- 좋다 → to be good
- 따뜻하다 → to be warm
- 쉽다 → to be easy
- 짧다 → to be short
- 빠르다 → to be fast
- 완전하다 → to be complete
- 간단하다 → to be simple
- 충분하다 → to be enough
- 준비되다 → to be ready
- 명확하다 → to be clear
Tip 💡 Descriptive verbs can also show regret about how something should have been.
Exercise 4 — Obligation, Regret, or Prohibition? 🚦
A. “I have to study now.”
① 공부해야 해요 / ② 공부했어야 했는데
Answer
① — present/future obligation.
B. “I should have studied yesterday.”
① 공부해야 해요 / ② 공부했어야 했어요
Answer
② — past regret.
C. “I should have studied, but I didn’t.”
① 공부했어야 했는데 안 했어요 / ② 공부해야 했는데 안 했어요
Answer
① — the missed action takes past form: 공부했어야 했는데.
D. “I should not have eaten it.”
① 먹었어야 했어요 / ② 먹지 말았어야 했어요
Answer
② — should not have uses -지 말았어야 했다.
E. “I had to send it yesterday.”
① 어제 보내야 했어요 / ② 어제 보냈어야 했어요
Answer
① — past obligation. ② means “I should have sent it.”
F. “I should have sent it yesterday, but I forgot.”
① 어제 보내야 했는데 잊어버렸어요 / ② 어제 보냈어야 했는데 잊어버렸어요
Answer
② — regret about the missed action.
G. “You must not enter.”
① 들어가면 안 돼요 / ② 들어갔어야 했는데
Answer
① — prohibition.
H. “I should have gone early.”
① 일찍 가야 해요 / ② 일찍 갔어야 했어요
Answer
② — past regret.
I. “It should have been easier.”
① 쉬웠어야 했어요 / ② 쉬워야 해요
Answer
① — regret about a past state.
J. “I don’t have to go.”
① 가지 않아도 돼요 / ② 갔어야 했는데
Answer
① — not necessary.
Meaning Map
- 해야 해요 → have to do
- 해야 했어요 → had to do
- 했어야 했어요 → should have done
- 했어야 했는데 → should have done, but…
- 하지 않아도 돼요 → do not have to
- 하면 안 돼요 → must not
Exercise 5 — Mixed Mastery + Pitfall Patrol 🛡️
A. ❌ 오었어야 했는데 → ✅ ____
Answer
왔어야 했는데
B. ❌ 쓰었어야 했는데 → ✅ ____
Answer
썼어야 했는데
C. ❌ 공부해야 했는데 시험을 망쳤어요. (intended: should have studied)
✅ ____
Answer
공부했어야 했는데 시험을 망쳤어요.
D. ❌ 우산을 사야 했는데 비를 맞았어요. (intended: should have bought)
✅ ____
Answer
우산을 샀어야 했는데 비를 맞았어요.
E. ❌ 날씨가 좋어야 했는데 → ✅ ____
Answer
날씨가 좋았어야 했는데
F. 예약하다 → “I should have reserved in advance, but there are no seats.”
Answer
미리 예약했어야 했는데 자리가 없어요.
G. 돕다 → “I should have helped, but I was busy.”
Answer
도왔어야 했는데 바빴어요.
H. 고르다 → “I should have chosen carefully, but I chose quickly.”
Answer
신중하게 골랐어야 했는데 빨리 골랐어요.
I. Translate: “I should have checked one more time, but I didn’t.”
Answer
한 번 더 확인했어야 했는데 안 했어요.
J. Translate: “The answer should have been clear, but it was confusing.”
Answer
대답이 명확했어야 했는데 헷갈렸어요.
Vocabulary Box
- 예약하다 → to reserve
- 자리 → seat/place
- 돕다 → to help
- 고르다 → to choose
- 신중하게 → carefully / prudently
- 한 번 더 → one more time
- 명확하다 → to be clear
- 헷갈리다 → to be confusing / get confused
Tip 💡 Final boss rule: missed past action = past form + 어야 했는데.
🎉 Practice complete. You can now express “I should have…” regrets clearly: 했어야 했는데, 갔어야 했는데, 먹었어야 했는데, 썼어야 했는데, and 좋았어야 했는데. Past-you learned something. Present-you gets the grammar. 😬✨