An invisible name is a profile name built from Unicode characters that take up space but show no mark. The four best known are U+3164 Hangul Filler, U+2800 Braille Pattern Blank, U+00A0 No-Break Space and U+200B Zero Width Space; in our 16 September 2026 code test, only U+3164, U+2800 and U+200B survived trim().
What is an invisible name?
An invisible name is a display name whose visible text is empty: the field holds one or more blank Unicode characters, so the app has something to save while people see a gap. It is also called a blank name, an empty name or an invisible character name. The trick only works in a name field that accepts Unicode, such as the display name on WhatsApp, Instagram, Discord or TikTok, and not in a username or handle, where WhatsApp, Discord and TikTok allow only letters, numbers, periods and underscores.
Three things decide whether a blank character works: how the Unicode Standard classifies it (a space, a letter or a symbol), whether the app strips whitespace before saving, and whether the font on the reader’s phone draws it as empty. The sections below measure each one instead of guessing. If you want a visible name with style instead, the SnapNick nickname generator turns any word into 21 styled versions you can copy.
Which invisible characters can you copy?
You can copy 23 different blank and zero-width characters on this page, each labelled with its code point because the character itself is invisible. Tap a button: the label stays on this page and only the blank goes to your clipboard. Start with U+3164 or U+2800 — both have visible width, and code does not treat either as whitespace.
Space-width blanks (Unicode space separators)
These eleven are official Unicode spaces (category Zs) of different widths. They look like a normal space, which also means most apps treat them as one and remove them from the start and end of a name.
Zero-width characters
Zero-width characters take no room at all. They are format controls (category Cf) used for joining or breaking text, so a name made only of them usually looks like an empty field and may be rejected as empty.
Ready-made blank strings
Some name fields need more than one character, or you may want a longer empty line for a bio or message. These strings repeat a blank 2 to 20 times.
Is U+3164 a space? How blank characters compare in Unicode and in code
No — U+3164 Hangul Filler is not a space. Unicode classifies it as a letter (Lo), and U+2800 Braille Pattern Blank is a symbol (So). Neither has the White_Space property, so Python’s str.strip(), JavaScript’s trim() and the \s regex leave both untouched, while U+00A0 and the other space separators are removed.
| Code point | Unicode name | Category | White_Space property | Python isspace() / strip() removes | JavaScript \s / trim() removes | Default ignorable |
|---|---|---|---|---|---|---|
U+3164 |
Hangul Filler | Lo | No | No / No | No / No | Yes |
U+2800 |
Braille Pattern Blank | So | No | No / No | No / No | No |
U+00A0 |
No-Break Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+2005 |
Four-Per-Em Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+2007 |
Figure Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+2008 |
Punctuation Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+200B |
Zero Width Space | Cf | No | No / No | No / No | Yes |
U+115F |
Hangul Choseong Filler | Lo | No | No / No | No / No | Yes |
U+1160 |
Hangul Jungseong Filler | Lo | No | No / No | No / No | Yes |
U+FFA0 |
Halfwidth Hangul Filler | Lo | No | No / No | No / No | Yes |
U+3000 |
Ideographic Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+2003 |
Em Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+2009 |
Thin Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+202F |
Narrow No-Break Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
U+2060 |
Word Joiner | Cf | No | No / No | No / No | Yes |
U+FEFF |
Zero Width No-Break Space | Cf | No | No / No | Yes / Yes | Yes |
U+0020 |
Space | Zs | Yes | Yes / Yes | Yes / Yes | No |
We measured every row with code on 16 September 2026: str.isspace() and strip() in Python 3.9 (Unicode 13.0 data), and /\s/, trim(), \p{White_Space} and \p{Default_Ignorable_Code_Point} in Node.js 22 (Unicode 17.0). Two results surprised us. First, U+FEFF is not a Unicode whitespace character, yet JavaScript’s trim() removes it because the language adds it to its own whitespace list. Second, PHP’s plain trim() only strips the ASCII space and control characters, so even U+00A0 survives it — a server built in PHP may keep a no-break space that a JavaScript app would delete.

