# Baudot Code Decoder / Encoder

Canonical URL: https://offlineutils.com/baudot-code
Category: Codes & Ciphers
Published: 2026-10-16
Publisher: offlineutils.com
Runs entirely in the browser; nothing entered into the tool is uploaded.

> 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.

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.

## Features

- 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

## Use cases

- 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 it

1. **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.
2. **Read the best match** — Every code, unit order and polarity is tried. The reading whose letter pairs look most like English is listed first.
3. **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.
4. **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 it, and when to use something else

- **vs A single-table online Baudot converter** — use Baudot Code Decoder / Encoder when you don't know the bit order or polarity, or the text uses US TTY punctuation. Use A single-table online Baudot converter when you already know the input is ITA2 written with unit 1 first.
- **vs fldigi or another RTTY program** — use Baudot Code Decoder / Encoder when you have the 5-bit codes or a tape picture rather than an audio signal. Use fldigi or another RTTY program when you need to demodulate RTTY audio off the air or from a recording.
- **vs CyberChef** — use Baudot Code Decoder / Encoder when you need plain Baudot decoding — CyberChef only uses ITA2 inside its Lorenz cipher simulation. Use CyberChef when the puzzle is a Lorenz-enciphered message rather than plain Baudot.

## Frequently asked questions

### How do I decode Baudot code?

Paste the codes and read the first result. They can be 5-bit groups like 11111 11000 10011, decimal codes from 0 to 31, or a tape copied as five lines of holes and dots. The tool decodes them under ITA2 and US TTY, with the units in both orders and with marks and spaces both ways round, and lists the reading that looks most like English first.

### Why does my Baudot code decode to gibberish?

Almost always because the units are in the opposite order to the table you used. ITU-T S.1 writes A as 11000, unit 1 first, but a lot of software stores unit 1 as the lowest bit and writes it as 00011. A tape read from the other edge reverses the units, and a signal with mark and space swapped inverts them. A missing FIGS or LTRS can also leave a run of letters reading as digits. This tool tries every combination, so none of those should stop it.

### What do LTRS and FIGS mean?

They're the two shift codes. Five units allow only 32 codes, so each code means a letter in letters case and a digit or punctuation mark in figures case, and LTRS (11111) and FIGS (11011) switch between them. The shift stays in force until the other one arrives, which is why S.1 asks every transmission to start with one.

### What is the difference between ITA2 and US TTY?

Eight codes in the figure case. ITA2 leaves F, G and H undefined for national use, puts the "Who are you?" answerback request on D, the bell on J, an apostrophe on S, = on V and + on Z. The American teletypewriter code has $ on D, ! & and # on F, G and H, an apostrophe on J, the bell on S, ; on V and " on Z. Letters and everything else are identical.

### Is Baudot code the same as ITA2?

Not strictly. Émile Baudot's original code of the 1870s, later called ITA1, was entered on a five-key keyboard and assigned the codes differently. Donald Murray's 1901 revision, built for typewriter keyboards and punched tape, became ITA2 in 1932, and that is what "Baudot code" means in practice today. This tool reads ITA2 and US TTY, not ITA1.

### How do I read a five-level paper tape?

Each column across the tape is one character and each hole is a marked unit. The small sprocket holes run between units 2 and 3, so one side of them has two tracks and the other three — the two-track side holds units 1 and 2. Copy the tape as five lines, one per track, using o for a hole and a dot for none, and paste it in. If you can't tell which edge is which, it doesn't matter: both orders are tried.

### What are ␇ and ␅ in the output?

Control codes with no printed character. ␇ is the bell, which rang the receiving machine's bell, and ␅ is "Who are you?", which made the other teleprinter send its answerback identification. They're shown instead of being dropped, because in a puzzle their position can matter.

## Related tools

- https://offlineutils.com/punch-card-decoder
- https://offlineutils.com/tap-code
- https://offlineutils.com/number-base-converter
