Binary to Text
Decode binary code back into readable text.
Was this tool helpful?
Thanks for the feedback!
Binary to Text decodes groups of 0s and 1s back into readable characters, so 01001000 01101001 00100001 becomes "Hi!". It is meant for computer science homework, coding puzzles, escape-room clues and those T-shirts and memes that hide a message in binary.
How to enter binary
- Separate each character's bits with a space or a line break. Every group is decoded as one character.
- Groups are usually 8 bits, but leading zeros are optional:
1001000and01001000both give "H". - Press To text to decode.
The separator is not optional. A continuous string like 0100100001101001 is read as one large number (18,537) and decodes to a single unrelated character, 䡩, rather than "Hi". Insert a space after every 8 digits before decoding.
Decoding a byte by hand
Each position in an 8-bit group has a value, doubling from right to left:
| Bit position (left to right) | Value |
|---|---|
| 1st to 4th | 128, 64, 32, 16 |
| 5th to 8th | 8, 4, 2, 1 |
Add up the values where there is a 1. For 01001000 that is 64 + 8 = 72, and character code 72 is capital H. For 01101001 it is 64 + 32 + 8 + 1 = 105, which is lowercase i. 00100001 is 32 + 1 = 33, the exclamation mark. That is the whole trick: binary gives a number and the number is a character code. The binary to decimal converter shows the numeric step on its own.
Why some binary decodes to gibberish
Non-English characters from other converters
Many converters store characters like ₹ or é as UTF-8, which splits one character across two or three bytes. The rupee sign becomes 11100010 10000010 10111001. This decoder reads each group as a separate character, so those three bytes come out as three odd symbols. Binary made with this site's Text to Binary tool writes ₹ as a single longer group, 10000010111001, which decodes back correctly.
Digits other than 0 and 1
A group containing a 2, a letter or a stray punctuation mark cannot be read as binary and produces an invisible null character. If the output is shorter than expected, check for typos in the input.
Wrong grouping
If spaces were lost or added in the wrong place when the binary was copied, every character after that point shifts. Count the digits: plain English text should split cleanly into groups of 8.
A quick self-test
Try decoding 01000011 01010011 by hand before pasting it. The first byte is 64 + 2 + 1 = 67 and the second is 64 + 16 + 2 + 1 = 83, which spell "CS". Working a couple of bytes on paper this way is exactly the skill school exams test, while the tool is faster for long messages.