Chris Collins

Tools · encoding

Unicode inspector

See every character's code point, name, category, script, UTF-8 and UTF-16 bytes, and escapes; split text into graphemes; compare NFC/NFD/NFKC/NFKD; find and strip invisible, bidi, and look-alike characters; and search characters by name.

Added

How to use it

Characters

Type or paste text. The counts show graphemes (what a reader calls characters), code points, UTF-16 units (JavaScript’s length), and UTF-8 bytes. They often all differ.

The table lists each code point with its Unicode 15.1 name, general category, script, UTF-8 and UTF-16 encodings, and escapes for HTML, JavaScript, CSS, Python, and URLs. Invisible and format characters are shown as labelled boxes and highlighted. Names load from the Unicode Character Database on first use; everything else works offline. Type U+1F600, 0x41, or ☺ in the box below the text and click Insert to add characters by code point.

Graphemes, emoji, normalisation

Graphemes & emoji splits text the way the cursor moves (with Intl.Segmenter). Click a cluster to see its parts: skin-tone modifiers, ZWJ joins (👩🏽‍💻 is a woman, a tone, a joiner, and a laptop), flag regions, and keycaps.

Normalisation shows all four forms side by side and whether each differs from the input. Compare user input in NFC. Use NFKC when compatibility forms such as ligatures (fi), circled digits (①), and full-width letters should match their plain versions.

Invisible characters and homoglyphs

The Invisible & homoglyphs tab marks zero-width spaces and joiners, byte-order marks, soft hyphens, unusual spaces, variation selectors, tag characters, and bidirectional controls. The bidi controls are the "Trojan Source" trick, where code or a filename displays differently from how it is stored. Words that mix scripts, such as a Cyrillic а in paypal, are flagged along with the Latin text they imitate. The cleaned copy removes all of these but keeps emoji sequences intact.

Find a character searches names: all words must match, such as arrow right double. Click a result to append it to the text, or Shift-click to copy it.

Sharing

Share link copies a URL that opens this tool exactly as you have it. Hand-written links work too: ?text=… opens every tab on that text; on Find a character, ?q=… is the search. For example ?text=%F0%9F%91%A9%E2%80%8D%F0%9F%92%BB%20caf%C3%A9.

Runs entirely in your browser; nothing you type leaves this page.