Binary to text: decode UTF-8 bytes

Convert eight-bit binary groups to text, encode Unicode back to bytes, and diagnose invalid UTF-8 without silently replacing characters.

Try the calculation or tool

Bytes need an encoding

The sequence 01001000 01101001 represents the UTF-8 bytes for “Hi”. Binary digits alone do not identify a character set. This converter explicitly uses UTF-8, accepts groups of exactly eight bits separated by whitespace, and rejects incomplete groups. It does not interpret a binary executable, an image file or an arbitrary stream as meaningful text.

Try a round trip

Enter a short phrase containing an accented letter or an emoji and choose Encode text. A visible character can occupy more than one byte: é uses C3 A9 in hexadecimal, while many emoji use four bytes. Copy the binary output into the input and choose Decode bytes. The result should preserve the original phrase. The input and conversion stay in the browser; a copy button reports whether the clipboard operation succeeded.

Understand an invalid sequence

A byte sequence can be valid binary but invalid UTF-8. For example, 11111111 is not a valid UTF-8 start byte. This page uses a fatal decoder so the failure is visible rather than replacing data with a question mark. If your source uses Windows-1252 or UTF-16, identify that encoding first and use a converter that supports it. Adding or deleting leading zeroes changes the byte boundaries.

Keep the representations separate

Binary bytes, hexadecimal, Base64 and URL encoding are different representations. Base64 normally encodes arbitrary bytes into a compact ASCII alphabet; URL escaping represents characters for particular URL components. Decoding one with the other produces misleading output. For diagnostic notes, record the original bytes and the claimed encoding alongside the decoded string so another person can reproduce the result.

Related tools

Sources and further reading