Overview
Decode a binary bit string (e.g. "01001000 01100101 01101100 01101100 01101111") into readable text, or run the reverse and encode text into binary. Bits are grouped 8 at a time into raw bytes - the same shared parsing used by the Binary to Base64 Converter - and that byte array is then decoded through the browser's native `TextDecoder` in strict UTF-8 mode, never by converting each 8-bit group to a character on its own. That distinction is what makes multi-byte characters work correctly: the euro sign "€" is three bytes in UTF-8 (E2 82 AC, i.e. three separate 8-bit groups), and treating each byte as its own character would produce mojibake instead of the single intended symbol. Invalid bit strings (a stray character other than 0/1, or a bit count that isn't a multiple of 8) and valid-bits-but-invalid-UTF-8 byte sequences are both reported with specific errors. Runs entirely client-side.
Best for: Decoding a raw binary bit dump back into readable text
How to use this tool
- Choose a direction. Binary to text, or text to binary.
- Enter your bits or text. Whitespace between byte-groups is optional and stripped automatically.
- Bits are grouped into bytes. Every 8 bits becomes one raw byte before any text decoding happens.
- The byte array is decoded as UTF-8. The full sequence is decoded together, so multi-byte characters come out correctly.
Frequently asked questions
Byte to String Converter takes a list of decimal byte values (like "72 101"). This tool takes the same bytes expressed as raw binary bits instead (like "01001000 01100101") - same underlying byte-to-UTF-8 decoding, different input notation.
"€" encodes to the three bytes E2, 82, AC - as binary, three 8-bit groups. All three are decoded together through `TextDecoder`, which understands UTF-8's variable-width encoding, producing the single correct character rather than three separate garbled ones.
Any character other than 0 or 1, a total bit count that isn't a multiple of 8, and a valid byte sequence that isn't valid UTF-8 once assembled - each produces a specific error rather than a silent, incorrect result.