AI Tools Free

Unicode Character Lookup

Enter any character string or U+XXXX hex code point in the Unicode Character Lookup below to inspect its scalar code point, decimal value, UTF-8 byte sequence, UTF-16 code units, HTML entity, and Unicode block/plane.

Free to useNo sign-upRuns in your browser
Enter your details

Enter the inputs, then select Inspect Characters.

Enter up to 64 characters or space-separated U+XXXX hex values.

Choose whether to inspect the literal characters typed or parse hex code point numbers.

Your result
Enter your details

Result will appear here

How Unicode Character Lookup works

The Unicode Character Lookup iterates over your input by Unicode code point (not 16-bit code units), encodes each scalar value into UTF-8 bytes and UTF-16 units, and classifies its general block and plane.

Scalar range: U+0000..U+10FFFF (excluding UTF-16 surrogates U+D800..U+DFFF); UTF-8 length: 1..4 bytes.

For every character inspected, the tool generates CSS escape syntax (\XXXXXX), JavaScript escape syntax (\uXXXX or \u{XXXXX}), and HTML hex/decimal numeric character references.

Unicode Character Lookup workflow overview
Workflow overview for Unicode Character Lookup.

Unicode Character Lookup Quick Reference & Input Guide

Review the input parameters, allowed value ranges, and worked reference cases for the Unicode Character Lookup below before running your calculation.

Parameter / ScenarioDefault / Sample ValueRule or Allowed RangeOutput / Usage Note
Input: Character string or code point(s)A€🚀Enter up to 64 characters or space-separated U+XXXX hex values.Required workspace parameter
Input: Input interpretation modetextOptions: Literal text characters (inspect each code point), Hex code points (e.g. U+0041, 0x20AC, 1F680)Required workspace parameter
Worked Case 1: Default 3-character sample ('A€🚀')Preloaded / test valuesCode point cp in [0, 0x10FFFF]; UTF-8 = TextEncoder().encode(char); UTF-16 = surrogate pair if cp > 0xFFFF else single 16-bit unit'A' is U+0041 (decimal 65, 1 UTF-8 byte: 41, BMP). '€' is U+20AC (decimal 8364, 3 UTF-8 bytes: E2 82 AC, BMP). '🚀' is U+1F680 (decimal 128640, 4 UTF-8 bytes: F0 9F 9A 80, UTF-16 surrogate pair D83D DE80). Total: 3 code points, 8 UTF-8 bytes, 4 UTF-16 units.
Worked Case 2: Debugging invisible characters and non-breaking spacesPreloaded / test valuesCode point cp in [0, 0x10FFFF]; UTF-8 = TextEncoder().encode(char); UTF-16 = surrogate pair if cp > 0xFFFF else single 16-bit unitPasting a string containing a non-breaking space reveals U+00A0 (UTF-8: C2 A0) instead of a standard ASCII space U+0020 (UTF-8: 20).

How to use Unicode Character Lookup step by step

Paste a mysterious symbol, invisible whitespace character, or hex code point to inspect its exact byte representation.

Paste characters or hex code points

Enter up to 64 characters (such as 'A€🚀') or space-separated hex values (such as 'U+0041 U+20AC U+1F680').

Unicode Character Lookup step 1: Paste characters or hex code points
Step 1 workflow overview for Unicode Character Lookup.

Choose Literal text or Hex code point mode

Select Literal text mode to inspect typed characters, or Hex code points mode to resolve numeric code points into characters.

Unicode Character Lookup step 2: Choose Literal text or Hex code point mode
Step 2 workflow overview for Unicode Character Lookup.

Inspect UTF-8 bytes, UTF-16 units, and entities

Click Inspect Characters to see total code points, UTF-8 byte count, UTF-16 length, and a per-character table you can copy or download.

Unicode Character Lookup step 3: Inspect UTF-8 bytes, UTF-16 units, and entities
Step 3 workflow overview for Unicode Character Lookup.

