Unicode character lookup — name, code point, UTF-8 and escapes

Paste a character such as 😀, a code point such as U+1F600, a decimal number such as #128512, or a name such as snowman, and see everything you need to use that character in code.

Live demo · real result from this tool
Character😀
Code point
U+1F600
Name
GRINNING FACE
Category
Other symbol (So)
Script
Common
Block
Emoticons
Decimal
128512
UTF-8 bytes
F0 9F 98 80
UTF-16 units
D83D DE00
HTML
😀 / 😀
JavaScript
\uD83D\uDE00 or \u{1F600}
CSS
\1F600

Processed on your device — nothing is uploaded.

How to use the Unicode character lookup

  1. Type or paste into Character, code point or name. For example 😀, U+1F600, 1F600, #128512 or snowman.
  2. For one character you get a list: Character, Code point, Name, Category, Script, Block, Decimal, UTF-8 bytes, UTF-16 units, HTML, JavaScript and CSS.
  3. Paste a word or several codes and you get a table instead, one row per code point, which you can download as unicode.csv.
  4. A name search lists up to 40 matches from the built-in name table.

What it does and when to use it

Use it when a character is causing trouble or when you need to write it in code. Typical cases: a string looks empty but is not, a search fails because a “space” is really a no-break space, you need the CSS escape for an icon, or you want to know whether an emoji will fit in a byte-limited field.

Pasting a whole word shows how it is built. “नमस्ते” turns into six rows, including two non-spacing marks (category Mn), which explains why its length in code is 6 and not 3.

For whole strings rather than single characters, the Unicode encoder writes every character as an escape, and the Unicode decoder turns escapes back into text. To see raw bytes of a longer text, use the hex dump viewer.

How it works

The lookup runs entirely in your browser.

  • Category and script come from your browser’s built-in Unicode data, through regular expressions such as \p{gc=Lu} and \p{Script=Latin}. A script outside the 37 listed ones shows as Other.
  • Block comes from a built-in table of about 100 common blocks.
  • UTF-8 and UTF-16 are computed from the code point. Characters above U+FFFF use two UTF-16 units, a surrogate pair.
  • HTML shows the named entity when one exists, plus the decimal reference; otherwise decimal and hex references.

Worked examples

U+1F600  →  Name: GRINNING FACE · Block: Emoticons · UTF-8 bytes: F0 9F 98 80
            UTF-16 units: D83D DE00 · JavaScript: \uD83D\uDE00  or  \u{1F600}
é        →  Name: LATIN SMALL LETTER E WITH ACUTE · Category: Lowercase letter (Ll)
            UTF-8 bytes: C3 A9 · HTML: é / é
#8364    →  Name: EURO SIGN · UTF-8 bytes: E2 82 AC · HTML: € / €
arrow    →  ← U+2190, ↑ U+2191, → U+2192, ↓ U+2193 (from the name table)

Limits and tips

  • One to three plain digits are read as decimal, so 65 is “A”. Four to six digits are read as hex, so 1234 is U+1234. Add # for decimal or U+ for hex to be sure.
  • A pasted string is limited to its first 200 characters.
  • Name search covers the built-in table only. If a name finds nothing, paste the character itself.

Frequently asked questions

What can I type in the box?
The character itself, a code point written as U+20AC, 20AC, 0x20AC, \u20AC or €, a decimal number with # or &# in front (#8364), or an English name such as euro or snowman. Several code points separated by spaces or commas are listed in a table.
Why does "face" show a Chinese character?
Four to six characters that are all hex digits are read as a code point, and FACE is valid hex, so you get U+FACE. The same happens with words like cafe or bead. Use a longer description, or paste the character itself.
Why does it say the name is not in the built-in table?
Names come from a table built into the page, covering ASCII, Latin-1, accented Latin letters, basic Greek and Cyrillic, regional indicator letters and a set of common symbols and emoji. The full Unicode name list is about 1.9 MB, so it is not loaded. Every other field is still correct for any character.
How many bytes does a character take?
Look at UTF-8 bytes. ASCII letters take 1 byte, é takes 2, € and most Indian and East Asian scripts take 3, and most emoji take 4. That matters for database column limits and for tools that count bytes rather than characters.
Why does a flag show up as two characters?
A flag emoji is two regional indicator letters. 🇮🇳 is the letters I and N, U+1F1EE and U+1F1F3. The tool lists each code point separately, which shows how the emoji is really built.

Sources

  1. Unicode Character Code Charts — Unicode Consortium, accessed 2026-10-08

Written by the ToolsRift team · Last updated

Pages are drafted with AI assistance and checked by automated tests. How we write and check pages.

Was this tool useful?

Report a problem

Start typing to search every tool.

↑ ↓ to moveEnter to openEsc to close