Unicode Inspector

Inspect the code points behind copied text, invisible spaces or confusing emoji. The report shows zero-based UTF-16 and UTF-8 offsets and bytes without normalizing or rewriting your input.

Paste the original text, inspect its characters, then review the table or download the JSON report.

Input: 1–10,000 UTF-16 units; at most 10,000 code points. JSON output: up to 1 MiB. Unpaired surrogates are rejected rather than silently replaced. The table shows 100 rows per page. There is no full Unicode-name database, spelling correction or normalization. Processing is cancelled after 5 minutes.

How to use

What does a Unicode inspector show?

Inspect the code points behind copied text, invisible spaces or confusing emoji. The report shows zero-based UTF-16 and UTF-8 offsets and bytes without normalizing or rewriting your input.

Step by step

  1. Paste the original text, inspect its characters, then review the table or download the JSON report.
  2. Read the code-point and byte columns when comparing strings. UTF-16 offsets count code units, not visible characters. Grapheme counts use your browser’s Intl.Segmenter and can vary with its Unicode version.
  3. Invisible characters are labelled in the table rather than allowed to rearrange its text. JSON retains each original character. Treat bidirectional controls carefully when copying the report.

Choosing the settings

OptionWhat changes
Unicode InspectorRead the code-point and byte columns when comparing strings. UTF-16 offsets count code units, not visible characters. Grapheme counts use your browser’s Intl.Segmenter and can vary with its Unicode version.
UTF-8 / UTF-16Invisible characters are labelled in the table rather than allowed to rearrange its text. JSON retains each original character. Treat bidirectional controls carefully when copying the report.

Example and expected result

A é 🇨🇳 followed by U+200B has 8 code points, 10 UTF-16 units, 19 UTF-8 bytes and 6 grapheme clusters in a current supporting browser. U+3000 is the wide space; U+0301 is the combining accent; U+200B is the final zero-width space.

If it is not working

  • Input: 1–10,000 UTF-16 units; at most 10,000 code points. JSON output: up to 1 MiB. Unpaired surrogates are rejected rather than silently replaced. The table shows 100 rows per page. There is no full Unicode-name database, spelling correction or normalization. Processing is cancelled after 5 minutes.
  • If inspection fails, shorten the text or update the browser. An unpaired UTF-16 surrogate has no exact UTF-8 encoding; fix it in the source. A large detailed report can hit the 1 MiB cap before reaching the input limit.

Formats and limits

Input: 1–10,000 UTF-16 units; at most 10,000 code points. JSON output: up to 1 MiB. Unpaired surrogates are rejected rather than silently replaced. The table shows 100 rows per page. There is no full Unicode-name database, spelling correction or normalization. Processing is cancelled after 5 minutes.

FAQ

What does this tool do?

Inspect the code points behind copied text, invisible spaces or confusing emoji. The report shows zero-based UTF-16 and UTF-8 offsets and bytes without normalizing or rewriting your input.

Which setting should I choose?

Read the code-point and byte columns when comparing strings. UTF-16 offsets count code units, not visible characters. Grapheme counts use your browser’s Intl.Segmenter and can vary with its Unicode version.

What are the limits?

Input: 1–10,000 UTF-16 units; at most 10,000 code points. JSON output: up to 1 MiB. Unpaired surrogates are rejected rather than silently replaced. The table shows 100 rows per page. There is no full Unicode-name database, spelling correction or normalization. Processing is cancelled after 5 minutes.

Why did processing fail?

If inspection fails, shorten the text or update the browser. An unpaired UTF-16 surrogate has no exact UTF-8 encoding; fix it in the source. A large detailed report can hit the 1 MiB cap before reaching the input limit.

Is my input uploaded or saved?

No. Processing runs on your device. Inputs and results stay in this page’s memory until you clear it or leave. They are not uploaded, logged or stored by ToolRobin. Copying places the result on your device’s clipboard.