Cyrillic to Translit Converter
Convert Cyrillic text to Latin transliteration and back. Supports Russian, Ukrainian, and Mongolian presets with custom space replacement.
About
Transliteration maps Cyrillic characters to their Latin phonetic equivalents according to standardized rulesets. Errors in transliteration cause passport rejections, broken URLs, failed database lookups, and non-compliant document filings. This tool implements three complete presets: Russian (GOST 7.79-2000 simplified), Ukrainian (Cabinet of Ministers of Ukraine Resolution No. 55, used for passport romanization), and Mongolian (MNS 5217:2012 standard). Each preset handles multi-character digraphs (Shch → Щ), positional rules, and apostrophe conventions. The reverse operation reconstructs Cyrillic from Latin input using greedy longest-match parsing to resolve ambiguity (e.g., distinguishing Sh from S+h). Note: reverse transliteration is inherently lossy for edge cases where multiple Cyrillic sources map to the same Latin output.
Formulas
The transliteration algorithm operates as a greedy left-to-right character substitution with multi-character digraph priority:
Where S is the input string of length n. At each position i, the algorithm attempts to match the longest possible substring against the transliteration map M. Match length k is tried from max(keyLen(M)) down to 1. If a match is found, the mapped value is appended and i advances by k. If no match exists, the original character passes through unchanged and i advances by 1.
Space replacement applies a secondary pass: replace(output, " ", spaceChar). When spaceChar is empty, spaces are preserved as-is.
Reverse transliteration constructs M−1 by inverting each (key, value) pair. Ambiguity is resolved by greedy longest-match: longer Latin sequences are tested before shorter ones, ensuring Shch maps to Щ before Sh can consume Ш.
Reference Data
| Cyrillic | Russian (ru) | Ukrainian (uk) | Mongolian (mn) |
|---|---|---|---|
| А а | A a | A a | A a |
| Б б | B b | B b | B b |
| В в | V v | V v | V v |
| Г г | G g | H h | G g |
| Ґ ґ | - | G g | - |
| Д д | D d | D d | D d |
| Е е | E e | E e | Ye ye |
| Ё ё | Yo yo | - | Yo yo |
| Є є | - | Ye ye | - |
| Ж ж | Zh zh | Zh zh | J j |
| З з | Z z | Z z | Z z |
| И и | I i | Y y | I i |
| І і | - | I i | - |
| Ї ї | - | Yi yi | - |
| Й й | J j | Y y | I i |
| К к | K k | K k | K k |
| Л л | L l | L l | L l |
| М м | M m | M m | M m |
| Н н | N n | N n | N n |
| О о | O o | O o | O o |
| Ө ө | - | - | U u |
| П п | P p | P p | P p |
| Р р | R r | R r | R r |
| С с | S s | S s | S s |
| Т т | T t | T t | T t |
| У у | U u | U u | U u |
| Ү ү | - | - | U u |
| Ф ф | F f | F f | F f |
| Х х | Kh kh | Kh kh | Kh kh |
| Ц ц | Ts ts | Ts ts | Ts ts |
| Ч ч | Ch ch | Ch ch | Ch ch |
| Ш ш | Sh sh | Sh sh | Sh sh |
| Щ щ | Shch shch | Shch shch | - |
| Ъ ъ | (omitted) | - | (omitted) |
| Ы ы | Y y | - | Y y |
| Ь ь | (omitted) | (omitted) | (omitted) |
| Э э | E e | - | E e |
| Ю ю | Yu yu | Yu yu | Yu yu |
| Я я | Ya ya | Ya ya | Ya ya |