Back to Developer
Text ⇄ Binary Converter

Text ⇄ Binary Converter

Convert between text and binary. Pick a mode (text → binary or binary → text). Text is encoded to UTF-8 bytes and each byte is shown as a zero-padded 8-bit binary number (emoji and non-Latin text convert correctly as multiple bytes). Toggle space separators via an option; on decode, spaces and newlines are ignored and the input is regrouped into 8-bit bytes. Everything runs in your browser — your input is never uploaded.

developerconversionencodedecode

How to use

First pick a direction (text → binary or binary → text); switching it updates the placeholder and sample. Type text or binary into the input (the Sample button fills an example) and press Convert. Text is encoded to UTF-8 bytes and each byte becomes a zero-padded 8-bit binary number. The 'Separate with spaces' option toggles spaces between bytes. On decode, everything except 0 and 1 (spaces, newlines, commas, etc.) is stripped before regrouping into 8-bit bytes, so spaced or unspaced input both decode correctly. Everything runs in your browser.

FAQ

Is my input uploaded?
No. All conversion happens in browser JavaScript (TextEncoder / TextDecoder); your input never leaves your device.
Can it handle non-Latin text and emoji?
Yes. Text is UTF-8 encoded, so Japanese is 3 bytes per character (three 8-bit groups), emoji are 4 bytes, etc. Decoding restores the original characters correctly.
Why 8 bits per byte?
Computers treat a byte as 8 bits by convention. Showing each byte (0–255) as 8 binary digits keeps columns aligned and makes decoding trivial — just split every 8 digits. This tool always zero-pads to 8 digits.
Can it decode binary without spaces?
Yes. On decode, every character except 0 and 1 (spaces, newlines, tabs, commas) is removed before grouping into 8-bit bytes, so '01001000 01101001' and '0100100001101001' give the same result.
What if the bit count isn't a multiple of 8?
Leftover bits that don't fill a complete byte are ignored, and only whole 8-bit bytes are decoded. A note ('trailing N bits ignored') appears below the result — handy for catching a truncated paste.

Related tools