Unicode Character Inspector
Break any text into its Unicode code points, bytes, and escape forms.
| Char | Code point | Dec | UTF-8 | UTF-16 | HTML | CSS | JS | Name / category |
|---|---|---|---|---|---|---|---|---|
| U+0063 | 99 | 63 | 0063 | c | \63 | \u0063 | Basic Latin letter | |
| U+0061 | 97 | 61 | 0061 | a | \61 | \u0061 | Basic Latin letter | |
| U+0066 | 102 | 66 | 0066 | f | \66 | \u0066 | Basic Latin letter | |
| U+00E9 | 233 | C3 A9 | 00E9 | é | \E9 | \u00E9 | Letter | |
| U+0020 | 32 | 20 | 0020 |   | \20 | \u0020 | SPACE | |
| U+1F1EC | 127468 | F0 9F 87 AC | D83C DDEC | 🇬 | \1F1EC | \u{1F1EC} | Emoji / symbol | |
| U+1F1E7 | 127463 | F0 9F 87 A7 | D83C DDE7 | 🇧 | \1F1E7 | \u{1F1E7} | Emoji / symbol | |
| U+0020 | 32 | 20 | 0020 |   | \20 | \u0020 | SPACE | |
| U+2713 | 10003 | E2 9C 93 | 2713 | ✓ | \2713 | \u2713 | Symbol | |
| U+0020 | 32 | 20 | 0020 |   | \20 | \u0020 | SPACE | |
| U+0061 | 97 | 61 | 0061 | a | \61 | \u0061 | Basic Latin letter | |
| U+200B | 8203 | E2 80 8B | 200B | ​ | \200B | \u200B | ZERO WIDTH SPACE | |
| U+0062 | 98 | 62 | 0062 | b | \62 | \u0062 | Basic Latin letter |
About Unicode Character Inspector
Paste any text and see it one character at a time: the code point in U+ notation, its decimal value, the UTF-8 and UTF-16 bytes, the HTML entity, the CSS escape, the JavaScript escape, and a plain name or category. Emoji, accented letters, and invisible characters like zero-width spaces all show up clearly. Useful for debugging encoding issues, spotting hidden characters, and getting the exact escape you need. Everything runs in your browser.
What it shows
For every character in your text the table lists the Unicode code point (U+XXXX), its decimal value, the bytes when encoded as UTF-8 and UTF-16, a numeric or named HTML entity, the CSS escape, and the JavaScript string escape. A short label names the character or describes its category. The summary at the top counts code points, UTF-16 units (JavaScript's string length), UTF-8 bytes, and how many characters are invisible.
Find hidden characters
Some characters take up no space but still break things: zero-width spaces, the byte-order mark, non-breaking spaces, soft hyphens, and bidirectional marks. Paste text that's behaving oddly and the inspector flags each invisible character with a dot and its proper name, so you can see exactly what's in the string.
Code points vs bytes vs length
These three numbers often disagree, and that trips people up. An emoji like 😀 is one code point but two UTF-16 units (a surrogate pair), so JavaScript reports its string length as 2. The same emoji is four bytes in UTF-8. Flags are even worse, built from two regional-indicator code points. The inspector spells all of this out so you can reason about lengths and storage correctly.