Morse code translator
Translate text to Morse and back, play it as a real sidetone at any WPM with Farnsworth spacing, flash it visually and download the WAV.
- Runs in your browser
- Nothing you enter is sent
- Free, no account
One space separates letters, a slash separates words.
Words per minute, measured on the standard word PARIS.
Set this higher than the overall speed for Farnsworth practice: full-speed characters, longer gaps.
600–800 Hz is the usual amateur-radio sidetone range.
Prosigns
.-.-.— AR — end of message...-.-— SK — end of contact-...-— BT — new paragraph........— HH — error, start again...---...— SOS — distress
How Morse timing works
Morse is not really dots and dashes — it is a rhythm built from one unit of time. Everything else is a multiple of it:
| Element | Duration | State |
|---|---|---|
| Dit (dot) | 1 unit | Tone on |
| Dah (dash) | 3 units | Tone on |
| Gap inside a letter | 1 unit | Silence |
| Gap between letters | 3 units | Silence |
| Gap between words | 7 units | Silence |
Speed is defined against the reference word PARIS, which is exactly 50 units
long. At 20 words per minute, one unit is 60 ÷ (50 × 20) = 60 ms. The
audio on this page is generated to those exact durations.
Farnsworth spacing, and why it matters for learning
The usual failure mode when learning Morse is counting individual dits. That works up to about 10 WPM and then stops working forever, because at speed you have to recognise a letter's whole rhythm as one shape.
Farnsworth timing prevents the habit from forming: characters are sent at a fast rate — 18 to 20 WPM — while the gaps between them are stretched so the overall pace stays slow enough to follow. Set the character speed above the overall speed with the two sliders. You hear each letter at full speed with plenty of thinking time in between, and the letters you learn never need re-learning at a higher rate.
Letters, digits and punctuation
The full reference grid is in the tool above. A few structural notes that make it easier to
memorise: E is a single dit and T a single dah, because they are the
most common letters in English — Morse was an early exercise in frequency coding. Digits are
all five elements long and follow a clean pattern, with 1 as .---- rotating
through to 0 as -----.
Prosigns
A prosign is several letters sent as one unbroken character, with no letter gap. That is what makes SOS a distress signal rather than three letters:
| Prosign | Code | Meaning |
|---|---|---|
| SOS | ...---... | Distress — chosen for being unmistakable, not as an abbreviation |
| AR | .-.-. | End of message |
| SK | ...-.- | End of contact |
| BT | -...- | Break, new section |
| HH | ........ | Error — disregard the last word |
The popular story that SOS stands for “save our souls” is a backronym. It was adopted in 1906 purely because the pattern is symmetrical, distinctive and hard to mistake for anything else under noise.
The audio is built here, not fetched
Playback constructs an audio buffer sample by sample with the Web Audio API, using a short 5 ms ramp at the start and end of every tone to avoid the click you get from switching a sine wave on abruptly. The WAV download writes the same samples into a 16-bit PCM file with a hand-built header. No audio is downloaded from anywhere, which is why the tool works offline.
Visual flash mode
Turn on the flash toggle to see the message as light rather than sound — the same timing, rendered as a panel that lights on each tone. That is how Morse is signalled by lamp at sea, and it also makes the tool usable with the sound off or with hearing loss.
Questions
What is Farnsworth timing?
Characters are sent at full speed while the gaps between them are stretched. It stops learners counting individual dits, which is the habit that caps most people around 10 WPM. Set the character speed above the overall speed to use it.
Is the audio generated on my device?
Yes. The waveform is built sample by sample with the Web Audio API and, for the download, written into a PCM WAV header in this tab. No audio file is fetched.
What do the spaces and slashes mean?
One space separates letters, a slash separates words. Inside a letter the symbols run together. Formally the ratios are dot 1, dash 3, gap-in-letter 1, gap-between-letters 3, gap-between-words 7.
Which characters have no Morse equivalent?
Most symbols and all emoji. International Morse covers A-Z, 0-9, a handful of punctuation and a few accented letters. Anything else is listed as skipped rather than silently dropped.
Why is SOS written as one continuous string?
Because it is a prosign — ...---... sent as a single unbroken character, not the three letters S, O and S. That is what distinguishes a distress call from someone spelling a word.