Skip to main content
Best Emojis

Emoji glossary

This glossary explains the vocabulary behind emoji the hard way: every term is shown on a real emoji from our dataset, taken apart into its code points, with the Unicode name of each one, the version that added it and the job it does. The counts beside each example are calculated from the exact string you would copy, so nothing here is rounded or guessed. 20 terms, 69 code points taken apart.

CLDR short name

A character's Unicode name is fixed forever, written in capitals, and sometimes clumsy. The CLDR short name is the friendly label kept by the Unicode Common Locale Data Repository, translated into dozens of languages and free to change. Star-struck shows the gap clearly. Its permanent character name is GRINNING FACE WITH STAR EYES, while CLDR calls it star-struck. The names on our emoji pages are based on CLDR short names. CLDR also supplies the search keywords behind most emoji keyboards, which form a separate, longer list.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F929๐ŸคฉGRINNING FACE WITH STAR EYES10.0 (2017)The visible base character

As an emoji since Unicode 10.0 (2017) Our emoji.json lists this as Unicode 11.0.

Open the star struck pageSee also:Emoji meaningsBack to the term list

Code point

A code point is the number Unicode assigns to one character, written as U+ followed by hexadecimal digits. Grinning face is U+1F600, and every phone, font and keyboard that knows that number agrees on what it means. Code points are what actually travel when you send an emoji. The picture is drawn on arrival, by whatever device receives it. Most emoji sit above U+FFFF, in what Unicode calls the supplementary planes, which is why older software that assumed every character fits in 16 bits used to split them into two broken halves.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F600๐Ÿ˜€GRINNING FACE6.1 (2012)The visible base character

As an emoji since Unicode 6.1 (2012)

Open the grinning face pageSee also:Emoji by Unicode versionEmoji meaningsBack to the term list

Code point, glyph and grapheme

Three different things get called a character, and emoji are where the difference bites. A code point is one Unicode number. A glyph is the drawing a font produces. A grapheme, or extended grapheme cluster in Unicode Standard Annex #29, is what a reader sees as one unit and what the cursor should step over in a single press. The family below is one grapheme and one glyph, assembled from five code points. Software that counts code points, or worse UTF-16 units, reports this single picture as several characters, which is how character limits end up eating emoji.

5 code points, 8 UTF-16 units, 18 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F468๐Ÿ‘จMAN6.0 (2010)The visible base character
U+200D(invisible)ZERO WIDTH JOINER1.1 (1993)Glues its neighbours into one emoji
U+1F469๐Ÿ‘ฉWOMAN6.0 (2010)The visible base character
U+200D(invisible)ZERO WIDTH JOINER1.1 (1993)Glues its neighbours into one emoji
U+1F467๐Ÿ‘งGIRL6.0 (2010)The visible base character

As an emoji since Emoji 2.0 (2015)

Open the family: man, woman, girl pageSee also:People and body emojisBack to the term list

Emoji Kitchen

Emoji Kitchen is Google's mashup feature in Gboard: pick two emoji and it offers one hand-drawn sticker combining them. The results are images, not Unicode. Nothing new is encoded, so a Kitchen sticker arrives as a picture and cannot be pasted back into a text field as characters. A pairing only exists if Google's artists drew it, which is why our data tracks partner lists one emoji at a time rather than assuming everything mixes. Turtle currently combines with 359 partners in our data, every one of them a separate drawing.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F422๐ŸขTURTLE6.0 (2010)The visible base character

As an emoji since Unicode 6.0 (2010)

Open the turtle pageSee also:Emoji KitchenTurtle mashupsBack to the term list

Emoji modifier base

Only some emoji accept a skin tone. Unicode marks them with a property called Emoji_Modifier_Base, and the list is mostly hands, gestures, people and a handful of body parts. Raised hand is one of them. Because the property is published data, a keyboard can check it to decide where to offer the tone picker on a long press, which it does for the raised hand and never for the turtle. Yellow smileys such as the grinning face are not modifier bases at all, since they were never meant to depict any particular person.

1 code points, 1 UTF-16 units, 3 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+270Bโœ‹RAISED HAND6.0 (2010)The visible base character
With the medium skin tone modifier. 2 code points, 3 UTF-16 units, 7 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+270Bโœ‹RAISED HAND6.0 (2010)The visible base character
U+1F3FD๐ŸฝEMOJI MODIFIER FITZPATRICK TYPE-48.0 (2015)Skin tone, Fitzpatrick type 4

