Skip to content
Hex Calculator

Hex to Unicode Converter

Look up which character a Unicode code point represents — the hex value here is the code point itself, not a UTF-8/16/32 byte encoding of it.

Character
😀 (U+1F600)

How to Read Hex as a Unicode Code Point

Every character in Unicode has a unique number called a code point, written as U+ followed by hex digits. Unlike converting hex to UTF-8 or UTF-16 — which decode a *byte sequence* using a specific encoding's rules — this page treats the hex value as the code point itself and looks up which character it identifies.

Common Mistakes With Unicode Code Points

  • Confusing a code point with its UTF-8 or UTF-16 byte encoding — they're related but not the same number.
  • Entering a value in the surrogate range (D800-DFFF), which isn't a valid standalone character.
  • Forgetting the U+10FFFF ceiling — Unicode doesn't define anything beyond it.

Frequently Asked Questions

What's the difference between a code point and an encoding?

A code point (like U+1F600) is Unicode's abstract identifier for a character — a number, nothing more. An encoding like UTF-8 or UTF-16 is a specific set of rules for representing that number as actual bytes. This page works with the code point directly.

Why does the hex value here look different from UTF-8 hex for the same character?

Because they're answering different questions. The code point 1F600 is what the character *is*; F09F9880 is how UTF-8 chooses to *store* it as 4 bytes. Same character, different representations.

What does the "U+" prefix mean?

It's the standard notation for writing a Unicode code point, always followed by the hex value — U+0041 is the letter A, U+1F600 is the grinning face emoji.

What's the highest valid code point?

U+10FFFF — Unicode reserves code points only up to that value, covering roughly 1.1 million possible characters, most of which are unassigned.

Why does entering D800-DFFF give an error?

That range is reserved for surrogate pairs — a UTF-16 encoding mechanism, not real standalone characters — so no valid character exists at those code points.

How do I get the actual UTF-8 or UTF-16 bytes for a character?

Use the Hex to UTF-8, Hex to UTF-16, or Hex to UTF-32 converters, which take the code point and apply that specific encoding's byte rules.