· emoji, guides
Emoji combos: the characters underneath

An emoji combo is a sequence of Unicode characters that a font draws as one emoji: a base character plus a skin tone modifier, an invisible joiner, or a pair of flag letters. Most “new emoji” are combos rather than new characters. Of Emoji 17.0’s 163 additions, only seven are new codepoints; the rest are combinations.
When Unicode 17.0 shipped in September 2025, the announcement said 163 new emoji, and the fine print said seven new codepoints. Both numbers were honest. The other 156 were combinations: existing characters arranged in sequences that fonts are instructed to draw as single pictures. A large and growing share of what you think of as “an emoji” is not a character at all. It is a small sentence, spelled in codepoints, that your device’s emoji font renders as one glyph.
There are two things the internet calls combos, and it is worth separating them. Decorative combos are strings of separate emoji typed together for effect, the sparkles and butterflies around a caption; each one is its own character, and they travel as a row. Tools like the keyboard at emoji.party exist to build those rows: stack emoji in order, apply a skin tone where one fits, and copy the finished string. Composed emoji are the subject of this post: sequences that fuse into a single visible character, indistinguishable from a “real” emoji until you look at the characters underneath. Watch the three core tricks do it. The glyphs below are drawn by your own device’s emoji font:
What are the four ways emoji combine?
Skin tone modifiers. Five characters, U+1F3FB through U+1F3FF, encode the Fitzpatrick scale of human skin tones. Placed after a hand, a face, or a person, a modifier instructs the font to repaint the base glyph in that tone. One base times six presentations, default plus five tones, with no new codepoint per tone. Multi-person emoji can carry a different modifier per person, which is where the combinatorics explode: most of Emoji 17.0’s 163 were exactly this arithmetic. Here is the whole ladder, drawn live by your own emoji font:
The five modifiers as characters in their own right: 🏻 🏼 🏽 🏾 🏿 On their own they draw as swatches; after a person, hand, or face, they repaint it.
The Zero Width Joiner. U+200D is an invisible character that prints nothing. Inside an emoji sequence it is an instruction: draw what surrounds me as one glyph, if you have it. Woman plus joiner plus laptop becomes the woman technologist. Person plus joiner plus ballet shoes became Emoji 17.0’s Ballet Dancer, an emoji that exists in the emoji standard without existing as a codepoint in Unicode at all. The joiner is a ligature request, the same idea as the fi ligature in a text face, applied to pictures.
Regional indicators. Country flags are pairs of special letters that spell the ISO country code: the regional indicators for F and R fuse into the French flag. England, Scotland, and Wales use a longer trick, a black flag base followed by invisible tag letters spelling the subdivision code. And a font that has no flag glyph, which on Windows is every font, simply shows the letters. The mechanism and a shelf of results:
U+1F1EB indicator F
U+1F1F7 indicator R
one flag: France
US · United StatesU+1F1FA U+1F1F8
GB · United KingdomU+1F1EC U+1F1E7
FR · FranceU+1F1EB U+1F1F7
DE · GermanyU+1F1E9 U+1F1EA
JP · JapanU+1F1EF U+1F1F5
BR · BrazilU+1F1E7 U+1F1F7
CA · CanadaU+1F1E8 U+1F1E6
IN · IndiaU+1F1EE U+1F1F3
IT · ItalyU+1F1EE U+1F1F9
ES · SpainU+1F1EA U+1F1F8These flags are pictures, drawn from Google's Noto Color Emoji font, for a reason the post itself explains: a Windows font has no flag glyphs, so the live characters would show you letter pairs instead. The England subdivision flag (black flag plus invisible tag letters spelling gbeng) is here the same way: 
Keycaps and the presentation switch. A digit, the variation selector U+FE0F, and a combining enclosing keycap produce the boxed number keys. The variation selector deserves its own sentence, because it is quietly everywhere: it is a text versus emoji presentation switch, requesting that a character be drawn in color emoji style (or, its sibling U+FE0E, in plain text style). The red heart in our specimen plate is an ordinary text character, U+2764, plus that selector asking for the emoji drawing. Both tricks, live:
Same heart character in both of the last two boxes. The only difference is the invisible selector after it, asking the font for the other drawing.

Why do character counters get emoji wrong?
Composition is why “character” has stopped meaning anything simple in software. A toned, joined family emoji can run past ten codepoints while occupying one cell on screen, so character counters, text field limits, cursor movement, and truncation all have to count something more subtle, the grapheme cluster, or they break in ways users describe as “the app ate my emoji.” When you see a post limit measured in characters, sequences are spending several of them invisibly.
What happens when the fusion fails?
Every mechanism degrades, by design, and the failure modes are the same ones fonts have always had. A font without the joined glyph shows the parts side by side: still readable, clearly lesser. A font missing a codepoint entirely shows the empty tofu box, which is why the newest emoji arrive as boxes for months. A platform that strips joiners or normalizes text quietly takes the composition apart. And none of this is exotic: it is fallback, coverage, and versioning, the ordinary physics of text, applied to pictures. The three failure modes, drawn out:

Fusion failing three ways: the combo falls back to its parts, the missing character falls back to tofu, and the flag falls back to its letters.
The letters in your bio obey the same physics, which is the thread connecting this post to the fonts that are not fonts. Whether the characters are mathematical letters pretending to be a typeface or emoji pretending to be a single character, what you see is never the text itself. It is what the reader’s fonts could make of it.