Unicode Text Inspector
See every code point in a piece of text with its encodings, and spot invisible or look-alike characters.
Runs in your browser Your input never leaves your device.
| Char | Code point | Category | UTF-8 | UTF-16 | HTML | JS | CSS | Notes |
|---|
Shows every code point with its encodings and flags invisible, direction-changing and look-alike characters that can hide in names, links or code. Nothing is uploaded. Category names come from your browser's Unicode data.
Report a problem with this tool
About this tool
Paste any text and the tool lists every character with its Unicode code point (U+1F600), general category, UTF-8 and UTF-16 bytes, and its HTML, JavaScript and CSS escapes. Totals show characters, visible characters (a family emoji is five code points but one visible character), UTF-8 bytes and UTF-16 units. It flags characters that cannot be seen or that change how text displays: zero-width spaces and joiners, the byte order mark, soft hyphens, no-break and other unusual spaces, bidirectional control characters that can make text appear in a different order, invisible tag characters, variation selectors, control characters, lone surrogates and the replacement character that marks damaged text. It also warns when one word mixes look-alike alphabets, such as a Cyrillic а inside a Latin word. One button removes invisible characters (optionally keeping the joiners that emoji need), and you can export the text as a JavaScript, JSON, Python, HTML, CSS or URL-encoded escape sequence, or as UTF-8 bytes. Category names come from your browser's Unicode data. Everything runs in your browser.
How to use it
- Paste or type the text.
- Read the totals and any yellow alerts about hidden or look-alike characters.
- Scroll the table for the details of each character.
- Press Remove invisible characters to clean the text, or pick an escape style to copy.
Common problems
- The count differs from my editor
- Editors count UTF-16 units, code points or visible characters. All three are shown, so you can see which one your tool uses.
- Removing invisible characters broke an emoji
- Leave keep emoji joiners ticked so the zero-width joiners and variation selectors that build emoji are kept.
- A word looks normal but is flagged
- It mixes letters from two alphabets, such as Latin and Cyrillic. They can look identical, so check the characters in the table.