Overview
Convert a space- or comma-separated list of decimal byte values, each 0-255, into readable text - or go the other way, turning text into its raw UTF-8 byte values. This is distinct from a code-point converter: for any character outside the plain ASCII range, its UTF-8 byte encoding is a different (and often longer) list of numbers than its single Unicode code point - for example "é" is code point 233, but is encoded as the two separate bytes 195 and 169 in UTF-8. Decoding runs the assembled byte array through `TextDecoder("utf-8")` rather than converting each byte to a character individually, which is what makes multi-byte sequences (accented letters, symbols, emoji) come out correctly instead of turning into mojibake. Each byte value is validated to be an integer from 0 to 255 before decoding. Useful for reconstructing text from a raw byte dump, debugging a serialization format, or understanding how UTF-8 actually encodes a given character. Runs entirely client-side.
Best for: Reconstructing readable text from a raw list of decimal byte values
How to use this tool
- Choose a direction. Bytes to text, or text to its raw decimal byte values.
- Enter your input. A space/comma-separated list of bytes (0-255 each), or plain text.
- Read the result instantly. The conversion updates live as you type, decoded through UTF-8 rules.
Frequently asked questions
The Text to ASCII Converter works with Unicode code points - one number per character, however large. This tool works with raw UTF-8 bytes, which for any non-ASCII character is a different, usually longer list of numbers (each 0-255) than its single code point - so the two tools solve genuinely different problems.
It's decoded correctly as long as all of its UTF-8 bytes are present and in order - the tool decodes the entire byte sequence through `TextDecoder`, which understands multi-byte UTF-8 encoding, rather than converting each byte to a character on its own (which would produce mojibake for anything outside plain ASCII).
Any token that isn't a whole number from 0 to 255, and any byte sequence that isn't valid UTF-8 once assembled (for example, an incomplete multi-byte sequence) - both produce a clear error rather than silently substituting replacement characters.