As an emoji since Unicode 6.0 (2010)

Open the raised hand pageSee also:Emoji copy and pasteBack to the term list

Emoji presentation and text presentation

Plenty of symbols were in Unicode long before emoji existed, so they have two possible looks: a flat text glyph that takes the colour of the surrounding words, and a full colour picture. Each character carries a default. The sun is text by default because it dates from Unicode 1.1 in 1993, so on its own it can render as a small black outline. Emoji added from 2010 onwards, such as the grinning face, default to emoji presentation and never need help. When the default is text, it takes a variation selector to switch it.

2 code points, 2 UTF-16 units, 6 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+2600โ˜€BLACK SUN WITH RAYS1.1 (1993)The visible base character
U+FE0F(invisible)VARIATION SELECTOR-163.2 (2002)Asks for the colour emoji form
With no selector, so the default applies. 1 code points, 1 UTF-16 units, 3 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+2600โ˜€BLACK SUN WITH RAYS1.1 (1993)The visible base character

As an emoji since Emoji 1.0 (2015)

Open the sun pageSee also:Text symbolsBack to the term list

Emoji version and Unicode version

Emoji have their own version numbers, separate from Unicode's. Emoji 1.0 to 5.0 came out between 2015 and 2017 on their own schedule, some adding only new sequences and others the emoji from a fresh Unicode release. In 2018 the numbering jumped to Emoji 11.0 to match Unicode 11.0, and the two have moved in step since, with occasional point releases such as Emoji 13.1 that add only sequences. Data that records one character's age gets sequences wrong. Our own emoji.json lists the rainbow flag as Unicode 6.0, the age of the rainbow inside it, but the flag arrived with Emoji 4.0 in 2016.

4 code points, 6 UTF-16 units, 14 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F3F3๐ŸณWAVING WHITE FLAG7.0 (2014)The visible base character
U+FE0F(invisible)VARIATION SELECTOR-163.2 (2002)Asks for the colour emoji form
U+200D(invisible)ZERO WIDTH JOINER1.1 (1993)Glues its neighbours into one emoji
U+1F308๐ŸŒˆRAINBOW6.0 (2010)The visible base character

As an emoji since Emoji 4.0 (2016)

Open the rainbow flag pageSee also:Emoji by Unicode versionNew emojisBack to the term list

Fully-qualified and unqualified

Unicode's emoji-test.txt file gives every emoji string a status. Fully-qualified means it carries each variation selector it needs to display as an emoji everywhere. Unqualified means a required VS16 is missing, so a platform may legitimately show the text form. Minimally-qualified covers longer sequences whose first character is properly qualified while a later one is missing its selector. Smiling face is a neat test case: without U+FE0F it is the very same code point, yet the file lists that form as unqualified, and keyboards are expected to insert the fully-qualified one.

2 code points, 2 UTF-16 units, 6 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+263Aโ˜บWHITE SMILING FACE1.1 (1993)The visible base character
U+FE0F(invisible)VARIATION SELECTOR-163.2 (2002)Asks for the colour emoji form
Unqualified, with no VS16. 1 code points, 1 UTF-16 units, 3 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+263Aโ˜บWHITE SMILING FACE1.1 (1993)The visible base character

As an emoji since Emoji 1.0 (2015)

Open the smiling face pageSee also:Emoji copy and pasteBack to the term list

Genmoji

Genmoji are emoji-styled images that Apple Intelligence creates from a text description, introduced with iOS 18.2 in December 2024. Like Emoji Kitchen stickers, they are pictures without a code point. The melting face below has a number any device in the world can look up, and a Genmoji has none. Apple devices can show one inline in a message, while other platforms generally receive it as an ordinary image. So you cannot search for a Genmoji, copy it as text or expect it to look the same anywhere outside Apple's apps.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1FAE0๐Ÿซ MELTING FACE14.0 (2021)The visible base character

As an emoji since Unicode 14.0 (2021)

Open the melting face pageSee also:Apple emojisBack to the term list

Kaomoji, emoticon and emoji

