Baudot Code Decoder / Encoder
A Baudot code decoder turns 5-unit teleprinter code back into text. This one reads ITA2, the ITU-T S.1 standard, and the American US TTY variant, and tries both unit orders and both polarities, ranking the readings by how English they look — so a tape or bit string decodes even when you don't know which end is unit 1, entirely in your browser.
The international standard since 1932, used by telex worldwide and by most amateur radio RTTY.Unshift on space makes a space return to letters, as many teleprinters did; S.1 itself doesn't, so it's off unless your text needs it.
Don't worry about which end is unit 1 or whether holes are marks — every combination is tried below.
- ITA2 (ITU-T S.1) · unit 1 firstBest match
CQ CQ DE OFFLINEUTILS 73
- US TTY · unit 1 first
CQ CQ DE OFFLINEUTILS 73
- ITA2 (ITU-T S.1) · unit 1 last
CX CX LT APPDNITMENDH .5
- US TTY · unit 1 last
CX CX LT APPDNITMENDH .5
- US TTY · unit 1 first · marks inverted
Z " 0;7))!?2;9(?!& 9;
- US TTY · unit 1 last · marks inverted
Z " !(.$$02?(-;20' -(
- ITA2 (ITU-T S.1) · unit 1 first · marks inverted3 undefined
Z + 0=7))�?2=9(?�� 9=
- ITA2 (ITU-T S.1) · unit 1 last · marks inverted1 undefined
Z + �(.␅␅02?(-=20␇ -(
Ranked by how English the letter pairs look, so a message that isn't English text may need you to pick by eye. � is a figure-case code S.1 leaves undefined; ␇ is the bell and ␅ is "Who are you?".
About Baudot Code Decoder / Encoder
Baudot code carries text in five units per character, which allows only 32 combinations — not enough for 26 letters, ten digits and punctuation. The fix is two shift codes: LTRS (all five units marked, 11111) puts the receiver in letters and FIGS (11011) in figures, and every other code means one thing in each case. So 11000 is A after LTRS and - after FIGS. Émile Baudot devised the first 5-unit code in the 1870s, Donald Murray reworked it in 1901 for keyboard-punched tape, and in 1932 the CCITT standardised his version as International Telegraph Alphabet No. 2. It ran telex networks for decades and is still what amateur radio RTTY sends at 45.45 baud. Most Baudot puzzles that decode to nonsense have their units the wrong way round. ITU-T S.1 numbers the units in the order they're sent and writes A as 11000, but much RTTY software stores unit 1 in the lowest bit, which writes the same letter as 00011 — decimal 3 rather than 24. A paper tape read from the wrong edge reverses them too, and a signal recorded with mark and space swapped inverts every unit. So this tool decodes each input eight ways — two codes, two unit orders, two polarities — and ranks the results by how English their letter pairs look. Letter pairs rather than letter counts, because Murray gave the fewest holes to the commonest letters and reversing a code keeps its number of holes: a reversed message has nearly perfect English letter frequencies and still reads as nonsense. The two codes differ only in the figure case. ITA2 leaves F, G and H to national use, puts "Who are you?" on D — which triggers the other machine's answerback — and the bell on J; the American code has $ ! & and # there, an apostrophe on J and the bell on S, plus ; and " on V and Z. The ITA2 table here is transcribed from S.1 itself and checked against fldigi, the amateur radio RTTY program, by an automated test. You can paste 5-bit groups, spaced or run together, decimal codes 0–31, 0x hex, or a tape copied as five lines of holes and dots — the sprocket row is recognised and skipped. You can also click holes onto the tape directly, encode your own text with the shifts inserted for you, and download the tape as a PNG or SVG.
What Baudot Code Decoder / Encoder does
- Decodes ITA2 (ITU-T S.1) and US TTY, with LTRS and FIGS shifts handled
- Tries both unit orders and both polarities, ranked by how English the letter pairs look
- Reads 5-bit groups, decimal, 0x hex, or a paper tape copied as five lines
- Click holes onto a five-level tape, or encode text with the shifts inserted for you
- Optional unshift-on-space, as many teleprinters and RTTY programs use
- Exports 5-bit groups in either unit order, decimal codes, and the tape as PNG or SVG
- ITA2 table transcribed from ITU-T S.1 and checked against fldigi
When to reach for Baudot Code Decoder / Encoder
- Solving a CTF challenge built on Baudot code or a picture of paper tape
- Reading 5-bit codes logged from an RTTY or telex signal
- Checking which bit order a Baudot table or program uses
- Making a strip of punched tape spelling out a message
How to use Baudot Code Decoder / Encoder
- 01
Paste the codes
5-bit groups, decimal codes, 0x hex, or a tape copied as five lines of holes and dots. Or click the holes onto the tape.
- 02
Read the best match
Every code, unit order and polarity is tried. The reading whose letter pairs look most like English is listed first.
- 03
Adjust if numbers look wrong
If digits spill into text after a space, the sender's machine probably unshifted on space — turn that option on.
- 04
Encode your own
Type a message, pick ITA2 or US TTY, and the shifts are inserted for you. Copy the codes in either unit order or download the tape.
When to use Baudot Code Decoder / Encoder vs alternatives
| Alternative | Use Baudot Code Decoder / Encoder when… | Use the alternative when… |
|---|---|---|
| A single-table online Baudot converter | you don't know the bit order or polarity, or the text uses US TTY punctuation. | you already know the input is ITA2 written with unit 1 first. |
| fldigi or another RTTY program | you have the 5-bit codes or a tape picture rather than an audio signal. | you need to demodulate RTTY audio off the air or from a recording. |
| CyberChef | you need plain Baudot decoding — CyberChef only uses ITA2 inside its Lorenz cipher simulation. | the puzzle is a Lorenz-enciphered message rather than plain Baudot. |