Skip to content
MorseBeep

How Morse Code Works

Morse code is built from one unit of time. A dot lasts one unit and a dash three; the gap inside a letter is one unit, between letters three units and between words seven. Speed is measured in words per minute using the word PARIS, which is exactly 50 units long.

By Kashif Sulehria. Last reviewed 19 September 2026. Every tool on MorseBeep uses the rules on this page.

What Morse code means

Morse code is a way of writing letters, numbers and punctuation as patterns of short and long signals, called dots and dashes (or dits and dahs when spoken). It is named after Samuel Morse, who developed the electric telegraph with Alfred Vail. Because it only needs something that can be switched on and off, the same message works as sound, light, radio or taps. What a signal means comes entirely from its timing, which is what the rest of this page explains.

The five timing rules

ElementLength
Dot (dit)1 unit
Dash (dah)3 units
Gap between dots and dashes inside a letter1 unit
Gap between letters3 units
Gap between words7 units

These proportions are what make Morse code readable by ear. Experienced operators hear each letter as a rhythm, not as a count of dots and dashes, and the rhythm only works when the timing is right.

PARIS: the standard word

To measure speed, operators needed a typical word. The one used is PARIS, because its dots, dashes and gaps add up to exactly 50 units, including the seven unit gap before the next word:

P A R I S word gap 01020304050 units
PARIS on a 50 unit timeline. Orange bars are tones; everything else is silence.

Words per minute (WPM)

Sending PARIS once per minute takes 50 units per minute, so a speed of W words per minute is 50 × W units per minute. One minute is 60,000 milliseconds, which gives the formula every Morse program uses:

unit (ms) = 1200 ÷ WPM

SpeedDotDashWord gap
5 WPM240 ms720 ms1680 ms
10 WPM120 ms360 ms840 ms
13 WPM92 ms277 ms646 ms
15 WPM80 ms240 ms560 ms
20 WPM60 ms180 ms420 ms
25 WPM48 ms144 ms336 ms
30 WPM40 ms120 ms280 ms
40 WPM30 ms90 ms210 ms

Some programs also use the word CODEX (60 units), which gives a slightly slower real speed for the same setting. MorseBeep uses PARIS, as most software and the ARRL do.

Farnsworth spacing

Learners are often taught with Farnsworth spacing: each letter is sent at full speed, so it keeps the rhythm you will hear later, but the gaps between letters and words are stretched so the overall speed is slower. The ARRL standard (Bloom, 1990) spreads the extra time over the 19 units of spacing in PARIS:

For example, letters at 18 WPM with an overall speed of 10 WPM give dots of 67 ms, but gaps of 621 ms between letters and 1449 ms between words. When both speeds are the same, the formulas give the normal 3 and 7 unit gaps. You can set both speeds in the settings of every MorseBeep tool.

Tone and sound

The pitch of the beep doesn't change the timing. Radio operators usually listen to a tone between about 500 and 800 Hz; MorseBeep starts at 600 Hz and lets you choose 300 to 1200 Hz. Each beep fades in and out over 5 milliseconds. Switching a tone on and off instantly makes a click (radio operators call them key clicks), and the short fade removes it without changing how long the beep lasts.

The standard: ITU-R M.1677-1

International Morse code is defined by the International Telecommunication Union in Recommendation ITU-R M.1677-1 (October 2009). It lists the letters, figures, punctuation marks and service signals, and sets the spacing rules above: a dash equals three dots, the space inside a letter one dot, between letters three dots and between words seven dots. The @ sign was the most recent addition, in 2004.

A few signs that people commonly use, such as the exclamation mark (-.-.--), are not in the standard. The Morse code alphabet page marks them.

International and American Morse code

The code Samuel Morse and Alfred Vail created for the American telegraph is now called American Morse or railroad Morse. Some of its letters contain internal spaces (C is two dots, a space, then a dot) and it uses dashes of different lengths. In 1848 Friedrich Clemens Gerke simplified it for German telegraph lines, and his version, with some changes, was adopted in Paris in 1865 as the international standard. That International Morse code is the one used on radio today and the one every MorseBeep tool uses. American Morse is a different code; a message in one cannot be read with the other.

A short history

Morse code is still used every day by radio amateurs, and radio navigation beacons for aircraft still identify themselves in Morse. It remains a way to send a message with nothing more than a light, a sound or a tap.

How MorseBeep makes the sound

The tools work out the start and length of every dot, dash and gap from the rules above, then hand the whole message to your browser's audio system (the Web Audio API) at once. Because the sound is scheduled on the audio clock, the timing stays exact even if your phone is busy. The screen flash, the lamp, the highlighted letters and the vibration follow the same clock. Downloaded WAV files are built from the same timings, sample by sample.

Sources

Found a mistake? Tell us and it will be corrected.