Heart Symbols
Want a simple text heart? Try ♡ or ♥. For colour, pick ❤️ or another heart emoji. Tap any heart to copy it.
Text hearts
Simple hearts for messages, names, and bios.
Emoji hearts
The familiar red ❤️, plus hearts in other colours and styles.
Decorative hearts
Small heart designs for names, bios, and messages.
How to choose
For a plain heart in a name or message, try ♡ or ♥. For colour, use an emoji heart. The text and emoji versions of ♥ can look different across apps, so paste it where you plan to use it if the appearance matters.
Why a heart may paste as text or emoji
The characters copied and the shape displayed are separate. Some hearts include an invisible variation selector: U+FE0E (VS15) requests text presentation, while U+FE0F (VS16) requests emoji presentation. A receiving app, its installed fonts, and its platform still decide the final appearance.
The browser can copy the exact code points below. It cannot promise that the pasted heart will have the same colour, outline, or shape everywhere. Two examples may even look alike here while containing different characters. See the reproducible browser test and results.
- Filled heart
- U+2665One character, with no presentation selector.
- Heart suit (text style)
- U+2665 U+FE0EVS15 requests text presentation.
- Heart suit (emoji style)
- U+2665 U+FE0FVS16 requests emoji presentation.
- Red heart
- U+2764 U+FE0FA different heart base followed by VS16.
What the four strings mean
U+2665is BLACK HEART SUIT. With no selector, it has Unicode's default text presentation.- Adding
U+FE0EorU+FE0Fdoes not replace U+2665. It adds an invisible request for text or emoji presentation. - The familiar red heart uses HEAVY BLACK HEART
U+2764followed by VS16. It is not the same base character as U+2665.
These definitions and valid pairs come from Unicode Emoji 18.0 and the current Unicode emoji variation-sequence data.
Browser copy-and-paste test
- Select only one rendered heart above and copy it with Control+C.
- Paste it into each empty field below with Control+V.
- Inspect the pasted string as Unicode code points; do not infer a hidden selector from its appearance.
What the browser check found
In our Linux Chromium check, all four exact strings remained unchanged when pasted into both fields. Code-point readback matched every source string, including VS15 and VS16. Text and emoji presentation requests were drawn with different installed fonts, which is one reason their shapes can differ.
Other browser engines were not available for this run, so these are not compatibility results. This check also makes no claim about WhatsApp, Instagram, iOS, Android, Windows, or macOS.