Emoji ZWJ sequences explained

Ever wonder how πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦ (a family) or πŸ‘©β€πŸ’» (a technologist) exist? They're separate emoji fused with an invisible character called the Zero Width Joiner (ZWJ).

What the ZWJ does

The Zero Width Joiner is code point U+200D β€” an invisible character that tells the renderer β€œcombine the emoji on either side of me into one.” So πŸ‘¨ + ZWJ + πŸ’» becomes πŸ‘©β€πŸ’» (well, πŸ‘¨β€πŸ’»), drawn as a single glyph.

Examples

  • πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦ = man + ZWJ + woman + ZWJ + girl + ZWJ + boy
  • πŸ§‘β€πŸš’ = person + ZWJ + fire engine β†’ firefighter
  • πŸ³οΈβ€πŸŒˆ = white flag + ZWJ + rainbow β†’ rainbow flag
  • ❀️‍πŸ”₯ = heart + ZWJ + fire β†’ heart on fire

Why they sometimes fall apart

If a platform doesn't recognize a particular ZWJ sequence, it falls back to showing each component separately β€” so a firefighter might appear as β€œπŸ§‘πŸš’.” The pieces are still valid emoji; they just weren't combined. This is why new combined emoji look broken on older devices.

Frequently asked questions

What is a ZWJ sequence?

A set of emoji joined by the Zero Width Joiner (U+200D) so they render as a single combined emoji, like a family or a profession.

Why do some emoji show as two icons?

The device doesn't support that ZWJ sequence, so it displays the individual components instead of the combined glyph.