Morse Code Translator — Free, with Sound & Flash
Type text to get morse code, or paste dots and dashes to decode them — direction is auto-detected. Play any morse string as authentic 600 Hz tones at your chosen speed (PARIS-standard timing), or flash the screen like a signal lamp. Everything runs locally in your browser.
Private by design. Translation and audio playback run entirely in your browser — nothing you type is sent to a server.
Frequently Asked Questions
- Is anything I type sent to a server?
- No. Translation is a lookup table and playback uses your browser’s WebAudio engine — everything stays on your device.
- What is Farnsworth timing and when should I use it?
- Farnsworth sends each character at full speed but stretches the gaps between characters, so the overall rate stays slow. It exists because practising at a slow uniform speed teaches you to count individual dits — a habit that has to be unlearned to get past roughly 10 WPM. Learning at 15–20 WPM character speed with a 5–10 WPM overall rate means you hear each letter as one sound from the start. The gap padding follows the ARRL method: the extra delay is split 3/19 into each letter gap and 7/19 into each word gap.
- What is the difference between the CW tone and the telegraph sounder?
- The CW radio tone is the continuous note a shortwave receiver produces when an operator keys a transmitter — the message is in how long the tone lasts. A telegraph sounder is the mechanical landline instrument, and it makes no tone at all: the armature clacks down when the key closes and again when it opens, so the message lives in the gap between those two clicks. Landline operators read the rhythm by ear.
- Can I download the morse as an audio file?
- Yes — Download WAV renders the same timeline offline and saves a 16-bit WAV. It runs the identical scheduling code as playback, so the file always matches what you just heard, and both the rendering and the WAV encoding happen in your browser with nothing uploaded.
- What characters can be translated?
- The full ITU standard: A–Z, digits 0–9, and common punctuation (. , ? ' ! / ( ) & : ; = + - _ " $ @). Anything else is marked as untranslatable rather than silently dropped.
- How is the audio timing calculated?
- By the PARIS standard: one dot lasts 1.2 ÷ WPM seconds. A dash is 3 dots; gaps are 1 dot within a letter, 3 dots between letters, and 7 dots between words. At 15 WPM a dot is 80 ms.
- How do I write spaces between words in morse?
- Use a forward slash: .... .. / - .... . .-. . decodes to "HI THERE". Three or more consecutive spaces also work as a word break.
- Why 600 Hz?
- It sits in the 400–800 Hz range most amateur-radio operators use for CW sidetone — high enough to be crisp, low enough not to fatigue your ears.
- Can I use this to learn morse code?
- Yes — start around 5–10 WPM, translate short words, and play them while reading along. The flash option adds a visual channel, which many learners find helps memorization.
How to translate and play morse code
- Enter text or morse. Type plain text (HELLO WORLD) or paste morse (.... . .-.. .-.. ---). Auto-detect picks the direction; the tabs let you force it.
- Read the translation. The output updates live. Letters are separated by spaces and words by / in morse output. Characters without a morse equivalent are marked so you can spot them.
- Set the speed. Drag the WPM slider (5–30 words per minute). 5–10 WPM suits beginners learning to copy by ear; 20+ approaches real operator speeds.
- Play it. Click Play morse to hear it as 600 Hz tones — or enable the screen-flash option to see it as light, like a ship’s signal lamp.
Use Cases
- Decode a morse message from a puzzle, escape room, or geocache
- Learn morse code by hearing letters at slow WPM with correct rhythm
- Encode a name or message for a bracelet, tattoo, or engraving
- Practice copying CW by ear before an amateur-radio exam
- Demonstrate how signal lamps work using the screen-flash mode
Morse timing, explained: why WPM is measured with "PARIS"
Morse speed is quoted in words per minute, but words vary in length — so the standard reference word is PARIS, which is exactly 50 units long including its trailing word gap. Sending PARIS 15 times per minute = 15 WPM. From that one number, every element duration follows.
| Element | Length in units | At 15 WPM (dot = 80 ms) | Rule of thumb |
|---|---|---|---|
| Dot (dit) | 1 | 80 ms | The base unit: 1.2 ÷ WPM seconds |
| Dash (dah) | 3 | 240 ms | Always exactly three dots |
| Gap inside a letter | 1 | 80 ms | Between the dits and dahs of one character |
| Gap between letters | 3 | 240 ms | What makes ..- readable as U, not EET |
| Gap between words | 7 | 560 ms | Written as / in text morse |
- This tool schedules playback with WebAudio sample-accurate timing and 5 ms attack/release ramps, so elements never click or smear together.
- Real operators often use Farnsworth timing — normal-speed characters with extra space between them — for learning; the WPM slider here scales everything uniformly per the strict PARIS standard.
Related tools
More free, in-browser tools from the More Tools set — every one runs locally, with no sign-up and no upload.