Normalization matters too. Under NFKC, the form many systems use to compare names, U+00A0 and the en, em and thin spaces all turn into a plain U+0020 space, which is then easy to trim. U+3164 and U+FFA0 turn into U+1160 Hangul Jungseong Filler — still not whitespace. U+2800 does not change. Whether a given app normalizes names is not documented by the platforms we checked, but it shows why the filler and braille blanks are more likely than space-type blanks to survive a cleanup step. The official code charts for Hangul Compatibility Jamo and Braille Patterns list both characters, and Wikipedia keeps a full list of whitespace characters.
How wide is each invisible character?
U+3164 Hangul Filler is almost a full square wide — 0.92 em in Noto Sans CJK KR — while U+2800 is about 0.7 em and U+00A0 about a quarter em. Zero-width characters measure 0. A wider blank makes a name look more deliberately empty; a narrow one can look like a typing mistake.
| Code point | Name | Advance width (font) | UTF-8 bytes | UTF-16 units |
|---|---|---|---|---|
U+3000 |
Ideographic Space | 1.00 (Noto Sans CJK KR) | 3 | 1 |
U+2003 |
Em Space | 1.00 | 3 | 1 |
U+3164 |
Hangul Filler | 0.92 (Noto Sans CJK KR) | 3 | 1 |
U+115F |
Hangul Choseong Filler | 0.92 (Noto Sans CJK KR) | 3 | 1 |
U+1160 |
Hangul Jungseong Filler | 0.92 (Noto Sans CJK KR) | 3 | 1 |
U+FFA0 |
Halfwidth Hangul Filler | 0.92 (Noto Sans CJK KR) | 3 | 1 |
U+2800 |
Braille Pattern Blank | 0.73 (DejaVu Sans), 0.70 (Noto Sans Symbols 2) | 3 | 1 |
U+2007 |
Figure Space | 0.57 (Noto Sans), 0.64 (DejaVu Sans) | 3 | 1 |
U+2002 |
En Space | 0.50 | 3 | 1 |
U+00A0 |
No-Break Space | 0.26 (Noto Sans), 0.32 (DejaVu Sans) | 2 | 1 |
U+0020 |
Space | 0.26 (Noto Sans), 0.32 (DejaVu Sans) | 1 | 1 |
U+2008 |
Punctuation Space | 0.27 (Noto Sans), 0.32 (DejaVu Sans) | 3 | 1 |
U+2005 |
Four-Per-Em Space | 0.25 | 3 | 1 |
U+2009 |
Thin Space | 0.17 (Noto Sans), 0.20 (DejaVu Sans) | 3 | 1 |
U+202F |
Narrow No-Break Space | 0.17 (Noto Sans), 0.20 (DejaVu Sans) | 3 | 1 |
U+200A |
Hair Space | 0.10 | 3 | 1 |
U+200B |
Zero Width Space | 0 | 3 | 1 |
U+2060 |
Word Joiner | 0 (DejaVu Sans) | 3 | 1 |
U+FEFF |
Zero Width No-Break Space | 0 | 3 | 1 |
How we measured: the advance width is the horizontal space a font reserves for a character, read from each font file’s metrics table and divided by its units per em. A dash (—) means that font has no drawing for the character, so your phone borrows one from another font and the width follows that font instead. A canvas text renderer gave the same figures for U+3164, U+2800, U+00A0 and U+200B. Phones use their own system fonts, so treat these as relative sizes, not exact pixels.

Storage size can matter where a platform counts bytes instead of characters: every blank on this page is one UTF-16 unit, but U+3164 and U+2800 take 3 bytes in UTF-8, against 1 byte for an ordinary space.
How do you make an invisible name?
To make an invisible name, copy a blank character such as U+3164, open the name field of the app, delete the current name, paste the blank and save. If the app says the name is empty or invalid, paste two or three blanks or switch to U+2800.
- Tap
U+3164 Hangul Fillerat the top of this page — the blank is now on your clipboard. - Open the profile, display name or nickname screen in your app. Remember that a username or @handle will not accept it.
- Select everything in the name field and delete it, so no letters or ordinary spaces are left.
- Long-press the empty field and choose Paste. The cursor moves a little to the right even though nothing shows.
- Save. If you see an error such as “name can’t be empty”, try three fillers, then U+2800, then a nearly blank name such as
ㅤ.ㅤfrom the list further down.

