Emoji & Unicode reference
Emojis are just Unicode characters. They don’t live in a special “emoji font” in your CSS – they’re rendered by the OS and browser. The trick is to output the right code point and let the platform handle the glyph.
Basic ways to output emojis
HTML entity (decimal)
<p>Hello 😀 world!</p>
Use &#number; when you don’t want to paste the actual emoji character.
HTML entity (hex)
<p>Hello 😀 world!</p>
Same idea, but with &#xHEX; (note the x).
JavaScript string
const smile = "\u{1F600}";
document.body.textContent = "Hi " + smile;
Use \u{...} for modern JS. For older environments, you may need surrogate pairs.
Direct character
<button>Save ✅</button>
For most projects it’s safe to paste the emoji directly as long as your files are UTF-8.
Common emoji codes
Copy the HTML entity or code point you need. Rendering depends on the user’s OS, browser, and system emoji font.
| Emoji | Name | Code point | HTML (dec) | HTML (hex) |
|---|---|---|---|---|
| 😀 | Grinning face | U+1F600 |
😀 |
😀 |
| 😁 | Beaming face with smiling eyes | U+1F601 |
😁 |
😁 |
| 😂 | Face with tears of joy | U+1F602 |
😂 |
😂 |
| 😊 | Smiling face with smiling eyes | U+1F60A |
😊 |
😊 |
| 😍 | Smiling face with heart-eyes | U+1F60D |
😍 |
😍 |
| 🤔 | Thinking face | U+1F914 |
🤔 |
🤔 |
| 🙌 | Raising hands | U+1F64C |
🙌 |
🙌 |
| 🔥 | Fire | U+1F525 |
🔥 |
🔥 |
| ✨ | Sparkles | U+2728 |
✨ |
✨ |
| ✅ | Check mark button | U+2705 |
✅ |
✅ |
Gotchas
- Emojis ignore your webfont – they use the system emoji font.
- Different platforms draw the same emoji differently (style, color, expression).
- Always test key UI text (buttons, status messages) with real devices if you rely heavily on emojis.