These three get mixed up constantly. An emoticon such as :) is a face typed from keyboard punctuation and read sideways, usually traced to a 1982 message board post by Scott Fahlman. Kaomoji, Japanese for face characters, are read upright and borrow from a much wider pool of symbols, like (^_^). Both are plain text, so they look identical everywhere. An emoji is an encoded character or sequence that each platform draws as a picture. The rows below make the difference concrete: two or five ordinary characters against one code point.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F642๐Ÿ™‚SLIGHTLY SMILING FACE7.0 (2014)The visible base character
Emoticon. 2 code points, 2 UTF-16 units, 2 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+003A:COLON1.1 (1993)Ordinary keyboard character
U+0029)RIGHT PARENTHESIS1.1 (1993)Ordinary keyboard character
Kaomoji. 5 code points, 5 UTF-16 units, 5 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+0028(LEFT PARENTHESIS1.1 (1993)Ordinary keyboard character
U+005E^CIRCUMFLEX ACCENT1.1 (1993)Ordinary keyboard character
U+005F_LOW LINE1.1 (1993)Ordinary keyboard character
U+005E^CIRCUMFLEX ACCENT1.1 (1993)Ordinary keyboard character
U+0029)RIGHT PARENTHESIS1.1 (1993)Ordinary keyboard character

As an emoji since Unicode 7.0 (2014)

Open the slightly smiling face pageSee also:KaomojiText symbolsBack to the term list

Keycap sequence

There are twelve keycap emoji, and each is built from an ordinary keyboard character, a VS16 and U+20E3 COMBINING ENCLOSING KEYCAP, a combining mark that draws a key around whatever came before it. The bases are plain ASCII: the digits 0 to 9, the number sign and the asterisk. Software that drops the combining mark leaves a bare # sitting next to an empty box. Keycap ten looks like a member of the same family but is not one. It is a single code point of its own, U+1F51F, with nothing combined.

3 code points, 3 UTF-16 units, 7 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+0023#NUMBER SIGN1.1 (1993)The visible base character
U+FE0F(invisible)VARIATION SELECTOR-163.2 (2002)Asks for the colour emoji form
U+20E3โ—ŒโƒฃCOMBINING ENCLOSING KEYCAP3.0 (1999)Draws a key around the character before it
Keycap ten, a single code point. 1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F51F๐Ÿ”ŸKEYCAP TEN6.0 (2010)The visible base character

As an emoji since Emoji 1.0 (2015)

Open the hash pageSee also:Text symbolsBack to the term list

Regional indicator (flag sequence)

Country flags are not stored as pictures of flags. Each one is a pair of regional indicator symbols, drawn from a block of 26 at U+1F1E6 to U+1F1FF that stand for the letters A to Z. Two of them spell an ISO 3166 country code, and the platform decides whether it has artwork for that code. Japan is J followed by P. Unicode never lists which flags exist, so when a platform declines to draw one, the reader sees two boxed letters instead. Windows has long done exactly that for every country flag.

2 code points, 4 UTF-16 units, 8 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F1EF๐Ÿ‡ฏREGIONAL INDICATOR SYMBOL LETTER J6.0 (2010)Regional indicator, letter J
U+1F1F5๐Ÿ‡ตREGIONAL INDICATOR SYMBOL LETTER P6.0 (2010)Regional indicator, letter P

As an emoji since Emoji 1.0 (2015)

Open the Japan pageSee also:Flag emojisWhat flag is this?Back to the term list

RGI (Recommended for General Interchange)

RGI stands for Recommended for General Interchange, the Unicode list of emoji that vendors are expected to support and that people can safely send to one another. Being well formed is a different test. A tag sequence for Texas, put together exactly like the Scotland flag below, is valid Unicode but not RGI, so almost nothing draws it. The same applies to any ZWJ combination someone invents. When a site quotes a total number of emoji, it is almost always counting the RGI list, and that total grows with each Emoji release.

7 code points, 14 UTF-16 units, 28 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F3F4๐ŸดWAVING BLACK FLAG7.0 (2014)The visible base character
U+E0067(invisible)TAG LATIN SMALL LETTER G3.1 (2001)Invisible tag, letter g
U+E0062(invisible)TAG LATIN SMALL LETTER B3.1 (2001)Invisible tag, letter b
U+E0073(invisible)TAG LATIN SMALL LETTER S3.1 (2001)Invisible tag, letter s
U+E0063(invisible)TAG LATIN SMALL LETTER C3.1 (2001)Invisible tag, letter c
U+E0074(invisible)TAG LATIN SMALL LETTER T3.1 (2001)Invisible tag, letter t
U+E007F(invisible)CANCEL TAG3.1 (2001)Ends the tag sequence
Texas, well formed but not RGI. 6 code points, 12 UTF-16 units, 24 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F3F4๐ŸดWAVING BLACK FLAG7.0 (2014)The visible base character
U+E0075(invisible)TAG LATIN SMALL LETTER U3.1 (2001)Invisible tag, letter u
U+E0073(invisible)TAG LATIN SMALL LETTER S3.1 (2001)Invisible tag, letter s
U+E0074(invisible)TAG LATIN SMALL LETTER T3.1 (2001)Invisible tag, letter t
U+E0078(invisible)TAG LATIN SMALL LETTER X3.1 (2001)Invisible tag, letter x
U+E007F(invisible)CANCEL TAG3.1 (2001)Ends the tag sequence

