Binary Decoder

Online binary to text converter and binary code translator — decode binary or encode text to binary, with a per-byte bit table.

Free online binary decoder and binary translator — paste any binary string (space-grouped or continuous 0s and 1s) to instantly decode binary to UTF-8 text, or switch to text to binary mode to encode any string. Toggle the bit table to see each byte broken down as binary, decimal, hex, and character. No signup, runs entirely in your browser.

Examples:

Mode

Input format

Output format

Expands each byte into its binary, decimal, hex, and character representation.

Quick reference

01001000
→ 72 → 'H'
01100101
→ 101 → 'e'
00100000
→ 32 → ' ' (space)
11110000 10011111
10011000 10001010
→ 😊 (4-byte UTF-8)

Bit Table Showing first 64 of bytes
# Binary Dec Hex Char

Frequently asked questions

Binary code is the base-2 number system used by all digital computers. It uses only two symbols — 0 and 1 — to represent every piece of information a computer processes. A single binary digit is a bit; 8 bits form a byte. All text, images, audio, and software are ultimately stored as sequences of 0s and 1s, because transistors in digital hardware have exactly two stable states: on (1) and off (0).
Split the binary string into 8-bit groups (one per character), convert each 8-bit group from base 2 to decimal, then look up the character in the ASCII/UTF-8 table. For example: 01001000 → 72 → 'H'. This tool does all three steps automatically — paste the binary string and the decoded text appears immediately.
Each letter is assigned a number by the ASCII or UTF-8 encoding standard, and that number is written in 8-bit binary. 'A' = 65 = 01000001, 'a' = 97 = 01100001, 'H' = 72 = 01001000. Non-ASCII characters (accented letters, emoji, CJK) use 2–4 bytes in UTF-8, so their binary representation is 16–32 bits long.
It decodes to "Hello". Breaking it down: 01001000 = 72 = H, 01100101 = 101 = e, 01101100 = 108 = l, 01101100 = 108 = l, 01101111 = 111 = o. This is one of the most well-known examples of binary text encoding — click the "Hello World" example above to load it directly.
Switch this tool to Text → Binary mode and type or paste any text. To do it manually: take each character, find its UTF-8 byte value(s), convert each byte to an 8-digit binary number (padded with leading zeros), then join all groups with spaces. 'H' → byte 72 → 01001000. Use the Swap button to push your decoded output back as input for re-encoding.

One-liner in Python 3:

bits = '01001000 01100101 01101100 01101100 01101111'.replace(' ', '')
text = bytes(int(bits[i:i+8], 2) for i in range(0, len(bits), 8)).decode('utf-8')
print(text)  # Hello

To encode: ' '.join(format(b, '08b') for b in text.encode('utf-8'))

Both represent the same byte values in different bases. Binary (base 2) uses 8 characters per byte and shows every individual bit — useful for bitmask operations and understanding bit-level data. Hexadecimal (base 16) uses only 2 characters per byte — 4× more compact — and is preferred for debugging, memory addresses, and cryptographic hashes. Each hex digit equals exactly 4 binary bits (a nibble): 48 hex = 0100 1000 binary = 'H'.
For standard ASCII characters (English letters, digits, punctuation): exactly 8 bits (1 byte). For UTF-8 extended characters: 2 bytes (16 bits) for most accented and extended Latin characters; 3 bytes (24 bits) for CJK (Chinese, Japanese, Korean) characters; 4 bytes (32 bits) for emoji and supplementary characters. The bit table in this tool shows the actual byte count per decoded character sequence.