Developer & Educator Unicode Engine

Emoji & Unicode Code Inspector

Inspect every code point, ZWJ sequence component, UTF-8 byte array, and UTF-16 surrogate pair for any emoji. Copy ready-to-use code snippets in 18 programming languages.

โšก Live Unicode 16.0 Parsing
๐Ÿ”— ZWJ Tree Breakdown
๐Ÿ’ป 18 Code Export Formats
๐Ÿ”ฌ

Emoji & Unicode Input

Paste any emoji, ZWJ sequence, flag, or string to inspect every code point.

Live Unicode 16.0 Parser
Try Presets:
Grapheme #1
๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ

UNICODE CHARACTER U+1F468 + ZERO WIDTH JOINER (ZWJ) + UNICODE CHARACTER U+1F469 + ZERO WIDTH JOINER (ZWJ) + UNICODE CHARACTER U+1F467 + ZERO WIDTH JOINER (ZWJ) + UNICODE CHARACTER U+1F466

Technical Analysis

UTF-8 Byte Length

25 Bytes

👨‍👩‍👧‍👦

UTF-16 Code Units

11 Units

\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66

Code Points Count

7 Points

Grapheme Clusters

1 Cluster

ZWJ Composite Sequence:Yes (Zero Width Joiner)
Skin Tone Modifier:No
Variation Selector:No

Sequence Breakdown (7 Code Points)

Left-to-Right Composition Flow
U+1F468base

UNICODE CHARACTER U+1F468

Base emoji code point symbol.

โ†’
U+200Dzwj

ZERO WIDTH JOINER (ZWJ)

Binds adjacent emojis into a single combined composite sequence.

โ†’
U+1F469base

UNICODE CHARACTER U+1F469

Base emoji code point symbol.

โ†’
U+200Dzwj

ZERO WIDTH JOINER (ZWJ)

Binds adjacent emojis into a single combined composite sequence.

โ†’
U+1F467base

UNICODE CHARACTER U+1F467

Base emoji code point symbol.

โ†’
U+200Dzwj

ZERO WIDTH JOINER (ZWJ)

Binds adjacent emojis into a single combined composite sequence.

โ†’
U+1F466base

UNICODE CHARACTER U+1F466

Base emoji code point symbol.

Developer Encodings & Code Snippets (18 Formats)

1-Click Copy Ready
HTML Decimal Entityhtml

👨‍👩‍👧‍👦

HTML Hex Entityhtml

👨‍👩‍👧‍👦

JavaScript / TypeScriptjs

\u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}\u{200D}\u{1F466}

React / JSX Stringjsx

{'\u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}\u{200D}\u{1F466}'}

CSS Escape Sequencecss

\01F468 \00200D \01F469 \00200D \01F467 \00200D \01F466

JSON Escapedjson

\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66

Python Stringpython

\U0001F468\U0000200D\U0001F469\U0000200D\U0001F467\U0000200D\U0001F466

Swift Stringswift

\u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}\u{200D}\u{1F466}

Kotlin Stringkotlin

\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66

Java Stringjava

\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66

Rust Stringrust

\u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}\u{200D}\u{1F466}

Go Stringgo

\U0001F468\U0000200D\U0001F469\U0000200D\U0001F467\U0000200D\U0001F466

C# Stringcsharp

\uD83D\uDC68\u200D\uD83D\uDC69\u200D\uD83D\uDC67\u200D\uD83D\uDC66

PHP Stringphp

\u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}\u{200D}\u{1F466}

Ruby Stringruby

\u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}\u{200D}\u{1F466}

SQL Query Stringsql

N'๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ' /* or UNHEX('f09f91a8e2808df09f91a9e2808df09f91a7e2808df09f91a6') */

Unicode Hex Listunicode

U+1F468, U+200D, U+1F469, U+200D, U+1F467, U+200D, U+1F466

Decimal Code Pointsdec

128104, 8205, 128105, 8205, 128103, 8205, 128102

Understanding Unicode & Emoji Technical Specs

A developer and student reference guide to how emojis are encoded, joined, and rendered.

๐Ÿ”ข

What is a Code Point?

In Unicode, every character or symbol is assigned a unique numerical value called a Code Point, formatted as U+XXXX (e.g. ๐Ÿ”ฅ is U+1F525).

๐Ÿ”—

Zero Width Joiners (ZWJ)

A Zero Width Joiner (U+200D) binds multiple emojis together. For instance, ๐Ÿ‘จ + ZWJ + ๐Ÿ’ป = ๐Ÿ‘จโ€๐Ÿ’ป (Man Technologist).

๐ŸŽจ

Variation Selectors (VS16)

U+FE0F forces a character to display as a full-color emoji rather than a plain text symbol (e.g. โค + VS16 = โค๏ธ).

Frequently asked questions

What is an Emoji Code Inspector?
An Emoji Code Inspector breaks down any emoji or sequence into its exact Unicode code points, hex values, UTF-8 byte arrays, UTF-16 surrogate pairs, and sequence components (like ZWJ joiners and skin tone modifiers).
How do Zero Width Joiners (ZWJ) work in emojis?
A Zero Width Joiner (U+200D) acts as invisible glue connecting two or more base emojis. For example, ๐Ÿ‘จ (Man) + ZWJ + ๐Ÿ‘ฉ (Woman) + ZWJ + ๐Ÿ‘ง (Girl) + ZWJ + ๐Ÿ‘ฆ (Boy) forms the single composite family emoji ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ.
Why does an emoji take up multiple characters or bytes?
In JavaScript and databases, string length is measured in UTF-16 code units. A single complex emoji (like a flag or family) may consist of 4 to 7 code points, taking up to 11 UTF-16 code units and 25 UTF-8 bytes.
What is the difference between VS15 and VS16?
Variation Selector-16 (U+FE0F) forces an emoji to render as a colorful graphic, while Variation Selector-15 (U+FE0E) forces it to render as monochrome text.
What code formats can I copy from this inspector?
Our tool supports 18 formats including HTML Decimal, HTML Hex, CSS, JavaScript, React/JSX, Python, Swift, Kotlin, Java, Rust, Go, SQL, C#, PHP, Ruby, and JSON.