Convert decimal numbers back into characters, treating them as Unicode code points or as raw UTF-8 bytes, with clear errors for surrogates and out-of-range values.
Show calculation steps
Processed privately in your browser — nothing you paste is uploaded, logged or stored.
Numbers back to characters
Each number is treated as one byte or one code point and turned back into a character. The distinction matters as soon as the numbers exceed 127, and it is the first thing to check when the output looks wrong.
Worked example
72 105 → "Hi" 233 → "é" read as a code point 195 169 → "é" read as UTF-8 bytes 195 169 → "é" read as two Latin-1 bytes
Separators
Numbers may be separated by spaces, commas or newlines, so a list copied from a spreadsheet, a log or an array literal all work without reformatting. Values above 255 are only meaningful in code-point mode and are reported rather than wrapped silently.
Where this is useful
Reading character codes out of a database column, decoding a numeric dump from an embedded device, and puzzle work — a run of numbers between 32 and 126 is almost certainly printable ASCII.
Limits
The tool decodes what you give it and does not guess the source encoding. If the result is mojibake, the numbers are usually right and the mode is wrong. Conversion is local to your browser.
How to use the Decimal to Text
- Paste the decimal numbers, separated by spaces or commas.
- Choose whether they are Unicode code points or raw UTF-8 byte values.
- Click "Convert to text".
Frequently asked questions
Which unit should I choose?
If the numbers came from HTML entities, a Unicode reference table or the Text to Decimal tool in its default mode, choose code points. If they came from a byte-level dump, a network capture or a file reader, choose bytes.
Why are some numbers rejected as surrogates?
The range 55296 to 57343 is reserved for UTF-16 encoding machinery and never represents a character on its own. A lone surrogate in your data means the text was split incorrectly somewhere upstream.