5-bit · Baudot/Murray · ITA2 · teletype
Early 5-bit telegraph/teletype character encoding, predecessor to ASCII. Uses LETTERS and FIGURES shift states to double the character set. Data is shown as 5-bit binary strings.
Text → Baudot (5-bit binary) box — the encoding appears instantly in Baudot (5-bit) as space-separated 5-bit strings.ITA2 (CCITT-2) (default) or US TTY — and the output updates immediately.Copy result to grab the encoded 5-bit string to your clipboard.Baudot (5-bit) → Text box and the decoded text appears in Decoded text.Clear any time to reset a box and start over.Baudot and its standardized ITA2 form were the backbone of early telegraphy and teleprinters. Encoding text by hand helps you read historical hardware docs and teletype logs.
Radio teletype still uses 5-bit Baudot. Prepare and check messages against the exact bit patterns a transmitter would send.
See how 11111 (LETTERS) and 11011 (FIGURES) switch between two character sets over just 5 bits — a trick that predates modern encodings.
Toggle the variant switch to see where the two 5-bit standards differ — mostly a handful of FIGURES symbols like $, =, and quotes.
A hands-on way to see the direct ancestor of ASCII and why 5 bits (only 32 values) forced the LETTERS/FIGURES shift mechanism.
Everything runs in your browser. Nothing is uploaded, logged, or sent to a server — safe for sensitive payloads.
Baudot is an early 5-bit telegraph/teletype character encoding, the predecessor to ASCII. ITA2 (CCITT-2) is its standardized form. Because 5 bits only yield 32 values, each character is written as a 5-bit binary number like 00001.
32 values isn't enough for the full alphabet plus digits and punctuation, so two special codes — 11111 for LETTERS and 11011 for FIGURES — switch the meaning of every following code between two tables. That roughly doubles the printable character set.
They share the same letters table but differ in a few FIGURES symbols. US TTY adds $ and = and swaps + for a quote, among other small changes. Use the radio switch to compare them directly.
Baudot is historically uppercase-only. On encode, lowercase letters are normalized to uppercase and the original case is not preserved — there is no lowercase shift state in ITA2.
They live in the FIGURES table, so the encoder inserts a 11011 shift before them and a 11111 to switch back to letters. That's why encoding a number inserts extra codes you can see in the output.
Some 5-bit values are unassigned and are silently skipped. Characters outside the tables are encoded by masking their code to the low 5 bits (& 31), which may not round-trip cleanly. Decoding only reads runs of exactly 5 bits and ignores everything else.
Never. All encoding and decoding happens locally in JavaScript. Your input is not sent to, stored on, or logged by any server.