📖 How-To Guides

How to Find the Unicode Code Point for Any Emoji

What Is a UnicodeUnicode
Tiêu chuẩn mã hóa ký tự phổ quát gán một số duy nhất cho mỗi ký tự trong tất cả hệ thống chữ viết và bộ ký hiệu, bao gồm cả emoji.
Code Point?

Every emojiEmoji
Từ tiếng Nhật (絵文字) có nghĩa là 'ký tự hình ảnh' — các ký hiệu đồ họa nhỏ dùng trong giao tiếp kỹ thuật số để diễn đạt ý tưởng, cảm xúc và sự vật.
is a character in the Unicode standardUnicode Standard
Hệ thống mã hóa ký tự đầy đủ do Unicode Consortium duy trì, định nghĩa các ký tự, thuộc tính, thuật toán và dạng mã hóa.
, 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 + 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 JOINERZero Width Joiner (ZWJ)
Ký tự Unicode vô hình (U+200D) dùng để ghép nhiều emoji thành một emoji tổng hợp, chẳng hạn kết hợp người và vật thể thành emoji nghề nghiệp.
# 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 ConsortiumUnicode Consortium
Tổ chức phi lợi nhuận phát triển và duy trì Tiêu chuẩn Unicode, bao gồm quy trình thêm emoji mới.
maintains the authoritative source for all emoji data.

emoji-test.txtemoji-test.txt
Tệp Unicode chính thức liệt kê tất cả chuỗi emoji cùng trạng thái đủ điều kiện, điểm mã và tên ngắn CLDR của chúng.

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
Kiểu mã hóa Unicode có chiều rộng thay đổi, dùng từ 1 đến 4 byte cho mỗi ký tự, thống trị trên web (98%+ website sử dụng).
: 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 selectorVariation Selector (VS)
Các ký tự Unicode (VS-15 U+FE0E và VS-16 U+FE0F) xác định xem một ký tự được hiển thị dưới dạng văn bản (đơn sắc) hay emoji (có màu).
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 emojiColor Emoji
Emoji đầy màu sắc được hiển thị bằng hình ảnh bitmap hoặc đồ họa vector màu, trái ngược với cách hiển thị đơn sắc kiểu văn bản.
.

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

Công cụ liên quan

⌨️ Bàn phím Emoji Bàn phím Emoji
Duyệt và sao chép bất kỳ emoji nào trong số 3.953 emoji được sắp xếp theo danh mục. Hoạt động trên mọi trình duyệt, không cần cài đặt.
🔍 Trình phân tích chuỗi Trình phân tích chuỗi
Giải mã chuỗi ZWJ, modifier tông màu da, chuỗi phím và cặp cờ thành các thành phần riêng lẻ.

Thuật ngữ

Color Emoji Color Emoji
Emoji đầy màu sắc được hiển thị bằng hình ảnh bitmap hoặc đồ họa vector màu, trái ngược với cách hiển thị đơn sắc kiểu văn bản.
Điểm mã Điểm mã
Giá trị số duy nhất được gán cho mỗi ký tự trong tiêu chuẩn Unicode, được viết theo định dạng U+XXXX (ví dụ: U+1F600 cho 😀).
Emoji Emoji
Từ tiếng Nhật (絵文字) có nghĩa là 'ký tự hình ảnh' — các ký hiệu đồ họa nhỏ dùng trong giao tiếp kỹ thuật số để diễn đạt ý tưởng, …
emoji-test.txt emoji-test.txt
Tệp Unicode chính thức liệt kê tất cả chuỗi emoji cùng trạng thái đủ điều kiện, điểm mã và tên ngắn CLDR của chúng.
Unicode Unicode
Tiêu chuẩn mã hóa ký tự phổ quát gán một số duy nhất cho mỗi ký tự trong tất cả hệ thống chữ viết và bộ ký hiệu, bao gồm …
Unicode Consortium Unicode Consortium
Tổ chức phi lợi nhuận phát triển và duy trì Tiêu chuẩn Unicode, bao gồm quy trình thêm emoji mới.
Unicode Standard Unicode Standard
Hệ thống mã hóa ký tự đầy đủ do Unicode Consortium duy trì, định nghĩa các ký tự, thuộc tính, thuật toán và dạng mã hóa.
UTF-8 UTF-8
Kiểu mã hóa Unicode có chiều rộng thay đổi, dùng từ 1 đến 4 byte cho mỗi ký tự, thống trị trên web (98%+ website sử dụng).
Variation Selector (VS) Variation Selector (VS)
Các ký tự Unicode (VS-15 U+FE0E và VS-16 U+FE0F) xác định xem một ký tự được hiển thị dưới dạng văn bản (đơn sắc) hay emoji (có màu).
Zero Width Joiner (ZWJ) Zero Width Joiner (ZWJ)
Ký tự Unicode vô hình (U+200D) dùng để ghép nhiều emoji thành một emoji tổng hợp, chẳng hạn kết hợp người và vật thể thành emoji nghề nghiệp.

Bài viết liên quan