A text heart and an emoji heart are not the same thing
Search for a heart and two different kinds of character come back, and almost every problem people have with hearts comes from not knowing which kind they are holding. A text heart such as ♥ (U+2665) or ♡ (U+2661) is a character like a letter. The font that draws your text draws it too, at the same size and in the same colour. Put ♥ into white text on a dark background and you get a white heart. Make the text bold and the heart gets heavier with it.
An emoji heart such as ❤️ or 💜 is a small picture supplied by the device. The colour is baked into the picture, so it stays red or purple whatever you do to the text around it, and the artwork changes from platform to platform. Apple, Google, Samsung, Microsoft and WhatsApp all draw their own.
One character sits in both camps, which is where the confusion starts. U+2764 is the heavy black heart, and Unicode lets you pin down how it is drawn by adding an invisible character straight after it. U+FE0E forces the flat text version, ❤︎. U+FE0F forces the emoji, ❤️. With neither of them the text form is the documented default, but plenty of phones and chat apps show the emoji anyway, which is why the same message can arrive as a flat black heart on a desktop and a red one on an iPhone. Both versions are listed above with their code points, so you never have to guess which one you copied.
Which heart for which job
- A bio or display name that matches your theme: ♥ or ♡. They follow your text colour, so they look deliberate in dark mode and in light mode.
- The familiar red heart in a message: ❤️. The one everybody recognises, and the safest across old devices.
- A heart that is always black: 🖤. A plain ♥ is called the black heart suit in Unicode, but it only means filled rather than outlined, and it turns white on a dark background.
- Wedding, invitation or vintage styling: the floral hearts ❦ ❧ ☙. They were designed as printing ornaments and they still read that way.
- A decorative end to a line: ❥, the heart on a stem.
- A field that strips emoji: a text heart, or the ASCII <3. Both are ordinary characters, so filters that only remove emoji leave them alone.
- Splitting a long caption into sections: a heart divider. Keep it short so it does not wrap onto two lines on a phone.
- A terminal, a code comment or a monospace table: <3 or ♥. Emoji hearts are double width and knock column alignment out.
What the heart emoji colours mean
Unicode only gives each emoji a name, for example green heart. It does not say what a colour means in a conversation, and the conventions below vary by community and by age group. Read them as common usage, not as a standard.
- ❤️ red: love and affection. The default heart, and the one people mean when they just say the heart emoji.
- 🧡 orange and 💛 yellow: warmth, friendship and cheerfulness, often chosen to say something short of romance.
- 💚 green: nature, health and growth, and occasionally jealousy.
- 💙 blue: loyalty, calm and trust, and campaigns with blue branding.
- 💜 purple: strongly tied to K-pop fandom after the BTS phrase “I purple you”, and also used for compassion.
- 🖤 black: grief and remembrance, dark humour, or simply a monochrome aesthetic.
- 🤍 white and 🤎 brown: both arrived in 2019. White goes with weddings and minimal styling, brown with earth-toned aesthetics.
- 🩷 pink, 🩵 light blue and 🩶 grey: added to Unicode in 2022, so no settled meaning has formed around them yet. They also show as boxes on phones that have not been updated since.
How to put a heart in an Instagram or TikTok bio
- Click the heart you want in the list above to copy it.
- Open the app, go to your profile and tap Edit profile.
- Tap into the Name or Bio field, put the cursor where the heart should go, press and hold, then tap Paste.
- Save, then reload your profile and look at the result.
- If the heart is gone after saving, the field stripped it. Try a text heart such as ♥ or ♡ instead of the emoji: some fields remove emoji but accept ordinary characters.
The @username is a separate field with much stricter rules on Instagram, TikTok and X. It allows only letters, numbers and a little punctuation, so no heart of any kind will go in there. Put the heart in the display name instead.
How to stop a heart turning red on an iPhone
If you paste ❤ into a note and it comes out as the red emoji, the device chose the emoji drawing for you. Copy the entry labelled heavy black heart, text style instead. It is the same U+2764 followed by U+FE0E, the text variation selector, which tells the device to use the flat glyph from the font. The selector is invisible, but it still takes up one character of a length limit, so a bio counter may read one higher than you expect. The same trick works on ♥ and on ❣, and both versions are listed separately above.
How to paste on a phone or a computer
- iPhone and iPad: after copying, press and hold inside the text field and tap Paste. The in-app browsers inside Instagram and other apps can block the copy button, so if nothing lands on the clipboard, open this page in Safari and copy again.
- Android: press and hold in the field and choose Paste, or tap the clipboard icon on your keyboard toolbar.
- Windows and Mac: Ctrl+V or Cmd+V. If a field refuses the paste, type any letter first, paste after it, then delete the letter.
- Without copying anything: on Windows, press the Windows key and the period key for the emoji panel, which has a symbols tab as well. On a Mac, press Control+Command+Space for the Character Viewer and search for heart. In Word, type 2665 and press Alt+X. In HTML, write ♥ or ♥ for ♥.
Where hearts work and where they fail
- Instagram: the display name, the bio, captions and comments all take both text hearts and emoji. The @username does not.
- TikTok: same split. Display name and bio accept hearts, the @username is letters, numbers, underscores and periods.
- Discord: display names and per-server nicknames accept hearts. The newer style of username is lowercase letters, numbers, periods and underscores only, so no heart there.
- WhatsApp: the profile name, the About line and messages all accept both kinds.
- X: the display name and bio accept hearts, the @handle is letters, numbers and underscores only.
- Games: this is the one place where no general answer is honest. Name rules differ per title and change with updates. Many name boxes allow only letters and digits. Where a box is more relaxed, a text heart has the better chance than an emoji, because some games strip emoji and keep ordinary characters. Test on a spare account before spending a rename token.
- Passwords, file names, code and spreadsheet keys: never. See the cautions below.
Why a heart turns into a box
A box, a question mark or a small rectangle with four digits in it means the font on that device has no drawing for that code point. The character copied fine, there is simply nothing to show. Two groups on this page run into it most: the hearts added to Unicode recently, such as 🩷 🩵 🩶, and the lookalike letters such as ꨄ and ᰔᩚ, which need Cham and Lepcha fonts that many devices do not ship. You cannot fix the reader’s device, so if the text has to look right for everyone, fall back to ♥, ♡ or ❤️, which have been drawn correctly nearly everywhere for years.
Things to watch out for
Invisible characters count.The variation selectors U+FE0E and U+FE0F, and the joiner inside ❤️🔥, take up space in a character limit and make two texts that look identical compare as different. Keep them out of passwords, usernames you have to type again, code and any spreadsheet column you plan to match on. The lookalikes are somebody’s alphabet. ღ, ꨄ, ᰔᩚ and ᥫ᭡ are letters from the Georgian, Cham, Lepcha and Tai Le scripts. A screen reader may announce them as those letters, and a name filter may treat them as unexpected script mixing. Accessibility. A screen reader reads every emoji heart out loud by name, so a row of ten of them is announced ten times. One is decoration, ten is noise.
Frequently asked questions
How do I copy and paste a heart symbol?
Click any heart on this page and it goes straight to your clipboard. Then press and hold inside the field you want it in and choose Paste on a phone, or press Ctrl+V on Windows and Cmd+V on a Mac. Nothing is typed, downloaded or installed, so it works the same in a bio, a message, a document or a game name box.
What is the difference between ♥ and ❤️?
♥ (U+2665) is a text character. It is drawn by the same font as the letters next to it, at the same size, in the same colour, so it turns white on a dark background and black on a light one. ❤️ is an emoji, a small picture supplied by the operating system, so it stays red no matter what colour your text is and it looks different on an iPhone, an Android phone and Windows. If you need the heart to match your text, use ♥. If you want the familiar red one, use ❤️.
What is the black heart symbol?
Two different things go by that name. 🖤 (U+1F5A4) is the black heart emoji, always a filled black picture. ♥ (U+2665) is called the black heart suit in Unicode, which only means filled rather than outlined: it takes your text colour, so it is black on a white page and white on a dark one. If you specifically want a shape that is always black, use 🖤.
Why do some hearts show as a box or a question mark?
A box, a question mark or a small rectangle with digits inside means the font on that device has no drawing for that code point. It is not a broken copy. Newer emoji hit this most often, for example the pink, light blue and grey hearts added to Unicode in 2022, and so do the lookalike letters such as ꨄ and ᰔᩚ, which need fonts for the Cham and Lepcha scripts. The fix is to pick an older heart. ♥, ♡ and ❤️ have been supported almost everywhere for years.
Do heart emoji colours have meanings?
Unicode only gives each one a name, for example "green heart". It does not define what the colour means in a conversation, and usage varies a lot by community and by age group. The common readings are red for love, orange and yellow for friendship, green for nature or health, blue for loyalty and calm, purple for K-pop fandom after the BTS phrase "I purple you", black for grief or dark humour, and white for weddings and minimal aesthetics. Treat all of that as convention, not as a rule.
Can I put a heart in my Instagram or TikTok username?
Not in the @username. On Instagram, TikTok and X the handle is limited to letters, numbers and a small set of punctuation, so every heart is rejected. The display name, the bio and captions are different: all of them accept both text hearts and emoji on those platforms. Put the heart in your display name instead of your handle.
How do I type a heart on a keyboard without copying one?
On Windows, press the Windows key and the period key to open the emoji panel, which also has a symbols tab. Alt+3 on the numeric keypad still types ♥ in many desktop applications, though not in every browser text box. On a Mac, press Control+Command+Space to open the Character Viewer and search for "heart". In Microsoft Word you can type 2665 and then press Alt+X. In HTML, write ♥ or ♥ for ♥, ♡ for ♡, and ❤ for ❤.
Do heart symbols work in game names?
It depends entirely on the name rules of each game, and they vary. Many name fields allow only letters and digits and reject everything on this page. Where a field is more relaxed, a text heart such as ♥ or ♡ has the better chance, because some games strip emoji while still accepting ordinary text characters. Rules also change with updates, so test on a spare account before you spend a rename token or start a name-change cooldown.
Are ღ, ᰔᩚ and ꨄ real heart symbols?
No. They are letters from real writing systems that happen to look like hearts: ღ is a letter of the Georgian alphabet, ᰔᩚ combines a Lepcha letter with a mark from the Tai Tham script, and ꨄ is a Cham letter. They are marked as lookalikes on this page. They are popular in bios because they are plain text rather than emoji, but a screen reader may read them out as the letters they are, and a device without those fonts shows boxes.
Will a heart symbol break anything?
In prose, a bio or a message, no. Keep them out of passwords, file names you share across systems, code, and spreadsheet cells you plan to match on, because some hearts carry an invisible variation selector and two texts that look identical will then not be equal. Emoji hearts are also double width in a terminal or a monospace font, so they push column alignment out of shape.
Sources
- Unicode Consortium, Miscellaneous Symbols code chart (♥ U+2665, ♡ U+2661 and ☙ U+2619).
- Unicode Consortium, Dingbats code chart (❣ U+2763, ❤ U+2764, ❥ U+2765, ❦ U+2766 and ❧ U+2767).
- Unicode Consortium, Full Emoji List (every heart emoji, with the artwork each vendor ships).
- Unicode Consortium, UTS #51, Unicode Emoji (the text and emoji variation selectors U+FE0E and U+FE0F, and joined sequences).
- Unicode Consortium, Georgian code chart (ღ U+10E6, the lookalike letter).
- Username and display name rules come from each service’s own help centre and from testing. Game name rules are set per title and change with updates.
More symbol tools
For stars, arrows, crowns and the rest of the symbol set, see the special symbols list. To split a caption with a line rather than a heart, use the text dividers. For frames and brackets around a game name, the nickname symbol generator has the full set, the fancy font generator turns a bio into 𝓐𝓑𝓒 script, and the invisible character tool handles blank name fields and blank lines in captions. If you would rather send a face than a heart, there is a kaomoji collection too.
Related tools
- Special Symbols Copy and Paste
Copy special characters in one click: stars, arrows, hearts, check marks, math signs, curr…
- Emoji Copy and Paste
Copy any emoji in one click: 1,900+ emoji by category with search, the newest emoji added …
- Divider Symbols & Aesthetic Text Lines
Copy aesthetic text dividers for Instagram bios, Discord, Notion and notes: ━━━, ✦ ─── ✦, …
Privacy: every heart on this page is already in the page, and copying happens entirely in your browser. Nothing you copy is sent anywhere. Analytics only counts which category a copy came from, never the character itself and never anything you type.
