📖 How-To Guides

How to Find the Unicode Code Point for Any Emoji

What Is a Unicode Code Point?

Every emoji 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 + ZWJ零宽连接符(ZWJ) (ZWJ)
    一个不可见的Unicode字符(U+200D),用于将多个表情符号合并为单一复合表情符号,例如将人物与物体组合成职业表情符号。
    + 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.

  1. Go to emojifyi.com and search for the emoji by name (e.g., "fire", "heart", "thumbs up")
  2. Click the emoji to open its detail page
  3. The code point(s) are listed in the Unicode section — for example: U+1F525
  4. 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

  1. Open DevTools (F12 or Ctrl + Shift + I / Command + Option + I)
  2. Go to the Console tab
  3. 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
Unicode官方文件,列出所有表情符号序列及其限定状态、码位和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.

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:

  1. Press Control + Command + Space to open the Character Viewer
  2. Click the emoji you want
  3. Click the info icon (ⓘ) at the top right of the viewer
  4. 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:

  1. Press Windows + R, type charmap, press Enter
  2. Set the font to Segoe UI Emoji
  3. Find your emoji
  4. 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
每字符使用1至4个字节的可变长度Unicode编码方式,是互联网上最主流的编码,被98%以上的网站采用。
: 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

相关工具

⌨️ 表情符号键盘 表情符号键盘
按分类浏览并复制 3,953 个表情符号。适用于任何浏览器,无需安装。
🔍 序列分析器 序列分析器
将 ZWJ 序列、肤色修饰符、键帽序列和旗帜对解析为独立组成部分。

术语表词条

emoji-test.txt emoji-test.txt
Unicode官方文件,列出所有表情符号序列及其限定状态、码位和CLDR短名称。
Unicode标准 Unicode标准
由Unicode联盟维护的完整字符编码体系,定义字符、属性、算法和编码形式。
Unicode联盟 Unicode联盟
负责制定和维护Unicode标准的非营利组织,同时管理新表情符号的审批流程。
UTF-8 UTF-8
每字符使用1至4个字节的可变长度Unicode编码方式,是互联网上最主流的编码,被98%以上的网站采用。
变体选择符 (VS) 变体选择符 (VS)
用于控制字符以文本形式(单色)还是表情符号形式(彩色)显示的Unicode字符。VS-15(U+FE0E)指定文本样式,VS-16(U+FE0F)指定表情符号样式。
彩色表情符号 彩色表情符号
使用位图图像或彩色矢量图形渲染的全彩表情符号,与单色文本样式渲染相对。
码位 码位
Unicode标准中分配给每个字符的唯一数值,以U+XXXX格式表示(例如😀对应U+1F600)。
统一码 统一码
为所有书写系统和符号集(包括表情符号)中的每个字符分配唯一编号的通用字符编码标准。
表情符号(Emoji) 表情符号(Emoji)
来自日语「絵文字」(えもじ),意为「图画文字」,是用于数字通信中表达想法、情感和事物的小型图形符号。
零宽连接符(ZWJ) (ZWJ) 零宽连接符(ZWJ) (ZWJ)
一个不可见的Unicode字符(U+200D),用于将多个表情符号合并为单一复合表情符号,例如将人物与物体组合成职业表情符号。

相关故事