What Is a UnicodeUnicode
Standard universel d'encodage des caractères qui attribue un numéro unique à chaque caractère de tous les systèmes d'écriture et ensembles de symboles, y compris les emoji. Code Point?
Every emojiEmoji
Mot japonais (絵文字) signifiant 'caractère image' — petits symboles graphiques utilisés dans la communication numérique pour exprimer des idées, des émotions et des objets. is a character in the Unicode standard, and every Unicode character has a unique identifier called a code point — a number written in hexadecimal with the prefix U+. For example:
- 🔥 is
U+1F525(FIRE) - ❤️ is
U+2764 U+FE0F(HEAVY BLACK HEART + VARIATION SELECTOR-16) - 👩💻 is
U+1F469 U+200D U+1F4BB(WOMAN + ZWJJointure sans chasse (ZWJ)
Caractère Unicode invisible (U+200D) utilisé pour combiner plusieurs emoji en un seul emoji composite, comme l'assemblage de personnes et d'objets pour former des emoji de professions. + LAPTOP)
Knowing an emoji's code point lets you use it in HTML entities (🔥), in programming languages (\u{1F525} in JavaScript, "\U0001F525" in Python), and helps you understand how multi-component emoji are structured.
This guide shows every method for finding the code point of any emoji.
Method 1: EmojiFYI (Fastest)
EmojiFYI displays every emoji's Unicode code point directly on its detail page.
- Go to emojifyi.com and search for the emoji by name (e.g., "fire", "heart", "thumbs up")
- Click the emoji to open its detail page
- The code point(s) are listed in the Unicode section — for example:
U+1F525 - For complex sequences, all component code points are listed in order
You can also use EmojiFYI's Sequence Analyzer to paste any emoji and instantly see a breakdown of every code point in the sequence, including ZWJ characters, variation selectors, and skin tone modifiers.
Method 2: Browser Developer Tools
Any modern browser's developer console can extract code points from an emoji you paste in.
In Chrome, Firefox, Edge, or Safari
- Open DevTools (
F12orCtrl + Shift + I/Command + Option + I) - Go to the Console tab
- Paste this JavaScript and replace the emoji:
// Get all code points for an emoji
function getCodePoints(emoji) {
return [...emoji].map(char =>
"U+" + char.codePointAt(0).toString(16).toUpperCase().padStart(4, "0")
).join(" ")
}
getCodePoints("🔥") // "U+1F525"
getCodePoints("❤️") // "U+2764 U+FE0F"
getCodePoints("👩💻") // "U+1F469 U+200D U+1F4BB"
getCodePoints("👍🏽") // "U+1F44D U+1F3FD"
This handles the spread-based iteration which correctly separates surrogate pairs into their actual code points.
Using codePointAt Directly
const emoji = "🔥"
console.log(emoji.codePointAt(0).toString(16).toUpperCase()) // "1F525"
console.log("U+" + emoji.codePointAt(0).toString(16).toUpperCase()) // "U+1F525"
Method 3: Python
Python makes emoji code point inspection straightforward:
def get_code_points(emoji: str) -> list[str]:
return [f"U+{ord(char):04X}" for char in emoji]
# Examples
print(get_code_points("🔥")) # ['U+1F525']
print(get_code_points("❤️")) # ['U+2764', 'U+FE0F']
print(get_code_points("👩💻")) # ['U+1F469', 'U+200D', 'U+1F4BB']
print(get_code_points("👍🏽")) # ['U+1F44D', 'U+1F3FD']
Getting the Official Unicode Name
Python's unicodedata module can retrieve the official Unicode character name:
import unicodedata
def emoji_info(emoji: str) -> None:
for char in emoji:
code_point = f"U+{ord(char):04X}"
try:
name = unicodedata.name(char)
except ValueError:
name = "(no name — control/invisible character)"
print(f"{code_point}: {name}")
emoji_info("🔥")
# U+1F525: FIRE
emoji_info("👩💻")
# U+1F469: WOMAN
# U+200D: ZERO WIDTH JOINER
# U+1F4BB: PERSONAL COMPUTER
emoji_info("👍🏽")
# U+1F44D: THUMBS UP SIGN
# U+1F3FD: EMOJI MODIFIER FITZPATRICK TYPE-4
Method 4: The Unicode Character Database
The Unicode Consortium maintains the authoritative source for all emoji data.
emoji-test.txtemoji-test.txt
Le fichier officiel Unicode répertoriant toutes les séquences emoji avec leur statut de qualification, leurs points de code et leurs noms abrégés CLDR.
The file emoji-test.txt lists all standard emoji with their code points:
https://unicode.org/Public/emoji/latest/emoji-test.txt
Open this file and search for your emoji's name. Each line looks like:
1F525 ; fully-qualified # 🔥 E1.0 fire
1F469 200D 1F4BB ; fully-qualified # 👩💻 E4.0 woman technologist
1F44D 1F3FD ; fully-qualified # 👍🏽 E1.0 thumbs up: medium skin tone
The code points are listed in the first column, separated by spaces for multi-codepoint sequences.
Unicode Character Search
The Unicode Consortium also provides a web-based character search at:
https://www.unicode.org/cgi-bin/GetUnihanData.pl
And the broader character database at:
https://unicode.org/charts/
Method 5: macOS Character Viewer
On macOS, the built-in Character Viewer shows code points directly:
- Press
Control + Command + Spaceto open the Character Viewer - Click the emoji you want
- Click the info icon (ⓘ) at the top right of the viewer
- Expand the detail view — it shows the Unicode name and code point
For multi-codepoint sequences like ZWJ families, the Character Viewer may only show the base character's code point. Use the Sequence Analyzer or Python for complete multi-codepoint sequences.
Method 6: Windows Character Map
On Windows, the Character Map app (charmap.exe) shows code points:
- Press
Windows + R, typecharmap, press Enter - Set the font to Segoe UI Emoji
- Find your emoji
- The status bar at the bottom shows the Unicode code point when you click an emoji
For the Windows emoji picker (Windows + .), hovering over an emoji shows its name, but not the code point — use the browser console method for that.
Method 7: Linux unicode Command
On Linux, the unicode command-line tool looks up code points by character or name:
# Install on Debian/Ubuntu
sudo apt install unicode
# Look up by pasting the emoji character
unicode 🔥
# Output:
# U+1F525 FIRE
# UTF-8UTF-8
Encodage Unicode à largeur variable utilisant de 1 à 4 octets par caractère, dominant sur le web (utilisé par plus de 98 % des sites web).: f0 9f 94 a5 UTF-16BE: d83d dd25 Decimal: 🔥
# 🔥
Understanding What the Code Points Mean
Single Code Point Emojis
Most basic emojis are a single code point:
🔥 = U+1F525
😀 = U+1F600
🐍 = U+1F40D
Variation Selectors
Many emojis that look like symbols have two code points — the base character and a variation selector that forces emoji (color) rendering:
❤️ = U+2764 (HEAVY BLACK HEART) + U+FE0F (VARIATION SELECTOR-16)
☎️ = U+260E (BLACK TELEPHONE) + U+FE0F
✈️ = U+2708 (AIRPLANE) + U+FE0F
Without U+FE0F, these characters may render as monochrome text symbols. The variation selector ensures they display as color emoji.
Skin Tone Modifiers
Skin tone modifiers (Fitzpatrick scale) are appended to a base emoji:
👍 = U+1F44D (base thumbs up)
👍🏻 = U+1F44D + U+1F3FB (light skin tone)
👍🏼 = U+1F44D + U+1F3FC (medium-light skin tone)
👍🏽 = U+1F44D + U+1F3FD (medium skin tone)
👍🏾 = U+1F44D + U+1F3FE (medium-dark skin tone)
👍🏿 = U+1F44D + U+1F3FF (dark skin tone)
ZWJ Sequences
Zero Width Joiner (U+200D) joins multiple emojis into a single composed glyph:
👩💻 = U+1F469 (WOMAN) + U+200D (ZWJ) + U+1F4BB (LAPTOP)
❤️🔥 = U+2764 + U+FE0F + U+200D (ZWJ) + U+1F525 (FIRE)
🏳️🌈 = U+1F3F3 + U+FE0F + U+200D (ZWJ) + U+1F308 (RAINBOW)
Quick Reference: Methods by Use Case
| Goal | Best Method |
|---|---|
| Quick lookup in browser | EmojiFYI Sequence Analyzer |
| Code point for HTML use | EmojiFYI emoji detail page |
| Programmatic extraction (JavaScript) | codePointAt(0).toString(16) |
| Programmatic extraction (Python) | f"U+{ord(char):04X}" |
| Full sequence with names | Python unicodedata.name() |
| Authoritative reference | unicode.org/Public/emoji/latest/emoji-test.txt |
| macOS desktop | Character Viewer (Ctrl+Cmd+Space) |
| Linux command line | unicode CLI tool |
Explore More on EmojiFYI
- Use the Sequence Analyzer to paste any emoji and see all its code points instantly
- Browse emojis by category and copy their characters with the Emoji Keyboard
- Learn about variation selectors, ZWJ, and skin tone modifiers in the Glossary
- Search for any emoji by name or code point at EmojiFYI Search