How to use it
- 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.
- 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.
- 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
- International Telecommunication Union, Recommendation ITU-R M.1677-1: International Morse code (2009; the code table and the spacing rules).
Frequently Asked Questions
Built by Derek Giordano · Part of Ultimate Design Tools