Binary Translator

Type in either box and the other one translates as you go: text to binary, or binary back to text.

Code

Letter by letter

    How to use the binary translator

    1. 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.
    2. 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.
    3. 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.
    4. 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 value1286432168421
    A = 65 = 64 + 101000001
    i = 105 = 64 + 32 + 8 + 101101001

    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

    1. Split the code into groups of eight digits.
    2. For each group, add up the place values where there is a 1. For 01101001 that is 64 + 32 + 8 + 1 = 105.
    3. 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

    LetterBinaryLowercaseBinary
    A01000001a01100001
    B01000010b01100010
    C01000011c01100011
    D01000100d01100100
    E01000101e01100101
    F01000110f01100110
    G01000111g01100111
    H01001000h01101000
    I01001001i01101001
    J01001010j01101010
    K01001011k01101011
    L01001100l01101100
    M01001101m01101101
    N01001110n01101110
    O01001111o01101111
    P01010000p01110000
    Q01010001q01110001
    R01010010r01110010
    S01010011s01110011
    T01010100t01110100
    U01010101u01110101
    V01010110v01110110
    W01010111w01110111
    X01011000x01111000
    Y01011001y01111001
    Z01011010z01111010

    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 011010018
    Decimal (base 10)72 1051 to 3
    Hexadecimal (base 16)48 692
    Octal (base 8)110 1513

    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.