Morse Code Translator
Translate text to International Morse code and back, then play it aloud at a speed you choose - all in your browser.
How the translator works
International Morse code represents each letter, digit and common punctuation mark as a short pattern of dots and dashes. Typing normal text gives you the Morse; pasting dots, dashes and slashes gives you the text back. In Auto-detect mode the tool looks at what you typed: if it is only dots, dashes, spaces and slashes it decodes to text, otherwise it encodes to Morse. Any character it does not know is shown as a hash so you can spot it, with the unknown characters listed underneath.
Spacing rules
Getting the gaps right is what makes Morse readable. Within a letter, the pause between a dot
and a dash is one unit. Between two letters the pause is three units, shown here as a single
space. Between two words the pause is seven units, shown as a slash with spaces ( / ). So
HELLO WORLD becomes .... . .-.. .-.. --- then / then
.-- --- .-. .-.. -...
Playing it as sound
Press Play to hear the code as tones. A dot is one time unit of sound, a dash is three units, and the WPM slider sets how long a unit lasts - one unit is 1200 divided by your words per minute, in milliseconds. At 20 WPM that is 60 milliseconds. Slower speeds are easier to follow while you are learning; experienced operators read 20 WPM and beyond.
The full Morse alphabet
| Char | Code | Char | Code | Char | Code | Char | Code |
|---|---|---|---|---|---|---|---|
| A | .- | B | -... | C | -.-. | D | -.. |
| E | . | F | ..-. | G | --. | H | .... |
| I | .. | J | .--- | K | -.- | L | .-.. |
| M | -- | N | -. | O | --- | P | .--. |
| Q | --.- | R | .-. | S | ... | T | - |
| U | ..- | V | ...- | W | .-- | X | -..- |
| Y | -.-- | Z | --.. | 0 | ----- | 1 | .---- |
| 2 | ..--- | 3 | ...-- | 4 | ....- | 5 | ..... |
| 6 | -.... | 7 | --... | 8 | ---.. | 9 | ----. |
Need to encode a message a different way? Try the binary converter for text to binary, or the Base64 encoder for web-safe encoding. Counting characters for a signal? The character counter is handy.