Worked examples for Unicode Character Lookup

Compare 1-byte ASCII, 3-byte BMP symbols, and 4-byte astral emoji in a single lookup.

Default 3-character sample ('A€🚀')

'A' is U+0041 (decimal 65, 1 UTF-8 byte: 41, BMP). '€' is U+20AC (decimal 8364, 3 UTF-8 bytes: E2 82 AC, BMP). '🚀' is U+1F680 (decimal 128640, 4 UTF-8 bytes: F0 9F 9A 80, UTF-16 surrogate pair D83D DE80). Total: 3 code points, 8 UTF-8 bytes, 4 UTF-16 units.

Unicode Character Lookup example 1: Default 3-character sample ('A€🚀')
Worked example 1 for Unicode Character Lookup.

Debugging invisible characters and non-breaking spaces

Pasting a string containing a non-breaking space reveals U+00A0 (UTF-8: C2 A0) instead of a standard ASCII space U+0020 (UTF-8: 20).

Unicode Character Lookup example 2: Debugging invisible characters and non-breaking spaces
Worked example 2 for Unicode Character Lookup.

Reverse lookup from hex code points

Switching to Hex mode and entering 'U+03A9 U+221E' resolves the Greek letter Omega (Ω, decimal 937) and the Infinity symbol (∞, decimal 8734).

Unicode Character Lookup example 3: Reverse lookup from hex code points
Worked example 3 for Unicode Character Lookup.

How to interpret the Unicode Character Lookup output

Compare code point count against UTF-8 byte length and UTF-16 code unit count when debugging database or API limits.

A VARCHAR(10) column measured in bytes will reject three 4-byte emoji (12 bytes total), and JavaScript's String.prototype.length will report 6 for those same three emoji because each uses a 2-unit UTF-16 surrogate pair. Checking all three counts side by side prevents truncation bugs.

How to interpret Unicode Character Lookup results
Result interpretation guide for Unicode Character Lookup.

Input limits, assumptions, and related tools

Check surrogate range restrictions and maximum input length when inspecting text.

In Hex mode, code points must fall between 0x0 and 0x10FFFF and cannot be isolated UTF-16 surrogate code units (0xD800 to 0xDFFF). To keep the breakdown table readable, literal text mode inspects up to 64 code points at a time.

Scope limits and assumptions for Unicode Character Lookup
Assumptions and input boundaries for Unicode Character Lookup.

Unicode Character Lookup: common questions

Answers about using Unicode Character Lookup and understanding its results.

What is the difference between a Unicode code point and UTF-8 bytes?

A Unicode code point is an abstract integer assigned to a character (such as U+20AC for the Euro sign, decimal 8364). UTF-8 is a variable-width byte encoding that represents U+20AC in memory using three bytes: E2 82 AC.

Why does a single emoji show 1 code point but 2 UTF-16 code units (JavaScript .length = 2)?

Characters above U+FFFF (in the supplementary astral planes, like U+1F680 Rocket) require a UTF-16 surrogate pair (0xD83D 0xDE80). JavaScript strings count 16-bit UTF-16 units, so '🚀'.length is 2 even though it is 1 Unicode scalar value.

How can I look up a character if I only know its U+XXXX hex code?

Switch Input interpretation mode to 'Hex code points' and enter values like 'U+0041 U+20AC U+1F680' or '00E9'. The tool converts each hex value within 0..10FFFF into its character and encoding table.

How are Unicode planes classified?

Code points U+0000 to U+FFFF belong to Plane 0 (Basic Multilingual Plane, BMP), where each character uses 1 to 3 UTF-8 bytes and 1 UTF-16 unit. Code points U+10000 to U+10FFFF belong to supplementary planes (Planes 1-16) and always use 4 UTF-8 bytes and 2 UTF-16 surrogate units.

Try your own values

Choose another tool for your next calculation, conversion, or text task.

Inspect Characters