[Korea] Hangul Decompose / Compose
Hangul Decompose / Compose — runs in your browser. Inputs are not stored.
Hangul jamo decompose / compose
Enter values, then press Calculate.
How to use
- Choose decompose (syllable → jamo) or compose (jamo → syllable).
- Paste text. Decompose example:
한글. Compose example:ㅎㅏㄴㄱㅡㄹ. - Press Run. Non-Hangul characters are left unchanged.
- Copy the result or Reset the fields.
- Use decompose for search or regex, then compose when you want syllables again. It also helps after a Hangul/English key mix-up once jamo are in order.
Key concepts
Hangul decompose/compose uses the Unicode Hangul Syllables block (AC00–D7A3) to split a syllable into choseong (initial), jungseong (medial), and jongseong (final), or to join jamo back into a syllable. Complex finals such as ㄳ, ㄵ, and ㄺ are included. This is for regex, search indexes, and jamo-level editing—not romanization.
In compose mode, spaces between jamo are ignored and letters are grouped from the left in initial–medial–final order. Romanization tools turn Hangul into Latin spelling; this tool stays in Korean jamo. Everything runs in browser JavaScript. From a syllable code point: initial index = ⌊(code−AC00)/588⌋; medial and final use the remainder. A syllable with no final yields only initial and medial; a cluster final stays one character so composing again restores the original syllable.
Example
Decompose 한글 → ㅎㅏㄴㄱㅡㄹ. Compose that string, even with spaces (ㅎ ㅏ ㄴ ㄱ ㅡ ㄹ), back to 한글. 한글123 keeps 123 after the jamo. 닭 decomposes to ㄷㅏㄺ (one cluster final) and composes back to 닭. 한글ABC keeps ABC. If you start compose input with a vowel, syllables may not form—start with an initial consonant.
Related: Korean romanizer · Hangul/English keyboard converter
Frequently asked questions
Can I compose Hangul if there are spaces between jamo?
Compose mode ignores spaces and combines in order. Spaces are fine for readability. If the order is not initial–medial–final, the result can break.
Are cluster finals like ㄳ, ㄵ, and ㄺ decomposed?
Yes. Jongseong clusters are supported. ㄵ and ㅄ also come out as a single final jamo. The tool does not romanize the result.
What happens to Latin letters and digits?
Non-Hangul characters pass through unchanged, including digits and emoji. Only Hangul is split or joined.
Does decompose run on a server?
No. Only browser JavaScript is used. Input disappears when you close the tab. Nothing is uploaded.
Is this the same as romanization?
No. This tool works in jamo units and is separate from passport romanization. Use the Korean romanizer for Latin spelling.
What if jamo order is wrong?
Without initial–medial–final order, syllables may not form or only part of the string will compose. A vowel-only sequence often stays unjoined. Check the order again.
Last reviewed: 2026-09-04