← Back to the icons

Emojis: copy them and use them well

An emoji is a text character, not an image. That one fact explains most of their behavior: they are light and easy to paste, but you don't control how they look.

Open this set in Icon Library

Other sets: Lucide · Feather · Bootstrap Icons

A few emojis to copy

Why the same emoji looks different

The Unicode standard defines the character and its meaning, while the drawing comes from a font on each device. So 😀 is drawn differently on Android, iOS and Windows. A new emoji also takes time to reach every system, and until then an old device may show an empty box. Icon Library marks the ones that have no drawing on your machine, so you can see them before using them.

Flags are a known example: Windows generally shows two letters, such as "BR", instead of a flag. Don't rely on a flag emoji alone to indicate a language or country.

Emojis made of several characters

Some emojis are sequences joined by an invisible character. 👩‍💻 combines 👩 and 💻, and a system without that combination shows the two separately. This also affects code: such an emoji counts as several characters in a JavaScript string, so cutting text with slice can break it.

"👩‍💻".length                   // 5
    [...new Intl.Segmenter().segment("👩‍💻")].length  // 1

Accessibility

Screen readers announce the name of each emoji, so a row of them is read aloud in full. Use them sparingly and don't let one replace a word that carries meaning. If an emoji is only decoration, hide it from them:

<span aria-hidden="true">🎉</span> Payment confirmed

Emoji or SVG icon?

Can I use emojis freely?

Typing the character is fine anywhere, because it is just text. The drawings are a different matter: each company's emoji art belongs to it under its own terms, so check them before using a picture of an emoji, for example in a logo or a product.