← All tools
// Security / History

Morse Code Translator online

Translate text to Morse code and back — with optional audio playback

Morse Code Translator logo
by
CHUNKY
MUNSTER
// Output

How to Use the Morse Code Translator

  1. Pick a direction with the toggle: Text → Morse, or Morse → Text.
  2. Type or paste into the input — translation updates as you type.
  3. Press Play audio to hear the dots and dashes at 600 Hz, 80 ms per dot.
  4. Use Download .txt to save the output, or Clear to reset both panels.

The encoder uppercases the input and looks every character up in the ITU/International Morse table for A–Z and 0–9, joining letters with a single space and using ' / ' as the word separator. The decoder reverses that: split on ' / ' for words, then on space for letters, then look up each dot/dash sequence in the inverse table. Anything not in the table — punctuation, accented letters, emoji — is rendered as '?' so you can see exactly where the lookup failed instead of silently dropping characters.

How the Morse Code Translator Works

Audio playback uses the Web Audio API: a fresh AudioContext per play, a 600 Hz sine oscillator gated by a gain node, dot length 80 ms, dash 240 ms (3× dot), 80 ms inter-element gap, 240 ms inter-letter gap and 560 ms inter-word gap — close to a 15 WPM cadence. There's no Farnsworth spacing setting yet, and prosigns (AR, SK, BT) and punctuation aren't in the lookup, so this is best treated as a learner/SOS-style encoder rather than a contesting CW keyer.

Frequently Asked Questions

Which Morse standard does this tool use?

The ITU/International Morse alphabet for A–Z and digits 0–9. A single space separates letters and ' / ' separates words, matching the convention used by amateur-radio practice software.

What audio speed does the playback use?

A 600 Hz sine tone with a dot length of 80 ms, dash 240 ms (3× dot), inter-element gap 80 ms, inter-letter gap 240 ms and inter-word gap 560 ms — roughly 15 words per minute.

Why does my decoded text contain '?' characters?

A '?' means a token wasn't found in the table. The decoder expects dots and dashes only, single space between letters and ' / ' between words — extra spaces or stray characters break the lookup.

Is punctuation supported?

Not yet — only letters A–Z and digits 0–9 are mapped. Period, comma, question mark and other ITU punctuation codes are out of scope, so they currently encode as '?'.

Explore the full suite of Security tools and 290+ other free utilities at Chunky Munster.