Vowel Harmony: Choosing -아 vs -어

A huge share of Korean endings come in two shapes, spelled -아/어: the polite present -아/어요, the past marker -았/었-, the connective -아/어서 ("and so"), the resultant -아/어 있다, and more. Every time you use one, you make a choice — 아 or 어? — and this page teaches the one rule that answers it. The rule is short, mechanical, and has essentially a single exception. Learn it here and you never have to think about it again on any of those endings.

The rule: look at the stem's last vowel

Take the stem and find its last vowel:

  • If that vowel is ㅏ or ㅗ — the "bright" vowels (양성모음) — use .
  • For anything else (ㅓ, ㅜ, ㅡ, ㅣ, ㅔ, ㅐ, ㅢ …), use .

That's the whole rule. It is pure sound-matching, not meaning — the ending harmonizes its vowel-color to the stem. Watch it decide:

StemLast vowelBright or dark?EndingPresent
살-bright살아요
좋-bright좋아요
먹-dark먹어요
읽-dark읽어요
마시-dark마셔요

Bright stems (ㅏ, ㅗ) take 아

기분이 정말 좋아요.

gibuni jeongmal joayo

I feel really good. (좋-: last vowel ㅗ → 아)

물고기가 물에서 살아요.

mulgogiga mureseo sarayo

Fish live in water. (살-: last vowel ㅏ → 아)

여기 좀 앉아요.

yeogi jom anjayo

Have a seat here. (앉-: last vowel ㅏ → 아, and the ㅈ links onto 아)

Everything else takes 어

The "dark" bucket is really just a default: if the last vowel isn't ㅏ or ㅗ, you reach for 어. This covers the large majority of stems.

저는 아침을 꼭 먹어요.

jeoneun achimeul kkok meogeoyo

I always eat breakfast. (먹-: last vowel ㅓ → 어)

저는 매일 밤 책을 읽어요.

jeoneun maeil bam chaegeul ilgeoyo

I read a book every night. (읽-: last vowel ㅣ → 어)

커피를 자주 마셔요.

keopireul jaju masyeoyo

I drink coffee often. (마시- + 어 → 마셔, the ㅣ glides into 어)

💡
Reframe it as colour-matching, not grammar: 아 and 어 are two skins of one ending, and the stem's last vowel picks the skin. There is no English analog and no meaning involved — a ㅏ/ㅗ stem "brightens" the ending to 아, everything else leaves it as the plain 어. Don't look for logic beyond the sound.

It's the last vowel that counts

The rule keys off the stem's final vowel, not its first — which matters the moment a stem has more than one syllable. In 기다리- ("wait"), the vowels are ㅣ, ㅏ, ㅣ; you ignore the earlier ones and read only the last, ㅣ → 어:

여기서 잠깐 기다려요.

yeogiseo jamkkan gidaryeoyo

Wait here for a moment. (기다리-: final vowel ㅣ → 어 → 기다려요)

So a stem like 만나- ("meet") harmonizes on its last ㅏ → 만나요, while 가르치- ("teach") harmonizes on its last ㅣ → 가르쳐요. Scan to the end of the stem and read that one vowel.

The one exception you memorize: 하다 → 해

There is exactly one systematic exception, and it happens to be the most productive verb in the language. 하다 does not take -아/어 at all — it takes an archaic allomorph -여, and 하 + 여 contracts to (해요, 했어요, 해서). Because every 하다 verb inherits this, you memorize 해 once and it covers thousands of words. Full mechanics on 하 + 여 → 해.

When 아/어 meets a vowel-final stem: contraction

Choosing the vowel is step one. When the stem itself ends in a vowel, that vowel and the chosen 아/어 then fuse. The clearest case is 오다 ("come"): the last vowel ㅗ is bright, so harmony picks 아 — and then 오 + 아 contracts to 와:

친구가 내일 우리 집에 와요.

chinguga naeil uri jibe wayo

A friend is coming to our place tomorrow. (오-: ㅗ → 아, then 오 + 아 → 와)

The fusion patterns (오+아 → 와, 주+어 → 줘, 마시+어 → 마셔, and the rest) are their own topic — see vowel-stem contractions. Just remember the order: harmony first, contraction second.

Why this pays off: it's the same rule everywhere

The reason vowel harmony is worth nailing down now is that the identical choice drives several other endings, so one rule earns its keep many times:

EndingBright stem (살-)Dark stem (먹-)
Present -아/어요살아요먹어요
Past -았/었-살았어요먹었어요
"and so" -아/어서살아서먹어서

예전에 이 동네에서 살았어요.

yejeone i dongne-eseo sarasseoyo

I used to live in this neighborhood. (bright 살- takes 았, not ×었)

Once you've decided 살- is a bright stem, every -아/어 ending on it uses 아: 살아요, 살았어요, 살아서. You never re-decide per ending.

