How to use the binary translator
- Text to binary: type or paste in the Text box. The binary code appears on the right as you type, eight digits for each byte.
- Binary to text: paste the 0s and 1s in the Binary box and the text appears on the left. Spaces between the bytes are optional; a long run of digits is cut into groups of eight for you, and 0b prefixes and commas are fine.
- Decimal, hex or octal: pick one of the buttons above the boxes to see the same bytes as ordinary numbers, hexadecimal or octal, and to translate those back to text.
- Letter by letter: the panel under the boxes shows every character with its code, which makes it easy to check a translation done by hand.
Everything runs on your device. What you type is never sent to a server.
How text becomes binary
A computer stores every character as a number. The letter A is 65, B is 66, a space is 32, and the full list is the ASCII table. To write that number in binary, you use eight places, each worth twice the one to its right:
| Place value | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|---|---|---|---|---|---|---|---|---|
| A = 65 = 64 + 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
| i = 105 = 64 + 32 + 8 + 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 |
So A is 01000001. Each group of eight binary digits (bits) is one byte, and the word “Hi” is two bytes: 01001000 01101001.
How to read binary by hand
- Split the code into groups of eight digits.
- For each group, add up the place values where there is a 1. For 01101001 that is 64 + 32 + 8 + 1 = 105.
- Look the number up in the ASCII table: 105 is a lowercase i.
A quick check that you have the letters right: every uppercase letter starts with 010 and every lowercase letter with 011. The two cases differ only in the bit worth 32, which is why a and A are exactly 32 apart.
The alphabet in binary
| Letter | Binary | Lowercase | Binary |
|---|---|---|---|
| A | 01000001 | a | 01100001 |
| B | 01000010 | b | 01100010 |
| C | 01000011 | c | 01100011 |
| D | 01000100 | d | 01100100 |
| E | 01000101 | e | 01100101 |
| F | 01000110 | f | 01100110 |
| G | 01000111 | g | 01100111 |
| H | 01001000 | h | 01101000 |
| I | 01001001 | i | 01101001 |
| J | 01001010 | j | 01101010 |
| K | 01001011 | k | 01101011 |
| L | 01001100 | l | 01101100 |
| M | 01001101 | m | 01101101 |
| N | 01001110 | n | 01101110 |
| O | 01001111 | o | 01101111 |
| P | 01010000 | p | 01110000 |
| Q | 01010001 | q | 01110001 |
| R | 01010010 | r | 01110010 |
| S | 01010011 | s | 01110011 |
| T | 01010100 | t | 01110100 |
| U | 01010101 | u | 01110101 |
| V | 01010110 | v | 01110110 |
| W | 01010111 | w | 01110111 |
| X | 01011000 | x | 01111000 |
| Y | 01011001 | y | 01111001 |
| Z | 01011010 | z | 01111010 |
The digits work the same way: 0 is 00110000 (48) and 9 is 00111001 (57), so the last four bits of a digit are its value.
Accents and emoji: UTF-8
ASCII has only 128 characters, enough for English. Everything else, from é to Chinese characters and emoji, comes from Unicode, and this translator writes it with UTF-8, the encoding web pages use. In UTF-8 the 128 ASCII characters keep their single byte, and other characters take two to four bytes:
- é is two bytes:
11000011 10101001 - € is three bytes:
11100010 10000010 10101100 - 😀 is four bytes:
11110000 10011111 10011000 10000000
If some binary you paste is not valid UTF-8, those bytes show as �. Binary from an old system may use a different encoding for anything beyond plain English letters.
Decimal, hex and octal
These are the same bytes written in a different base, so they all translate to the same text. Here is “Hi” in each:
| Base | “Hi” | Digits per byte |
|---|---|---|
| Binary (base 2) | 01001000 01101001 | 8 |
| Decimal (base 10) | 72 105 | 1 to 3 |
| Hexadecimal (base 16) | 48 69 | 2 |
| Octal (base 8) | 110 151 | 3 |
Programmers like hex because one hex digit stands for exactly four bits, so 0100 1000 is 4 8.
Binary text is not the same as a binary number
This tool translates text. The number 25 written in binary is 11001, but the text “25” is two characters, and its binary is 00110010 00110101. If your binary is a single number rather than a message, add up its place values instead.
Like codes? The Morse code translator turns text into dots and dashes you can hear, and the cryptogram puzzles hide a quote behind a letter-swap code for you to crack.
Frequently asked questions
What is binary code?
Binary is a way of writing numbers with only two digits, 0 and 1. Computers store text by giving every character a number and keeping that number as a row of eight 0s and 1s, called a byte.
How do I translate binary to text?
Paste the binary into the Binary box above and the text appears straight away. By hand: split it into groups of eight, add up the place values (128, 64, 32, 16, 8, 4, 2, 1) where there is a 1, and look the number up in the ASCII table.
What is “hello” in binary?
01101000 01100101 01101100 01101100 01101111. With a capital H it starts with 01001000 instead.
What does 01001000 01101001 mean?
“Hi”. 01001000 is 72, a capital H, and 01101001 is 105, a lowercase i.
What is “I love you” in binary?
01001001 00100000 01101100 01101111 01110110 01100101 00100000 01111001 01101111 01110101. Each space is 00100000.
How many bits are in a letter?
Eight, one byte, for any letter in plain English. ASCII itself needs only seven bits, so the first bit is always 0. Letters with accents take two bytes in UTF-8, and emoji take four.
Can I translate emoji and other languages?
Yes. The translator uses UTF-8, so any character works, and the letter-by-letter panel shows how many bytes each one takes.
Is what I type sent anywhere?
No. The translation happens in your browser and nothing is uploaded.