As an emoji since Emoji 5.0 (2017)

Open the Scotland pageSee also:New emojisBack to the term list

Shortcode

A shortcode is a word wrapped in colons, such as :tada:, that a chat app swaps for an emoji as you type. Shortcodes are not part of Unicode at all. Each platform maintains its own list, so a code that works in Slack can fail in Discord or GitHub, even though most lists share common ancestors such as GitHub's open gemoji set. Under every emoji on this site we print the Slack, Discord and GitHub forms side by side, taken from our own shortcode table, because the three do not always agree.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F389๐ŸŽ‰PARTY POPPER6.0 (2010)The visible base character

As an emoji since Unicode 6.0 (2010)

Open the party popper pageSee also:Slack, Discord and GitHub shortcodes comparedEmoji copy and pasteBack to the term list

Skin tone modifier (Fitzpatrick scale)

Unicode 8.0, released in 2015, added five modifier characters from U+1F3FB to U+1F3FF, named after the Fitzpatrick scale that dermatologists use to classify skin by how it reacts to sunlight. The scale has six types. Unicode folded types 1 and 2 into the lightest modifier, which is why you get five swatches rather than six. Placed straight after a human emoji, a modifier recolours it. With no modifier, platforms show a deliberately unreal default, usually yellow. Put one after something that cannot take a tone and it appears as a separate coloured square.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F44D๐Ÿ‘THUMBS UP SIGN6.0 (2010)The visible base character
With the medium skin tone modifier. 2 code points, 4 UTF-16 units, 8 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F44D๐Ÿ‘THUMBS UP SIGN6.0 (2010)The visible base character
U+1F3FD๐ŸฝEMOJI MODIFIER FITZPATRICK TYPE-48.0 (2015)Skin tone, Fitzpatrick type 4

As an emoji since Unicode 6.0 (2010)

Open the thumbs up pageSee also:People and body emojisBack to the term list

Tag sequence (subdivision flags)

England, Scotland and Wales have no two-letter country code of their own, so their flags use a longer mechanism. The sequence opens with a waving black flag, U+1F3F4, spells a subdivision code such as gbeng in invisible tag characters from the U+E0000 block, and closes with CANCEL TAG, U+E007F. England needs seven code points to say what Japan says in two. The format arrived with Emoji 5.0 in 2017 and can in principle spell any ISO 3166-2 region, although vendors only draw the three that Unicode recommends.

7 code points, 14 UTF-16 units, 28 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F3F4๐ŸดWAVING BLACK FLAG7.0 (2014)The visible base character
U+E0067(invisible)TAG LATIN SMALL LETTER G3.1 (2001)Invisible tag, letter g
U+E0062(invisible)TAG LATIN SMALL LETTER B3.1 (2001)Invisible tag, letter b
U+E0065(invisible)TAG LATIN SMALL LETTER E3.1 (2001)Invisible tag, letter e
U+E006E(invisible)TAG LATIN SMALL LETTER N3.1 (2001)Invisible tag, letter n
U+E0067(invisible)TAG LATIN SMALL LETTER G3.1 (2001)Invisible tag, letter g
U+E007F(invisible)CANCEL TAG3.1 (2001)Ends the tag sequence

As an emoji since Emoji 5.0 (2017) Our emoji.json lists this as Unicode 11.0.

Open the England pageSee also:Flag emojisBack to the term list

Tofu (the blank box)

Tofu is slang for the empty rectangle, sometimes holding a question mark or a hex code, that a device draws when no installed font has a glyph for a character. The name comes from its resemblance to a block of tofu, and Google named its Noto font family after the goal of no more tofu. The emoji itself arrived intact; the phone just has nothing to draw it with. Moose was added in Unicode 15.0 in 2022, so a phone whose system fonts predate support for it still shows a box.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1FACE๐ŸซŽMOOSE15.0 (2022)The visible base character

