Morse Code Translator (Text ↔ Morse)

Convert text to International Morse code and Morse back to text, using the standard ITU table for letters, digits and punctuation.

What this tool does

Morse code writes text as short and long tones — dots and dashes — so a message can cross a noisy channel, a flashing lamp or a single radio frequency without needing a shared alphabet beyond the code itself. This page converts in both directions: type ordinary text and get the dot-dash pattern, or paste a pattern and get the text back. Letters are separated by a space, words by a slash. It is useful for radio operators, teachers running a signalling exercise, puzzle setters, and anyone who needs to decode a message found in a game or a film.

The conversion is a lookup, not an approximation: every character either has an entry in the standard table or it does not. Characters that are not in the table — accented letters, emoji, Chinese characters — are reported rather than silently dropped or guessed at, so you can see exactly why a result looks shorter than your input.

Method

The tool uses the International Morse code table defined by the ITU in recommendation ITU-R M.1677-1. Encoding uppercases the input, looks up each character, joins the letters of a word with a single space and joins words with / . Decoding reverses the table, splitting on the slash to recover word boundaries; a pattern with no entry comes back as ? so an error is visible rather than hidden.

CharacterMorseNote
S...three dots
O---three dashes
E.the shortest code
T-the shortest dash code
1.----digits run from five dots to five dashes
?..--..punctuation is also in the standard table

Example

TextMorse
SOS... --- ...
HELLO.... . .-.. .-.. ---
HELLO WORLD.... . .-.. .-.. --- / .-- --- .-. .-.. -..
123.---- ..--- ...--

Spaces in Morse are not what you hear

A written Morse message uses one space between letters and a slash between words, but that is a convention for typing, not the thing being transmitted. On air, the spacing is timing, measured in units against the length of a dot:

GapLengthExample
Dot1 unitE is one unit of tone
Dash3 unitsT is three units of tone
Within a character1 unit of silencethe gap inside C (−·−·)
Between letters3 units of silencethe gap in SOS
Between words7 units of silencethe gap in HELLO WORLD

This is why the same message sounds different at different speeds even though the pattern is the same, and why a decoder that learns from audio must estimate the unit length before it can decide whether a gap is a letter break or a word break. A text tool has the easier job: the sender has already made that decision and written it as spaces.

What has no Morse entry

The ITU table covers the 26 Latin letters, the ten digits and a set of punctuation marks. It has no entries for accented letters, Cyrillic, Greek, CJK, emoji or most other symbols, and this tool does not invent them: an unmappable character is left out and counted, with the count shown under the result. That is the honest behaviour — a numeral in place of a letter (the convention some operators use for accented characters in informal traffic) would look like data rather than a substitution.

A practical consequence is that non-English text usually encodes partially. Tiếng Việt becomes TING VIT, because the accented letters are dropped rather than transliterated. If the message needs to survive intact, transliterate first — the diacritics tools here can strip accents — and expect the receiving operator to reconstruct the spelling from context.

Decoding is a table lookup, so errors show

Morse has no checksum and no redundancy: every pattern is legal input, and a pattern with no entry is the only kind of error the format can report. A transmitted error does not appear as an error at all — one wrong dot turns E into I, and the receiver reads a different word. This tool therefore reports only what it can know: the number of tokens that did not match any character. It counts those before decoding rather than looking for a placeholder character afterward, because a question mark is itself a valid code (..--..) and a message ending in one would otherwise be reported as broken.

Decoding preserves the word boundaries the input supplies, whether as a slash or as a run of two or more spaces, and joins the letters of each word without spaces. Lowercase input is uppercased before encoding, because Morse has no case — the code is the same for a and A.

Where Morse is still used

Amateur radio operators still use it, in contests and on the low-power bands where a narrow signal and a human ear outperform any modem. Aviation and maritime services have retired it, but the distress sequence ... --- ... remains universally recognised as a distress signal — and that recognition is the reason it appears in games, films and puzzles. Outside radio it is a teaching device: it is the smallest complete encoding most people ever learn, which makes it a useful first example of how a code maps symbols to meanings.

Frequently asked questions

What is Morse code?

A method of transmitting text as a series of short and long signals — dots and dashes — standardised internationally in ITU-R M.1677-1. Each letter, digit and punctuation mark has its own pattern of up to six elements.

How are letters and words separated?

Letters inside a word are separated by a single space, and words are separated by a slash surrounded by spaces, so SOS reads as ... --- ... and two words read as .... . .-.. .-.. --- / .-- --- .-. .-.. -.. .

Why is SOS ... --- ... and not a phrase?

It is not an abbreviation of three words: the pattern was chosen because it is short, unmistakable and hard to mistake for another signal. The popular reading "Save Our Souls" was attached to it afterwards.

How is Morse transmitted today?

Mainly for amateur radio, aviation beacons and signalling; the requirement for ships to carry a Morse-qualified radio officer ended with the Global Maritime Distress and Safety System in 1999. It survives because a single tone carries across noise and language barriers.

Which characters are supported here?

The twenty-six Latin letters, the ten digits, and the common punctuation marks defined in the ITU table. Accented letters and non-Latin scripts are not in the standard table, so this tool reports them as unmappable rather than guessing.

What does a slash inside the output mean?

It marks a word boundary in the encoded text. When decoding, treat each slash as a space between words.

Sources

  • ITU-R M.1677-1, International Morse code (International Telecommunication Union).
  • Unicode Standard — used only to count characters; the Morse table itself is not a Unicode property.

Everything runs in your browser — nothing you type is uploaded.