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