# Morse Code Speed: How WPM, the PARIS Standard, and Farnsworth Spacing Actually Work

Morse code has exactly one speed control: the length of a dot. Everything else — the dash, the gap between letters, the pause between words — is a fixed multiple of it. This guide derives the 1200 ÷ WPM rule from the PARIS standard word, explains why CODEX gives a different number for the same signal, and works through the Farnsworth formula that lets you practise full-speed characters at a beginner pace.

---

- **Canonical URL:** https://dothecalculation.com/blog/utility/morse-code-speed-wpm-timing-guide
- **Category:** Utilities
- **Author:** Do The Calculation Team
- **Published:** 2026-09-20
- **Reading time:** 11 min read
- **Publisher:** Do The Calculation (https://dothecalculation.com)
- **Methodology:** https://dothecalculation.com/methodology

---

Morse code looks like it has a lot of moving parts — dots, dashes, gaps inside a letter, longer gaps between letters, longer still between words. It does not. There is exactly one adjustable number in the whole system, the length of a single dot, and every other duration is a fixed multiple of it. Set the dot and you have set the speed of everything.

That single number is what "words per minute" describes, and the conversion between the two is the formula every Morse practice program quietly runs: a dot lasts 1200 ÷ WPM milliseconds. This guide shows where that 1200 comes from, why a second standard word called CODEX gives a different figure for the identical transmission, and how Farnsworth spacing bends the rules on purpose so that a beginner can learn full-speed characters without being overwhelmed.

## Quick Answer

- A dot is 1 unit, a dash is 3, the gap inside a character is 1, between characters 3, and between words 7. Nothing else exists.
- One dot lasts 1200 ÷ WPM milliseconds. At 20 WPM that is 60 ms; at 5 WPM it is 240 ms.
- The 1200 comes from the standard word PARIS, which is exactly 50 dot lengths including the word gap that follows it: 60,000 ms ÷ 50 units = 1200.
- CODEX is a second standard word worth 60 units. The same transmission measures 20 WPM on the CODEX scale and 24 WPM on the PARIS scale, so always say which one you mean.
- Farnsworth spacing sends the characters at a fast speed but stretches the gaps so the overall rate stays slow. The extra time per standard word is 60 ÷ s − 37.2 ÷ c seconds, shared across the 19 units of spacing.
- Characters per minute is simply 5 × WPM on the PARIS scale, since PARIS is five characters long.

Tool: [Try the Morse Code Translator](https://dothecalculation.com/calculators/morse-code-calculator) — Encode or decode a message, set the character and overall speed in WPM, and see the exact dot length, gap durations, and total transmission time — then play it as a sidetone or download it as a WAV file.

## One Number Sets Every Duration

Recommendation ITU-R M.1677-1, the international standard for Morse code, defines every duration as a ratio rather than an absolute time. That is what lets the same code work at a hand-sent 5 words per minute and a machine-sent 60, and it is why there is no such thing as a "Morse code clock speed" in milliseconds — only a proportion.

**The Complete Morse Timing Specification**
| Element | Length in dot units | At 20 WPM | At 5 WPM |
| --- | --- | --- | --- |
| Dot (dit) | 1 | 60 ms | 240 ms |
| Dash (dah) | 3 | 180 ms | 720 ms |
| Gap between elements of one character | 1 | 60 ms | 240 ms |
| Gap between characters | 3 | 180 ms | 720 ms |
| Gap between words | 7 | 420 ms | 1,680 ms |

> **The Silence Is Part of the Code** — Roughly half of any Morse transmission is silence, and that silence carries meaning. The difference between the letter C (− · − ·) and the two-letter sequence NN (− · − ·) is nothing but the length of one gap: one unit versus three. Get the gaps wrong and a perfectly formed set of dots and dashes decodes into gibberish.

## Where the 1200 ÷ WPM Rule Comes From

To say a transmission runs at 20 words per minute you need to agree on what a word is. Morse settled on a reference word rather than an average: PARIS, chosen because its mix of dots and dashes lands close to typical English text. Counted in dot units, including the word gap that follows it, PARIS comes to exactly 50.

**Counting the Standard Word PARIS in Dot Units**
| Part | Detail | Units |
| --- | --- | --- |
| P | · − − ·  =  1 + 3 + 3 + 1 elements, plus 3 internal gaps | 11 |
| A | · −  =  1 + 3, plus 1 internal gap | 5 |
| R | · − ·  =  1 + 3 + 1, plus 2 internal gaps | 7 |
| I | · ·  =  1 + 1, plus 1 internal gap | 3 |
| S | · · ·  =  1 + 1 + 1, plus 2 internal gaps | 5 |
| Gaps between the five letters | 4 gaps × 3 units | 12 |
| Word gap that follows | 1 gap × 7 units | 7 |
| Total | The standard word | 50 |

From there the formula falls out in one step. If a standard word is 50 dot units and you want to send W of them every minute, you need 50 × W dot units in 60,000 milliseconds, so one dot lasts 60,000 ÷ (50 × W), which simplifies to 1200 ÷ W.

**Dot Length from Words Per Minute**

```
Dot length (ms) = 1200 ÷ WPM
```
- Derived from 60,000 ms ÷ (50 units × WPM), where 50 units is the PARIS standard word.
- Everything else follows: dash = 3 × dot, gap between characters = 3 × dot, gap between words = 7 × dot.

_[Figure: Dot Length at Common Sending Speeds — The same message at 5 WPM takes four times as long as at 20 WPM, because every single duration scales together.]_

## PARIS vs CODEX: Two Standard Words, Two Different Numbers

PARIS is the standard almost every amateur radio program uses, but it is not the only one. Commercial and military telegraphy often used CODEX instead, a word that works out to 60 dot units rather than 50 because it contains more dashes. Because the reference word is longer, the same physical transmission scores a lower number on the CODEX scale.

**The Same Transmission, Measured Two Ways**
| Standard word | Units per word | Dot length formula | A 60 ms dot measures |
| --- | --- | --- | --- |
| PARIS | 50 | 1200 ÷ WPM | 20 WPM |
| CODEX | 60 | 1000 ÷ WPM | 16.7 WPM |

The conversion is a straight ratio: PARIS WPM = CODEX WPM × 1.2. A station described as sending 20 WPM CODEX is sending 24 WPM PARIS. When you see a speed quoted without a standard attached — on a practice app, a certificate, or a piece of equipment — it is almost always PARIS, but a 20 percent discrepancy is large enough to be worth confirming.

## Characters Per Minute, and Why It Is the Honest Number

PARIS is five characters long, so characters per minute on the PARIS scale is simply five times the WPM figure. At 20 WPM that is 100 characters a minute; at 13 WPM, 65. Some training software reports CPM instead of WPM because it sidesteps the standard-word argument entirely — a character is a character no matter which reference word you prefer.

**Speed Reference Table (PARIS Standard)**
| WPM | Dot length | Dash length | Word gap | Characters/min |
| --- | --- | --- | --- | --- |
| 5 | 240 ms | 720 ms | 1,680 ms | 25 |
| 10 | 120 ms | 360 ms | 840 ms | 50 |
| 13 | 92 ms | 277 ms | 646 ms | 65 |
| 15 | 80 ms | 240 ms | 560 ms | 75 |
| 20 | 60 ms | 180 ms | 420 ms | 100 |
| 25 | 48 ms | 144 ms | 336 ms | 125 |
| 30 | 40 ms | 120 ms | 280 ms | 150 |
| 40 | 30 ms | 90 ms | 210 ms | 200 |

## Farnsworth Spacing: Fast Characters at a Slow Overall Pace

There is a well-known trap in learning Morse. Practise at 5 WPM and you learn each character as a countable string of beeps — three dots for S, you can tick them off on your fingers. Then you try to move to 15 WPM and discover that the counting strategy collapses, because there is no longer time to count. You are not speeding up a skill; you are starting over.

Farnsworth spacing avoids that by separating two speeds that are normally locked together. Characters are sent at a fast character speed — typically 18 to 20 WPM, fast enough that counting is impossible and each character has to be learned as a single sound shape. The gaps between characters and words are then stretched until the message as a whole crawls along at whatever overall speed the learner can handle.

**Farnsworth Spacing (ARRL Method)**

```
Spacing time per standard word (s) = 60 ÷ s − 37.2 ÷ c
```
- c is the character speed in WPM, s is the overall speed in WPM, and s must be less than or equal to c.
- The 37.2 ÷ c term is the time the 31 dot units of actual characters in PARIS take at the character speed.
- Whatever is left over is shared across the 19 dot units of spacing in PARIS, giving 3/19 of it to each gap between characters and 7/19 to each gap between words.

Work an example. At a character speed of 18 WPM and an overall speed of 5 WPM, each standard word must take 60 ÷ 5 = 12 seconds. The characters themselves take 37.2 ÷ 18 = 2.07 seconds, which leaves 9.93 seconds for the spacing. Divide that across the 19 units of spacing and each spacing unit becomes 523 ms — so the gap between characters stretches to about 1.57 seconds and the gap between words to about 3.66 seconds, while the dot itself stays at a brisk 66.7 ms.

_[Figure: Plain 5 WPM vs Farnsworth 18/5 — Both send one standard word every 12 seconds. Only one of them teaches you a skill that survives a speed increase.]_

**Common Farnsworth Settings and the Gaps They Produce**
| Character / overall speed | Dot length | Gap between characters | Gap between words |
| --- | --- | --- | --- |
| 18 / 5 WPM | 66.7 ms | 1,568 ms | 3,660 ms |
| 18 / 10 WPM | 66.7 ms | 621 ms | 1,449 ms |
| 20 / 12 WPM | 60 ms | 496 ms | 1,157 ms |
| 20 / 15 WPM | 60 ms | 338 ms | 788 ms |
| 20 / 20 WPM (no Farnsworth) | 60 ms | 180 ms | 420 ms |

> **Raise the Overall Speed, Never the Character Speed** — The whole point of Farnsworth is that the character sounds stay fixed while you get faster. Pick a character speed you intend to end up at — 18 or 20 WPM is the usual advice — and leave it there for months. All of your progress should come from dragging the overall speed upward until the two numbers finally meet.

## How Long a Real Message Actually Takes

Once you can count units, transmission time is arithmetic: total units × dot length. Counting the units is the fiddly part, because each character has a different length and the gaps add up faster than people expect — in a typical sentence, the gaps between characters and words account for more airtime than the dots and dashes themselves.

**Message Length in Dot Units and Real Time**
| Message | Units | At 13 WPM | At 20 WPM | At 25 WPM |
| --- | --- | --- | --- | --- |
| SOS | 27 | 2.5 s | 1.6 s | 1.3 s |
| HELLO WORLD | 111 | 10.2 s | 6.7 s | 5.3 s |
| CQ CQ DE W1AW K | 151 | 13.9 s | 9.1 s | 7.2 s |
| THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG | 407 | 37.6 s | 24.4 s | 19.5 s |

The pangram at the bottom of that table is a useful sanity check on the whole system. It is 407 units, which is 8.14 PARIS standard words. At 20 WPM that should take 8.14 ÷ 20 of a minute — 24.4 seconds — and it does. If a calculation ever disagrees with that cross-check, the unit count is wrong, not the formula.

## What Each Speed Band Actually Means

**Speed Milestones and What They Represent**
| Speed | What it represents |
| --- | --- |
| 5 WPM | The old entry-level licence requirement in several countries. Slow enough to write down every character as it arrives. |
| 13 WPM | The former US General class standard, and roughly the speed at which most people stop writing and start hearing whole characters. |
| 20 WPM | The former US Extra class standard, and the speed most casual on-air contacts settle around. |
| 25–30 WPM | Comfortable conversational speed for an experienced operator, and typical of contest exchanges. |
| 35 WPM and above | High-speed CW. At this pace operators copy in their head and often recognise common words as single units rather than letters. |

Morse proficiency has not been a licensing requirement in the United States since 2007, and most other administrations dropped their tests around the same time. The speeds above survive as informal benchmarks rather than exams — useful targets, not gates.

## One Complication: Weighting

Some keyers offer a weighting control, which shifts the dot-to-dash ratio away from the standard 1:3 without changing the overall speed. Heavier weighting lengthens the dots and shortens the gaps, producing a smoother sound that some operators find easier to copy through noise; lighter weighting does the opposite. Standard weighting is 50 percent, meaning key-down time equals the specification exactly.

Weighting is a matter of taste at moderate levels, but it is worth knowing that heavily weighted Morse will not match the timing tables above, and that automatic decoders — which infer character boundaries from gap lengths — cope with it far worse than human ears do.

## Worked Examples

**Practice Problems With Full Working**
| Question | Working and answer |
| --- | --- |
| How long is a dot at 18 WPM? | 1200 ÷ 18 = 66.7 ms |
| How long is a dash at 13 WPM? | (1200 ÷ 13) × 3 = 92.3 × 3 = 276.9 ms |
| A station sends 15 WPM CODEX. What is that in PARIS WPM? | 15 × 60 ÷ 50 = 18 WPM PARIS |
| How many characters per minute is 24 WPM? | 24 × 5 = 120 characters per minute |
| A message is 320 dot units. How long at 22 WPM? | 1200 ÷ 22 = 54.5 ms per unit; 320 × 54.5 = 17,455 ms ≈ 17.5 s |
| Farnsworth at 20 WPM characters, 8 WPM overall: how long is the gap between characters? | Spacing time = 60 ÷ 8 − 37.2 ÷ 20 = 7.5 − 1.86 = 5.64 s per word; per unit = 5.64 ÷ 19 = 297 ms; gap between characters = 3 × 297 = 891 ms |
| At 20 WPM, how long does a 40-word message take? | 40 ÷ 20 = 2 minutes, assuming average word length close to PARIS |

## Frequently Asked Questions

**What does WPM mean in Morse code?**

It is the number of standard words sent per minute, where the standard word is PARIS — a fixed reference exactly 50 dot units long, including the word gap that follows it. It is not the number of real English words, which vary in length.

**Why is a dot 1200 divided by WPM?**

Because one standard word is 50 dot units. Sending W words a minute means fitting 50 × W units into 60,000 milliseconds, so each unit lasts 60,000 ÷ (50 × W) = 1200 ÷ W milliseconds.

**What is the difference between PARIS and CODEX?**

They are two reference words used to define speed. PARIS is 50 dot units and CODEX is 60, so the same transmission measures higher on the PARIS scale. PARIS WPM equals CODEX WPM multiplied by 1.2.

**What is Farnsworth spacing?**

A training method that sends each character at a fast speed while stretching the gaps between characters and words so the overall pace stays slow. It teaches characters as single sounds instead of countable strings of beeps.

**What character speed should I use for Farnsworth practice?**

Most guidance settles on 18 to 20 WPM. That is fast enough that counting individual elements is impossible, which is the whole point, and it is a realistic destination speed so you never have to relearn the character sounds.

**How fast is 13 WPM in characters per minute?**

65 characters per minute. PARIS is five characters long, so characters per minute is always five times the PARIS WPM figure.

**How long does SOS take to send?**

SOS is 27 dot units when sent as three separate characters. At 20 WPM that is 27 × 60 ms = 1.62 seconds; at 5 WPM it is 27 × 240 ms = 6.48 seconds. Sent as the single run-together prosign it is shorter, at 23 units.

**Is the gap between words really seven units?**

Yes, seven dot lengths of silence, measured from the end of the last element of one word to the start of the first element of the next. Many operators leave slightly more in practice, which is one reason hand-sent Morse rarely measures exactly at the nominal WPM.

**What is the fastest Morse code speed a person can copy?**

Experienced high-speed operators work comfortably in the 40 to 50 WPM range, and competitive high-speed telegraphy events run considerably faster than that with software assistance in the sending. For everyday radio contacts anything above 30 WPM is already fast.

**Does the dot length change for punctuation or longer characters?**

No. A punctuation mark simply contains more elements — a full stop is six — so it occupies more dot units and takes longer. The dot length itself is fixed by the WPM setting and never varies within a transmission.

**Why does my hand-sent Morse not match the calculated time?**

Human sending drifts, and most operators unconsciously lengthen the gaps between words more than the specification calls for. Keyer-sent Morse matches the tables closely; hand-sent Morse usually runs a little slower than its nominal speed.

## Related Guides and Calculators

- [Morse Code Translator & Audio Player](/calculators/morse-code-calculator) — Encode or decode a message, set the speed in WPM, hear the sidetone, and read the exact timing breakdown.
- [How to Learn Morse Code](/blog/utility/how-to-learn-morse-code) — Sound-first practice, the Koch method, and a realistic timeline for getting from zero to conversational.
- [Binary to Text & ASCII Translator](/calculators/binary-translator-calculator) — The other character encoding most people meet, with a full bit-grid view.
- [Understanding Calculator Formulas](/blog/site-guides/understanding-calculator-formulas) — How the formulas behind these tools are sourced and presented.

## Final Summary

Morse timing has one input and no exceptions. Choose a dot length — directly, or by naming a words-per-minute figure and letting 1200 ÷ WPM do the conversion — and the dash, the three gap lengths, and the total transmission time are all determined. The only genuine complication is the standard word: PARIS at 50 units is the near-universal default, CODEX at 60 units is the historical alternative, and the two differ by a flat 20 percent.

Farnsworth spacing is the one deliberate departure from that lockstep, and it exists for a good reason. By holding the characters at full speed and putting all of the slowness into the silence, it lets a beginner practise the exact sounds they will need at 20 WPM while still having time to think — so that getting faster later means nothing more than closing the gaps.

---

_Source: [Do The Calculation](https://dothecalculation.com/blog/utility/morse-code-speed-wpm-timing-guide). Quote freely with attribution and a link to this page._
