Morse Code Translator

How to use it

  1. Type text to see it in Morse code: a space between letters and a slash between words. Copy it, play it, or download it as a WAV file.
  2. Switch to Morse → Text to decode. Type dots and dashes (• and − work too), with a space between letters and a slash, a vertical bar or three spaces between words.
  3. Set the character speed in words per minute and, if you are learning, a lower overall speed: the letters keep their speed and only the gaps between them get longer (Farnsworth spacing). Pick a tone you find easy to hear.

The International Morse code

The translator uses the character set in the International Telecommunication Union’s Recommendation ITU-R M.1677-1 (2009), which is what “International Morse code” means today: the 26 letters, the accented é, the figures 0 to 9, and the full stop, comma, colon, question mark, apostrophe, hyphen, slash, brackets, quotation marks, double hyphen (=), plus sign, multiplication sign and the commercial at (@). Characters outside that list, such as ! & ; or $, have no ITU signal; the translator lists them instead of inventing one. The ITU’s own rules are followed where they say how to send something: a percent sign is sent as 0/0, joined to a number before it by a hyphen, so 2% becomes 2-0/0. When decoding, the ITU service signals are named: understood (···−·), error (eight dots), wait (·−···), end of work (···−·−) and the starting signal (−·−·−).

Timing and speed

Everything is measured in dots. Under the ITU rules a dash is three dots, the gap inside a letter is one dot, the gap between letters three and the gap between words seven. Speed is conventionally measured with the word PARIS: with the gap after it, it is exactly 50 dots long, so at W words per minute a dot lasts 1.2 ÷ W seconds (60 ms at 20 WPM). Farnsworth spacing, used to teach Morse, keeps the 31 dots of sound and letter spacing inside PARIS at the character speed and stretches the 19 dots of gaps between letters and words so the word takes 60 ÷ overall-WPM seconds. The sound is built sample by sample, with a 5 ms smooth start and end on each tone so it does not click; Play and Download WAV use the same samples.

What we tested

On October 15, 2026 we downloaded the Recommendation from the ITU and parsed its code table: all 52 characters match the translator’s table, and every character encodes and decodes back to itself. For 308 texts at 5 to 40 WPM, with and without Farnsworth spacing, we compared every tone in the generated sound with a model of the ITU spacing rules in exact fractions: each starts and stops on its exact sample (0 failures), and PARIS takes exactly 3.0 seconds at 20 WPM and 6.0 seconds at 20 WPM with an overall speed of 10. A table with P mistyped and a version with two-dot dashes were both caught. In Chromium, “SOS 73!” became ... --- ... / --... ...-- with the ! listed as unsupported; the WAV for PARIS was a valid 16-bit file of 2.63 seconds; and ••• −−− ••• / ···−·− / ·−·−·− decoded as “sos [end of work] .”.

Sources

Frequently Asked Questions

How do I translate text to Morse code?+
Type or paste the text. Each letter becomes dots and dashes with a space between letters and a slash between words; press Play to hear it or Download WAV to save it.
How do I decode Morse code?+
Choose Morse to Text and type the dots and dashes with a space between letters and a slash (or three spaces) between words. Characters that are not in the International Morse code are shown as a block so you can spot typos.
What is SOS in Morse code?+
Three dots, three dashes, three dots: ... --- ... .
What does WPM mean for Morse code?+
Words per minute, measured with the word PARIS, which is 50 dot-lengths long including the gap after it. At 20 WPM a dot lasts 60 milliseconds.
What is Farnsworth spacing?+
A way of learning Morse: letters are sent at full speed so you learn their sound, but the gaps between letters and words are longer, so the overall speed is slower.
Why is ! not translated?+
The International Morse code defined by the ITU has no signal for !, &, ; or $. Some radio amateurs use unofficial signals for them; the translator lists such characters rather than guess.

Built by Derek Giordano · Part of Ultimate Design Tools

Privacy Policy · Terms of Service