Binary to Text Translator
Paste binary (spaces between bytes or one long run) to read it as text, byte by byte, with UTF-8 for accents and emoji.
Spaces between bytes, or one long run. 0x and \x prefixes are fine.
As text
Bits
4 bytes decode to 4 characters.
How this works: Method, 1 source, Checked against 1 worked example,
How this works
Method
Cut the bits into bytes of eight, turn each byte into a number, and look the number up as a character. 01000011 is 67, which is C; 01100001 is 97, a. Spaces between bytes help, but a single unbroken run works if its length is a multiple of eight. Full method
Sources
How it’s tested
One worked example for this page is checked by automated tests before every release: given the inputs, the tool must show the expected answer.
Privacy
On your device. Nothing you enter or open leaves this browser. About privacy labels
Changes
- Rebuilt with 18 conversion pages, including text to binary and hex, two’s complement, IEEE 754 floating point, a bitwise calculator and Roman numerals, each with its method and a table.
- Added key facts with worked examples of converting between bases.
- Redesigned: the working shown step by step, and the same number in the other common bases under the answer.
- Fixed large numbers: values above 2^53, such as 64-bit hex, now convert exactly instead of rounding.
- First published.
How to translate binary to text
Cut the bits into bytes of eight, turn each byte into a number, and look the number up as a character. 01000011 is 67, which is C; 01100001 is 97, a. Spaces between bytes help, but a single unbroken run works if its length is a multiple of eight.
If a byte starts with 110, 1110 or 11110, it opens a multi-byte UTF-8 character and the next one to three bytes, each starting with 10, belong to it. If those continuation bytes are missing or out of place, the bytes are not valid text, and the converter says which problem it found rather than printing garbage.
Case is a single bit: capital letters have 0 in the 32s place (010xxxxx) and small letters have 1 (011xxxxx), so A and a differ only in that bit.
8 bits → byte value → character (UTF-8 for multi-byte sequences)
- In UTF-8 a byte starting 10 is always a continuation byte, so a decoder can find the start of a character from any position. Source: RFC 3629, UTF-8.
Binary bytes and the characters they decode to
Punctuation, digits and control codes you meet when reading binary messages.
| Binary | Character | Note |
|---|---|---|
| 00001001 | tab | |
| 00001010 | line feed (new line) | |
| 00001101 | carriage return | |
| 00100000 | space | |
| 00100001 | ! | ! |
| 00100010 | " | double quote |
| 00100111 | ' | apostrophe |
| 00101100 | , | comma |
| 00101110 | . | full stop |
| 00110000 | 0 | digit zero |
Show all 19 rowsShow fewer
| 00111001 | 9 | digit nine |
| 00111010 | : | colon |
| 00111111 | ? | question mark |
| 01000000 | @ | at sign |
| 01000001 | A | capital A: 010 + 00001 |
| 01011010 | Z | capital Z |
| 01100001 | a | small a: 011 + 00001 |
| 01111010 | z | small z |
| 01111111 | DEL, a control code |
Frequently Asked Questions
What does 01001000 01101001 mean?
It is “Hi”: 01001000 is 72 (H) and 01101001 is 105 (i).
My binary has 7 bits per group. Will it work?
Yes, if the groups are separated by spaces: each group is read as one byte with a leading zero added, so 1001000 is read as 01001000 (H).
Why do I get an “invalid UTF-8” message?
A byte that starts a multi-byte character (11xxxxxx) needs continuation bytes (10xxxxxx) after it. If one is missing, or a continuation byte appears on its own, the bytes are not valid UTF-8 text. Check for a missing or extra byte.