Honest caveat: ㅡ-final stems

One class deserves a warning so you don't misapply the rule. Stems whose last vowel is — 크다, 예쁘다, 바쁘다, 쓰다 — don't simply take 어. The ㅡ drops before -아/어, and harmony is then decided by the preceding syllable's vowel (or defaults to 어 if there is none): 바쁘- → drop ㅡ → the earlier ㅏ is bright → 바빠요; 예쁘- → the earlier ㅖ isn't bright → 예뻐요; 크- → nothing precedes → 커요. This is the 으 irregular, a separate mechanism layered on top of harmony — don't try to read the bare ㅡ as "dark." It gets its own page: 으-drop stems.

Reframing for English speakers

English has vowel alternations too (sing/sang, foot/feet), but they carry meaning — tense, number. Korean vowel harmony carries none: 아 vs 어 is the same ending either way, chosen purely by the sound of the stem, the way the a/an article in English is chosen by the next sound rather than by meaning. So don't hunt for a semantic reason 좋다 takes 아 and 먹다 takes 어 — there isn't one. Read the last stem vowel, match the colour, done. The habit becomes automatic within weeks, and from then on it's invisible.

Common Mistakes

1. Defaulting everything to -어요. A bright stem must take 아, not 어.

❌ 날씨가 좋어요.

Wrong — 좋- has ㅗ (bright), so it takes 아 → 좋아요.

✅ 날씨가 좋아요.

nalssiga joayo

The weather is nice.

2. Reading the wrong syllable's vowel. Harmony keys off the last vowel, not the first.

❌ 여기서 기다라요.

Wrong — 기다리- ends in ㅣ (dark), so it's 기다려요, not ×기다라요.

✅ 여기서 기다려요.

yeogiseo gidaryeoyo

Wait here.

3. Applying plain harmony to 하다. 하다 refuses -아/어; it takes 여 → 해.

❌ 지금 공부하아요.

Wrong — 하다 is the exception: 하 + 여 → 해 → 공부해요.

✅ 지금 공부해요.

jigeum gongbuhaeyo

I'm studying right now.

4. Treating a bare ㅡ stem as dark. The ㅡ drops; the previous vowel decides.

❌ 저는 요즘 바쁘어요.

Wrong — the ㅡ of 바쁘- drops; the earlier ㅏ is bright → 바빠요.

✅ 저는 요즘 바빠요.

jeoneun yojeum bappayo

I'm busy these days.

Key Takeaways

  • One rule sets every -아/어 ending: stem's last vowel is ㅏ or ㅗ → 아; anything else → .
  • It's the last vowel of the stem that counts (기다리- → 기다려요).
  • It's phonological colour-matching, not meaning — no English semantic analog.
  • The single systematic exception is 하다 → 해 (하 + 여), inherited by all 하다 verbs.
  • Harmony first, then contraction for vowel-final stems (오- → ㅗ picks 아 → 오 + 아 → 와요).
  • ㅡ-final stems are the 으 irregular: the ㅡ drops and the preceding vowel decides (바빠요, 예뻐요, 커요) — a separate page.

Now practice Korean

Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.

Start learning Korean

Related Topics

  • Vowel-Stem Contractions: 가 + 아 → 가, 오 + 아 → 와, 보 + 아 → 봐TOPIK 1The obligatory sound-fusions that fire when a vowel-final stem meets -아/어요 — identical vowels merge, ㅗ+아 becomes ㅘ, ㅜ+어 becomes ㅝ — so the 'long' forms 가아요, 오아요, 주어요 are never written or said.
  • 하다 → 해: The 여-ContractionTOPIK 1The one lexical exception to vowel harmony: 하다 takes neither -아 nor -어 but the archaic allomorph -여, and 하 + 여 always contracts to 해 — a single fixed output that conjugates thousands of 하다-compounds (공부해요, 사랑해, 시작해서).
  • The Polite Present -아/어요 (해요체)TOPIK 1-아/어요, the informal-polite present that is the everyday workhorse of spoken Korean: stem + 아/어 by harmony + 요, covering a wide present ('go / am going / do go') and, with rising intonation, questions too — polite but warm, never stiff.
  • The Past Tense -았/었어요TOPIK 1The past marker -았/었- slots in before the ending, chosen by the same ㅏ/ㅗ vowel harmony as the present. The shortcut that makes it nearly free: take your 해요-form, drop 요, and add ㅆ어요 — 가요→갔어요, 마셔요→마셨어요, 해요→했어요.
  • The 으 Drop: 쓰다 → 써요, 크다 → 커요TOPIK 1Any stem whose last vowel is ㅡ loses that ㅡ before an -아/어 ending. For a one-syllable ㅡ stem there is no preceding vowel, so it always defaults to 어: 쓰다 → 써요, 크다 → 커요, 끄다 → 꺼요. The most predictable of all the 'irregular' classes.