As an emoji since Unicode 15.0 (2022)

Open the moose pageSee also:New emojisEmoji by Unicode versionBack to the term list

Variation selector (VS16 and VS15)

Variation selector 16, U+FE0F, is an invisible code point placed after a character to request its emoji presentation. Variation selector 15, U+FE0E, requests the plain text version instead. Neither draws anything on its own. The telephone below is shown both ways, built on the same base, U+260E. Support for VS15 is uneven between platforms and fonts, so treat it as a request rather than a guarantee. When an emoji pasted from a website lands as a thin black outline, a VS16 that got stripped somewhere along the way is the usual culprit.

2 code points, 2 UTF-16 units, 6 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+260Eโ˜ŽBLACK TELEPHONE1.1 (1993)The visible base character
U+FE0F(invisible)VARIATION SELECTOR-163.2 (2002)Asks for the colour emoji form
Text form, with VS15. 2 code points, 2 UTF-16 units, 6 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+260Eโ˜ŽBLACK TELEPHONE1.1 (1993)The visible base character
U+FE0E(invisible)VARIATION SELECTOR-153.2 (2002)Asks for the plain text form

As an emoji since Emoji 1.0 (2015)

Open the telephone pageSee also:Emoji copy and pasteBack to the term list

Vendor art (platform designs)

Unicode decides what each emoji means and publishes a reference image, but the artwork on your screen belongs to Apple, Google, Samsung, Microsoft or whoever made the font. One code point can therefore look noticeably different from phone to phone. Pistol is the famous case. Apple redrew it as a green water gun in iOS 10 in 2016, most other major vendors followed by 2018, and the Unicode name is still PISTOL. Every emoji page here puts five vendors' images next to each other for exactly this reason.

1 code points, 2 UTF-16 units, 4 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F52B๐Ÿ”ซPISTOL6.0 (2010)The visible base character

As an emoji since Unicode 6.0 (2010)

Open the pistol pageSee also:Apple emojisBack to the term list

ZWJ sequence

The zero width joiner, U+200D, is an invisible character that sits between two emoji and tells the renderer to draw them as one, if it has a design for that combination. Woman technologist is a woman, a ZWJ and a personal computer, three code points in total. When the receiving device has no combined design, it ignores the joiner and shows the parts side by side. That is why a newer profession or family emoji on an old phone turns into a little row of separate people and objects. Nothing was lost in transit. The fallback is simply the pieces.

3 code points, 5 UTF-16 units, 11 UTF-8 bytes
Code pointCharacterUnicode nameAdded inWhat it does
U+1F469๐Ÿ‘ฉWOMAN6.0 (2010)The visible base character
U+200D(invisible)ZERO WIDTH JOINER1.1 (1993)Glues its neighbours into one emoji
U+1F4BB๐Ÿ’ปPERSONAL COMPUTER6.0 (2010)The visible base character

As an emoji since Emoji 4.0 (2016)

Open the woman technologist pageSee also:People and body emojisBack to the term list

20
terms explained
69
code points taken apart
14
invisible helper characters shown
7
code points in the longest example

Emoji glossary FAQ

Why does one emoji count as several characters?

Because most software counts code points or UTF-16 units rather than what you see. Woman technologist is three code points and five UTF-16 units, so a field that counts code points sees three characters and one that counts UTF-16 units sees five. Each example above lists all three counts.

Why do some flags show up as two letters?

A country flag is two regional indicator letters spelling a country code. If the device has no artwork for that pair, it shows the letters instead. Windows does this for all country flags, so a Japanese flag sent from a phone appears there as the letters J and P.

Is a ZWJ emoji one emoji or several?

Both, depending on the device. It is a single grapheme built from several emoji glued together by invisible joiners. A device with a design for the combination draws one picture; one without it ignores the joiners and draws each part separately, in order.

Can I invent a new emoji by joining two with a ZWJ?

You can type the sequence, and it is valid Unicode, but it only appears as one picture on platforms whose fonts include a design for it. Combinations outside the RGI list almost never have one, so most readers would just see the two emoji side by side.

Why does the same emoji look different on my friend's phone?

Unicode only sends the code points. The drawing comes from the font on the receiving device, and Apple, Google, Samsung and Microsoft each draw their own. An older phone may also be missing newer designs entirely, which is when you see tofu instead of an emoji.