Skip to content
Text

Unicode Inspector

Inspect every character: code point, name, UTF-8 bytes, category.

unicodecharactercodepointutf8inspect
Loading tool…

About the Unicode Inspector

Unicode Inspector breaks any text down so every single character can be examined on its own. Type into the single-line Text field and the Character breakdown table repopulates live, with one row per code point numbered from zero. For each character the table lists the printable Char, its Code point in hexadecimal form, a Name, a Category badge, and the exact byte representations used by UTF-8 and UTF-16. ASCII characters receive their full official Unicode names such as LATIN CAPITAL LETTER A, while everything else is labelled with its code point, because the complete Unicode name database is not bundled client-side. Control characters like tabs and line feeds are rendered as escapes such as and , and spaces appear as visible markers. The stat grid totals Code points, UTF-8 bytes, UTF-16 units, and Letters, with a second row counting every category. For performance, only the first 512 characters are rendered in the table, and a note appears when longer text is truncated. The bundled sample, Hello, 世界! 🌍, demonstrates ASCII, CJK, and an emoji in one go.

Hand-written guide

Examples

Input
Hello, 世界! 🌍
Output
11 code points - 20 UTF-8 bytes - 14 UTF-16 units - 7 Letters
H   U+0048  LATIN CAPITAL LETTER H       Letter  48         0048
世  U+4E16  Code point U+4E16             Letter  E4 B8 96   4E16
🌍  U+1F30D Code point U+1F30D            Symbol  F0 9F 8C 8D D83C DF0D
Note: The default sample spans ASCII, CJK, and an emoji; the globe takes four UTF-8 bytes but is still a single code point.
Input
a	b
Output
4 code points - 4 UTF-8 bytes - 4 UTF-16 units - 2 Letters - 2 Control
a   U+0061  LATIN SMALL LETTER A    Letter   61      0061
	  U+0009  CHARACTER TABULATION    Control  09      0009
b   U+0062  LATIN SMALL LETTER B    Letter   62      0062

  U+000A  LINE FEED               Control  0A      000A
Note: Control characters display as and escapes instead of invisible bytes, and the category tiles count two Control rows.
Input
café
Output
4 code points - 5 UTF-8 bytes - 4 UTF-16 units - 4 Letters
c  U+0063  LATIN SMALL LETTER C             Letter  63      0063
é  U+00E9  Code point U+00E9                 Letter  C3 A9   00E9
Note: The precomposed é expands to two UTF-8 bytes, C3 A9, while remaining one code point and one UTF-16 unit.

How to use

  1. 1

    Type or paste text into the single-line Text field; the default mixed-script sample loads automatically.

  2. 2

    Scan the stat tiles for Code points, UTF-8 bytes, UTF-16 units, and the Letters count.

  3. 3

    Review the Character breakdown table for each character's Code point, Name, and Category badge.

  4. 4

    Compare the UTF-8 bytes and UTF-16 units columns to understand how each encoding represents the character.

  5. 5

    Watch for the 512-character truncation note and shorten the input if only part of the table renders.

Common use cases

  • Checking whether pasted content hides tabs or line feeds before cleanup.
  • Confirming that an emoji in an interface is the code point you expect.
  • Diagnosing mojibake by comparing UTF-8 byte sequences of two visually identical strings.
  • Auditing a string for control characters that break JSON or CSV exports.
  • Teaching how UTF-8 and UTF-16 encode the same character differently.
  • Verifying the byte size of a user-generated field before setting database limits.

Best practices

  • Inspect scraped or imported text for hidden Control characters before it lands in production strings.
  • Verify emoji and CJK through the table, since invisible encoding issues are the hardest to reproduce later.
  • Check the UTF-8 bytes column when configuring databases, because storage limits depend on bytes, not characters.
  • Use the UTF-16 units column to reason about JavaScript string length, which counts code units rather than characters.
  • Keep inputs under 512 code points when you need the complete table, watching for the truncation note.

Tips

  • Paste a snippet with mixed scripts to quickly compare how many bytes each encoding needs.
  • Hunt for invisible Control characters in scraped text by scanning the Category column for the red badge.
  • Verify a copy-pasted emoji really is the character you expect by reading its U+ code point.
  • Compare UTF-16 units of two samples when debugging surrogate-pair issues in JavaScript string handling.

Frequently asked questions

The full Unicode name database is too large to ship client-side, so the tool includes only the official names for ASCII code points 0 to 127. Any other character is labelled Code point U+XXXX with its code point, which still uniquely identifies the character.

Explore more text tools

Browse the full collection of text tools on the hub, or jump back to all categories.

Related tools