📡 Morse Code Translator
A Morse code translator both ways using the complete ITU alphabet, with real-timing audio, adjustable speed and prosigns. Unknown characters are reported.
Morse code
... --- ... / .... . .-.. .--.
A dit lasts 80 ms at this speed. 5 wpm is beginner pace; 20 wpm is the traditional licensing standard.
Prosigns
Procedural signals run together with no gap between the letters, which makes them a single symbol rather than a word.
- SOS
- ...---...
- Distress — sent as one unbroken symbol, not three letters
- AR
- .-.-.
- End of message
- AS
- .-...
- Wait
- SK
- ...-.-
- End of contact
- BT
- -...-
- New paragraph / break
What Morse Code Translator Does
Morse code is two symbols and a set of silences, and the silences do most of the work. A dot and a dash carry the letters, but the gaps decide where one letter ends and the next begins — one unit between parts of a letter, three between letters, seven between words. Get the symbols right and the gaps wrong and the message is unreadable.
That is why timing is specified as ratios rather than durations. Everything is measured in "dit" units: a dash is three dits, and the whole message speeds up or slows down together. Speed is quoted in words per minute and calibrated against the word PARIS, which happens to be exactly 50 dit units including its trailing gap. At 15 words per minute a dit is 80 milliseconds; at 20 wpm it is 60.
The alphabet is finite and smaller than people expect. It covers the 26 letters, ten digits, a specific list of punctuation and a handful of accented characters — and nothing else. There is no Morse for #, %, * or an emoji, so a translator meeting one has to either say so or quietly drop it. This one says so.
And a few sequences are not letters at all. Prosigns like SOS and AR are sent as single unbroken symbols with no gaps inside them, which is what distinguishes SOS from the three separate letters S, O and S.
How to Use Morse Code Translator
- Choose a direction — text to Morse, or Morse to text
- Type or paste; the translation updates as you go
- For Morse input, separate letters with a space and words with a slash
- Press Play to hear it at correct timing, and set the speed in words per minute
Formula Used by Morse Code Translator
The timing units
dit = 1 · dah = 3 · gap inside a letter = 1 · between letters = 3 · between words = 7
- dit
- The short element, and the unit everything else is measured in
- dah
- The long element — exactly three dits
Worked example
The letter C, dah-dit-dah-dit
- 3 + 1 + 1 + 1 + 3 + 1 + 1 = 11 units of sound and gap
- Plus 3 units before the next letter
Result: The ratio is what matters, not the absolute speed
Words per minute, via PARIS
dit duration in ms = 1200 ÷ words per minute
- PARIS
- The standard reference word — exactly 50 dit units with its trailing gap
- Why 1200
- 60,000 ms per minute ÷ 50 units per word
Worked example
Three common speeds
- 5 wpm: dit = 240 ms
- 15 wpm: dit = 80 ms
- 20 wpm: dit = 60 ms
Result: At 15 wpm, 15 × 50 × 80 ms = 60,000 ms — exactly one minute
Why letter lengths vary
Common letters get short codes; rare ones get long codes
- E
- The most common English letter, and a single dit
- Q
- Rare, and four elements long
Worked example
Comparing letter costs
- E = . (1 unit)
- T = - (3 units)
- Q = --.- (13 units)
Result: A frequency-based encoding, arrived at in the 1840s — the same idea Huffman coding formalized a century later
The letters
Note how the lengths track English letter frequency: E and T are one element, while J, Q, X, Y and Z are four.
| Letter | Code | Letter | Code | Letter | Code |
|---|---|---|---|---|---|
| A | .- | J | .--- | S | ... |
| B | -... | K | -.- | T | - |
| C | -.-. | L | .-.. | U | ..- |
| D | -.. | M | -- | V | ...- |
| E | . | N | -. | W | .-- |
| F | ..-. | O | --- | X | -..- |
| G | --. | P | .--. | Y | -.-- |
| H | .... | Q | --.- | Z | --.. |
| I | .. | R | .-. |
Digits and punctuation
Every digit is exactly five elements. The punctuation list is closed — anything not here has no Morse representation at all.
| Character | Code | Character | Code |
|---|---|---|---|
| 0 | ----- | . | .-.-.- |
| 1 | .---- | , | --..-- |
| 2 | ..--- | ? | ..--.. |
| 3 | ...-- | ' | .----. |
| 4 | ....- | ! | -.-.-- |
| 5 | ..... | / | -..-. |
| 6 | -.... | ( | -.--. |
| 7 | --... | ) | -.--.- |
| 8 | ---.. | & | .-... |
| 9 | ----. | : | ---... |
| = | -...- | @ | .--.-. |
| - | -....- | " | .-..-. |
Speed and the dit length
Derived from the PARIS standard. Beginners typically start around 5 wpm; skilled operators work well above 30.
| Words per minute | Dit | Dash | Gap between words |
|---|---|---|---|
| 5 wpm | 240 ms | 720 ms | 1,680 ms |
| 10 wpm | 120 ms | 360 ms | 840 ms |
| 15 wpm | 80 ms | 240 ms | 560 ms |
| 20 wpm | 60 ms | 180 ms | 420 ms |
| 30 wpm | 40 ms | 120 ms | 280 ms |
| 40 wpm | 30 ms | 90 ms | 210 ms |
Prosigns — sent without internal gaps
These run their letters together into a single symbol. That is what makes SOS distinct from the letters S, O and S sent separately.
| Prosign | Code | Meaning |
|---|---|---|
| SOS | ...---... | Distress |
| AR | .-.-. | End of message |
| AS | .-... | Wait |
| SK | ...-.- | End of contact |
| BT | -...- | Break, or new paragraph |
| CQ | -.-. --.- | Calling any station (sent as two letters) |
How to Read Your Result
The gaps are the hard part
Beginners concentrate on the dots and dashes and then cannot read anything at speed, because the letters run together. Morse is decoded by rhythm: a one-unit gap means the letter continues, a three-unit gap means it ended, and a seven-unit gap means the word ended. Those three silences carry as much information as the symbols. This is why playback here uses the specified ratios rather than an arbitrary tick — practicing against wrong timing teaches the wrong pattern.
Why SOS is not an abbreviation
It was adopted in 1906 purely because the pattern is distinctive and hard to garble: three short, three long, three short, sent as one continuous nine-element symbol. "Save Our Souls" and "Save Our Ship" are backronyms invented later. Sending it as three separate letters with gaps between them is technically a different transmission, which is the practical reason prosigns are written with an overbar in reference material.
The code is frequency-optimized, in 1840
E is a single dit and T a single dah, because they are the two commonest letters in English. Q, which is rare, takes thirteen units. Samuel Morse and Alfred Vail reportedly counted the type in a printer's case to work out the frequencies. The result is a variable-length prefix-free encoding chosen to minimize average message length — the same principle Huffman coding formalized mathematically in 1952, arrived at a century earlier by inspection.
What Morse cannot represent
There is no case distinction, so a round trip through Morse returns uppercase and any capitalization you had is gone. The punctuation set is closed and small: no #, no *, no %, no underscore in the international standard, and certainly no emoji. Accented letters exist for a handful of European languages and some of them collide — À and Å share the same code, so a decoder has to pick one. A translator that silently drops what it cannot encode is hiding a real limitation, which is why unencodable characters are listed here.
Learning by sound, not by chart
The consensus among operators is that memorizing a visual chart actively slows you down, because it trains you to translate dots on paper rather than recognize rhythms by ear. The Koch and Farnsworth methods both address this — Koch by starting at full speed with two characters and adding more, Farnsworth by sending characters at speed but stretching the gaps between them. Both are why an adjustable-speed audio player is more useful for learning than the alphabet table above.
Still in the air
Commercial maritime Morse formally ended in 1999 when GMDSS replaced it, and the amateur radio code requirement has been dropped almost everywhere. It persists anyway for a practical reason: a Morse signal occupies a very narrow bandwidth, so it gets through noise, low power and poor conditions that defeat voice. Aviation navigation beacons still identify themselves in Morse, which is why pilots learn to read a handful of letters by ear.
Limitations & Accuracy Notes
- Morse has no lowercase, so decoded text is always uppercase and any original capitalization is lost.
- The punctuation set follows ITU-R M.1677-1 and is closed. Characters outside it — #, *, %, emoji and most symbols — have no Morse representation and are reported rather than encoded.
- A few accented letters share codes in the international standard. À and Å are both .--.-, so decoding cannot distinguish them and this tool returns the first match.
- Decoding assumes letters separated by single spaces and words by a slash or a wide gap. Morse transcribed with unusual spacing may need tidying first.
- Audio uses the Web Audio API and needs a user gesture to start, which browsers require. Very long messages at low speeds will take a correspondingly long time to play.
- Prosigns are listed for reference but are not detected automatically in text input — typing SOS produces three separate letters, which is the correct reading of three separate characters.
Frequently Asked Questions
What is SOS in Morse code?
How are the timing gaps defined?
What does words per minute mean in Morse?
Why does my text have missing characters?
Can Morse code represent lowercase letters?
Is Morse code still used?
References & Further Reading
- ITU-R Recommendation M.1677-1 — International Morse code — The international standard defining the alphabet, punctuation and the 1:3 element and 1:3:7 gap timing implemented here
- MDN — Web Audio API — The browser API used for playback, scheduled at exact dit boundaries so the rhythm is accurate rather than approximate
- FAA Aeronautical Information Manual — Chapter 1, Air Navigation — US aviation authority confirming Morse is still operational: "The only positive method of identifying a VOR is by its Morse Code identification"