Morse Code Translator
Text Tools · Added
Type text to get International Morse code, or paste Morse to read it back. Spacing follows the standard — one space between letters, a slash between words — so the output can actually be decoded again, and the playback uses real timing at the speed you choose rather than an arbitrary beep.
Result
... --- ...
- Length
- 27 units
- At 15 wpm
- 2.2 s
- Characters encoded
- 3
A dot is one unit
One unit is 80 ms
| Character | Code | Units |
|---|---|---|
| S | ... | 5 |
| O | --- | 11 |
| S | ... | 5 |
Timing follows the standard: a dash is three dots long, the gap inside a character is one dot, between characters three, and between words seven. Speed is measured with the word PARIS, which is exactly 50 units, so one dot at 15 words per minute lasts 80 milliseconds.
The International Morse code table
Letters
- 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
- --..
Digits
- 0
- -----
- 1
- .----
- 2
- ..---
- 3
- ...--
- 4
- ....-
- 5
- .....
- 6
- -....
- 7
- --...
- 8
- ---..
- 9
- ----.
Punctuation
- .
- .-.-.-
- ,
- --..--
- ?
- ..--..
- '
- .----.
- !
- -.-.--
- /
- -..-.
- (
- -.--.
- )
- -.--.-
- &
- .-...
- :
- ---...
- ;
- -.-.-.
- =
- -...-
- +
- .-.-.
- -
- -....-
- _
- ..--.-
- "
- .-..-.
- $
- ...-..-
- @
- .--.-.
How to use the morse code translator
- 1Choose a direction: text to Morse, or Morse back to text.
- 2Type or paste your input. Case is ignored, because Morse has no upper and lower case.
- 3When decoding, separate letters with a single space and words with a slash. Typographic dots and dashes, pipes and the older three-space word gap are all understood.
- 4Pick a speed in words per minute and press Play to hear it. Five is a learning pace; twenty is contest speed.
- 5Read the per-character table to see each letter's code and how many time units it takes to send.
Examples
The one everybody knows
- Input
- SOS
- Result
- ... --- ...
Sent properly it is one continuous symbol with no gaps, which is why a true SOS is not three separate letters.
A word with punctuation
- Input
- HELLO, WORLD!
- Result
- .... . .-.. .-.. --- --..-- / .-- --- .-. .-.. -.. -.-.--
The slash is the word gap. Without it the output cannot be read back.
Decoding
- Input
- -.. --- --. / -.. .- -.--
- Result
- DOG DAY
A character Morse does not have
- Input
- CAFÉ
- Result
- -.-. .- ..-. — with É reported as unsupported rather than guessed at
Accented letters have national variants that are not part of the international standard.
About the morse code translator
Everything is timing
Morse has exactly two symbols and five durations, and the durations carry as much information as the symbols. A dot is one unit, a dash is three, the gap between the parts of a letter is one, between letters three, and between words seven. Get those wrong and the characters remain correct while the message becomes unreadable.
That is why this tool derives its playback from the same function that reports the message length in units, rather than approximating with timers. It is also why the length is shown in units rather than characters: units are what determine how long a message takes to send, and a message full of dashes takes far longer than its character count suggests.
The design behind the code
The letter frequencies are not arbitrary. Samuel Morse and Alfred Vail assigned the shortest codes to the commonest letters in English — E is a single dot, T a single dash — and the longest to the rarest. The story is that they counted the type in a printer's font cases to work out which letters came up most, and the result is an encoding that is roughly optimal for English text.
It is, in effect, a variable-length prefix-free code arrived at eighty years before information theory described why that is the right thing to do. The same principle underlies Huffman coding and every compression scheme built on it: common symbols get short representations, rare ones get long.
Learning to hear it
The one thing every experienced operator says is not to learn the written dots and dashes. Reading a table and translating in your head builds a habit that stalls at around five words per minute, because the translation step cannot be made faster.
The alternative is to learn each letter as a rhythm, at a character speed of fifteen to twenty words per minute with long gaps between characters — the Farnsworth approach. The characters sound the way they will at speed from the first day, and only the spacing shrinks as you improve. If you use the playback here for practice, set it faster than feels comfortable and listen for the shape of each letter rather than counting.
What it is not
Morse is not a cipher. It is a way of representing letters with tones, and anyone with the table — or this page — can read it straight back. It hides nothing, and using it to obscure something is the same mistake as writing a password in Base64.
Nor is it a language. It encodes whatever alphabet you feed it, which is why the same code is used for English, and why the operating abbreviations that grew up around it exist at all: shortening common phrases was how operators gained speed once the code itself could not be sent any faster.
Frequently asked questions
Why is there a slash between words?
What does words per minute actually mean?
Is the audio the real thing?
Which characters are supported?
Why did my decode come out as question marks?
Is Morse code still used?
Related tools
Text to Binary Converter
Converters
Convert text to binary, octal, decimal or hex and back, as UTF-8 bytes or code points.
Character Counter
Text Tools
Count characters with and without spaces, with live limits for tweets, SEO tags and SMS.
Case Converter
Text Tools
Convert text between upper, lower, title, sentence, camel, snake, kebab and more.