Up to the first 1,000 characters are listed. Hidden characters, such as zero-width spaces, are highlighted.

Result

Paste text to inspect each character.

How to use this tool

  • Paste text. Each character is listed with its code point, type, script and encodings.
  • Hidden characters — such as zero-width spaces, byte order marks and direction controls — are shown as [U+200B] and counted.
  • Select Remove hidden characters to clean the text.

How it works

Unicode gives every character a code point, written U+ followed by hex digits. UTF-8 stores it in 1 to 4 bytes; UTF-16 in one or two 16-bit units (a surrogate pair for emoji and other characters above U+FFFF). The character count you see can differ from the code point count: an accented letter may be a base letter plus a combining mark, and many emoji are several code points joined together.

Example

An emoji

😀 is U+1F600: UTF-8 bytes F0 9F 98 80, UTF-16 units D83D DE00, HTML 😀, JavaScript \u{1F600}.

Privacy and limitations

  • Everything runs in your browser; nothing you enter is uploaded or stored.
  • Character names are shown for common invisible and special characters only.
  • The first 1,000 characters are listed; totals cover all of the text.

Frequently asked questions

Why does my code break on text that looks fine?

Copying from documents, chats or websites can bring in invisible characters such as zero-width spaces or no-break spaces. This tool shows and removes them.

Why is the length different in JavaScript?

JavaScript’s .length counts UTF-16 units, so an emoji counts as 2. The tool shows code points, UTF-16 units and visible characters separately.