Orpheus

Binary and Text Converter

Both directions, UTF-8 aware.

Options
Direction
Show bytes as
Space between bytes
Result

Everything is processed in this tab. Nothing you paste is sent anywhere.

Every tool runs entirely in your browser. Your files are never uploaded to a server.

Each character is stored as one or more bytes, and each byte as eight bits. "A" is 01000001 — decimal 65 — while an accented letter or emoji takes two to four bytes in UTF-8.

How to use Binary to Text Converter

  1. Choose a direction. Text to binary, or binary back to text.
  2. Paste your input. Binary can be spaced or run together in multiples of eight bits.
  3. Pick a base. Binary, hexadecimal or decimal, whichever your source uses.

About converting between binary and text

Text becomes binary in two steps that are easy to conflate. First a character is mapped to a number by a character set, then that number is stored as one or more bytes by an encoding. For the first 128 characters — the ASCII range — the two steps collapse into one byte and the distinction never surfaces, which is why so much software written in English worked for decades while being subtly wrong about everything else. UTF-8 is what makes the distinction visible. It is a variable-width encoding: ASCII characters occupy one byte and are bit-for-bit identical to what ASCII would produce, while other characters take two, three or four. That design is the reason it won. Existing ASCII files were already valid UTF-8, so adoption cost nothing, and the multi-byte sequences are self-synchronising — a decoder that starts mid-stream can find the next character boundary without reading from the beginning. The practical consequence is that character count and byte count are different numbers, and neither is quite what people mean by length. A single visible symbol can be several code points, as with a flag emoji or an accented letter written as a base letter plus a combining mark, and each of those is several bytes again. Any code that assumes one character is one byte will corrupt text the first time it encounters an accent, which is why decoding here goes through a proper UTF-8 decoder rather than mapping bytes to characters directly.

Frequently asked questions

Why is my character more than eight bits?
Because UTF-8 is variable width. ASCII characters take one byte, most accented Latin and Greek take two, most CJK take three, and emoji take four. Only the first 128 characters fit in a single byte.
What is the difference between characters and bytes?
One character can be several bytes, and some visible characters are several code points. A flag emoji is two code points and eight bytes while appearing as one symbol, which is why string length in code is so often surprising.
Can I paste binary without spaces?
Yes, as long as the total is a multiple of eight bits — it is split into bytes automatically. Spaced input is also accepted, and commas work as separators.
Is binary the same as Base64?
No. This shows the raw bits of each byte. Base64 re-encodes bytes into 64 printable characters to survive transmission through systems that mangle raw binary, and it makes data about a third larger rather than eight times.
Why does my decoded text look like gibberish?
Usually because the bytes are not UTF-8 — they may be Latin-1, UTF-16, or not text at all. Decoding is only meaningful if the byte sequence was produced by the encoding you are decoding with.

Last updated