ASCII is not Unicode
ASCII contains 128 values. Characters such as é, € and emoji have no ASCII code. This tool makes that boundary explicit instead of returning misleading numbers.
Turn text into strict ASCII codes or real encoded bytes without pretending Unicode is ASCII. Inspect every character, choose decimal/hex/binary/octal output, audit invisible characters, process batches locally, and use output only after an exact round-trip check.
ASCII is only 0–127. If a character cannot be represented, strict ASCII mode blocks the conversion instead of silently replacing or truncating it. Choose UTF-8 for modern text or a legacy code page only when you know the original encoding.
Ready. Ctrl/Cmd + Enter converts.
Each Unicode scalar is shown with its code point, ASCII value when applicable, UTF-8 bytes, and bytes in the currently selected encoding.
| # | Character | Unicode | ASCII | UTF-8 | Selected bytes | Note |
|---|
Choose multiple UTF-8 text files. Every representable file is converted locally with your current settings and packaged into a ZIP. Files that cannot be represented are skipped with an explicit reason.
No files selected.
ASCII contains 128 values. Characters such as é, € and emoji have no ASCII code. This tool makes that boundary explicit instead of returning misleading numbers.
UTF-8 and UTF-16 can encode one character as multiple bytes. The converter outputs the actual bytes for the selected encoding, while the Inspector separately shows Unicode code points.
Windows-1252, ISO-8859-1 and IBM CP437 disagree above byte 127. Select them only for legacy data interchange, reverse engineering, imports or compatibility work.
Bidi controls, zero-width characters and ordinary control characters can be difficult to see but important for source code and data safety. The audit surfaces them before export.
The generated byte sequence is parsed back, decoded with the same encoding, and compared to the original text. Copy and Download remain blocked on any mismatch.
A BOM can be added for UTF-8 or UTF-16 when a downstream system expects one. It is intentionally off by default because many modern UTF-8 workflows do not need it.