An invisible name only changes the display name you control. It is different from a username, which identifies your account, and from a contact name, which another person saves for you on their own phone and which your blank name does not replace.
Does an invisible name work on WhatsApp, Instagram, Discord and TikTok?
Official help pages do not say whether blank characters are allowed in display names on WhatsApp, Instagram, Discord or TikTok. What WhatsApp, Discord and TikTok do state is that usernames take only letters, numbers, periods and underscores, so an invisible username is not possible on those three. Instagram does not publish a username format at all; its help page only suggests adding periods, numbers or underscores when the name you want is taken, so we would not count on a blank @username there either.
| Platform | Username / handle | Display or profile name | Blank or invisible names |
|---|---|---|---|
| 3 to 35 characters; lowercase a–z, 0–9, underscores and periods; not only numbers | Profile name set in Settings | Not documented | |
| Format not published; help only suggests adding periods, numbers or underscores when a name is taken | Name field takes styled Unicode | Not documented | |
| Discord | Lowercase a–z, 0–9, period and underscore | 1–32 characters; special characters, spaces and emoji allowed | Not documented |
| TikTok | 2–24 characters: letters, numbers, underscores, periods (no period at the end) | Separate name field | Not documented |
| — | Must be the name you use in everyday life | Symbols, repeating characters and characters from multiple languages are listed as not allowed |
Sources, all read on 16 September 2026: WhatsApp How to create and manage your username, Instagram How to change your Instagram profile information and What can you do if an Instagram username is already claimed, Discord New Usernames and Display Names, TikTok Changing your username and Facebook Names allowed on Facebook. We could not test pasting on the apps themselves, so where a page is silent we say so rather than promise a result. Apps also change their filters without notice, which is why the grid above offers several different kinds of blank.
On Instagram the split between the @username and the Name field decides everything: a blank can only go in the Name field. Our guide to Instagram nicknames and the username vs Name field explains both fields with plain and styled name ideas.
How do you keep the spaces in a styled name?
Replace each ordinary space with U+3164. Styled names such as ⋆ Riya ⋆ depend on the gaps around the letters, and an app that trims or collapses spaces can push the symbols against the name; a Hangul filler is not whitespace, so the gap stays.
Styled names from the SnapNick generator
These 16 names are real output from the SnapNick generator for Aarav, Riya, Ghost and Kabir, copied on 16 September 2026, with the spaces they came with: ordinary spaces around the symbols and thin spaces (U+2009) between spaced-out letters. Both are whitespace to trimming code.
The word Invisible, styled
Prefer a name that says it instead of hiding it? These 15 versions of Invisible also come straight from the generator; swap their spaces for U+3164 in the same way.
The same names with invisible spaces
Each ordinary or thin space below is now a U+3164 Hangul Filler. They look nearly identical here, but trimming code can no longer eat the gaps.
Almost-blank names
When an app refuses a fully empty name, a single small mark between two blanks is the closest thing: it reads as empty at a glance and still passes a “name can’t be blank” check.
Which symbols, kaomoji and emoji suit a blank name?
Quiet ones: tiny dots and lines, peeking or shy kaomoji, and ghost or bubble emoji keep the empty look while giving people something to recognise. Pair any of them with a blank from the top of the page.
Tiny symbols to put between blanks
Peeking and hiding kaomoji
Ghost, bubble and mystery emoji
Emoji names with invisible padding
An emoji wrapped in two blanks sits in the middle of the name field instead of hugging the left edge.
What are the risks of an invisible name?
An invisible name can be removed by the platform, can make you hard to find, and can confuse people who rely on names to know who is messaging them. None of the platforms above promises that a blank name will stay.
- Policy: Facebook’s name rules list symbols, repeating characters and characters from multiple languages as not allowed, and a Korean filler in an English-language profile may fall under that rule.
- Search: people cannot type a blank, so searching for your name will not find you; keep your username recognisable.
- Trust: in group chats a nameless member looks suspicious, and because blank names are also used to hide identity, some people will not reply.
- Accessibility: screen readers may skip the name or announce nothing, so a person using one cannot tell who sent a message.
- Display: on a phone whose fonts lack U+3164 or U+2800, the name can show as an empty box instead of a blank. If that happens, switch to U+00A0 or an almost-blank name.
Invisible name FAQ
How can I copy a blank name?
Tap one of the labelled buttons at the top of this page, such as U+3164 Hangul Filler. The button copies only the invisible character, not the label, and you can paste it straight into a name field.
How do you type a blank name?
Most keyboards cannot type a blank character. Copy it instead: tap U+3164 or U+2800 above, delete the old name, and paste. A normal space from your keyboard is usually trimmed away when you save.
How do you make a username blank?
Not on WhatsApp, Discord or TikTok: their help pages allow only letters, numbers, periods and underscores in a username (checked September 2026). Instagram does not publish a username format, so a blank @username there is not something to count on. Put the blank in a display name or nickname instead.
What is a blank name?
A blank name is a display name made only of invisible Unicode characters, so the field is not empty but nothing shows. It is the same thing as an invisible name or empty name.
Is U+2800 a space?
No. U+2800 Braille Pattern Blank is a symbol (category So): it is a braille cell with no dots raised. Code does not treat it as whitespace, which is why it is not trimmed.
Can I use an invisible name on Discord?
Discord says display names can be 1 to 32 characters and include special characters and spaces, but it does not mention blank characters. Usernames stay limited to lowercase letters, numbers, periods and underscores.
Type a keyword and get styled variants you can copy straight into your profile.