Types of Invisible Characters
There are dozens of characters that show nothing on screen — zero-width spaces, joiners, word joiners, soft hyphens and a handful of blanks that are not the ordinary space. Only a few are actually useful, they behave differently from each other, and this page is the list of which is which.
If you just want one to copy, use the generator — it hands you one and checks it will survive. This page explains what you are choosing between.
The characters worth knowing
| Character | Code | Width | What it is for |
|---|---|---|---|
| Hangul Filler | U+3164 |
as wide as a space | The usual choice for a blank username. The computer files it as a letter rather than as blank space, so websites that refuse an empty name accept it, and most cleaning tools walk straight past it. |
| Braille Pattern Blank | U+2800 |
as wide as a space | A Braille cell with no dots raised. The computer files it as a symbol, which gets it through some boxes that refuse the Hangul ones. |
| Zero Width Space | U+200B |
takes no space | The classic zero-width space. It takes up no room at all, which makes it good for padding and poor for blank names. |
| Zero Width Non-Joiner | U+200C |
takes no space | Zero-width non-joiner. It does real work in Persian and Hindi writing, so websites rarely remove it. |
| Zero Width Joiner | U+200D |
takes no space | Zero-width joiner. This is what glues emoji together, which is exactly why apps are reluctant to remove it. |
| Word Joiner | U+2060 |
takes no space | Word joiner. Stops a line breaking without adding any width. Comes through a website tidy-up untouched. |
| Zero Width No-Break Space | U+FEFF |
takes no space | Reads like the toughest one in the list and is not. Browsers count it as blank space, so any website that cuts blank space off the ends deletes it. |
| Hangul Choseong Filler | U+115F |
as wide as a space | Behaves much like the Hangul Filler, and is worth trying when that one is blocked. |
| Hangul Jungseong Filler | U+1160 |
as wide as a space | What the Hangul Filler turns into once a website tidies up your text, which makes it the tougher of the two. |
| Halfwidth Hangul Filler | U+FFA0 |
as wide as a space | A narrower blank, useful when the wider one leaves too obvious a gap. |
| No-Break Space | U+00A0 |
as wide as a space | No-break space. Not hidden so much as unbreakable. It looks exactly like a space, and a line will not wrap at it. |
| Em Space | U+2003 |
as wide as a space | Em space. A wide, ordinary space. Good for spacing out a bio, useless for hiding, because almost any website tidy-up removes it. |
| Ideographic Space | U+3000 |
as wide as a space | Ideographic space. The widest of the lot, used in Japanese and Chinese writing. |
The kinds of hidden character
- Zero-width characters and joiners
- The classic invisible characters. They take up no room, survive most website clean-ups, and are the usual way a hidden message is carried.
- Direction controls
- These reorder text without changing it. Used properly for Arabic and Hebrew, and dishonestly to make computer code read differently from the way it runs.
- Tag characters
- An invisible copy of the normal alphabet. This is how instructions are smuggled into text meant to be read by an AI. Almost nothing else on the web removes them.
- Variation selectors
- These change how the character before them is drawn. Invisible on their own, and a common way to pad out text without anyone noticing.
- Blank letters and marks
- Characters the computer files as letters, even though they show nothing at all. Most cleaning tools miss every one of these, which is why text cleaned somewhere else can still turn something up here.
- Soft hyphens
- Invisible until a word wraps. Breaks search, spell check and copy-paste in documents.
- Other invisible control characters
- Everything else in this family, including the ones no longer in use.
- Unusual spaces
- Wide spaces, thin spaces and the rest. These are swapped for a normal space rather than deleted, so your words stay apart.
- Line and paragraph separators
- Invisible line breaks that most editors do not show. Replaced with a normal line break.
The two kinds, and why it matters
Every character in the table is one of two sorts, and picking the wrong sort is the single most common reason this trick fails.
- Space wide — shows nothing, but holds a gap open. Use these for blank usernames, empty bio lines and empty messages. Most websites refuse a name that is completely empty, and one of these is not empty as far as they are concerned.
- No width — shows nothing and takes no room at all. Use these to pad text without moving anything. A poor choice for a username, because many sites read the field as blank and reject it.
Why the same character works here and fails there
Before a website saves what you typed, it tidies it up. It trims blank space off the ends, squashes repeated spaces into one, and swaps some unusual characters for plainer ones.
Each of those steps destroys some of these characters and leaves others untouched. Two examples that catch people out:
- U+FEFF sounds like the safest choice and is not. Browsers count it as blank space, so trimming deletes it and you are left with nothing.
- U+3164, the usual blank username character, gets swapped for a different one when a site tidies up. Your name looks right when you save it and reads differently afterwards.
Rather than guess, the generator runs those three checks on whatever you copy and tells you which ones it passed.
Finding them in someone else’s text
The table above is for choosing one. If you want to know what is already inside a piece of text, that is the other direction:
- The detector shows you what is hidden in your text, marks where each one sits, and reads back any hidden message.
- The remover takes them all out and tells you what came out.
Common questions
Which one should I just use?
Hangul Filler (U+3164) for anything name-shaped, because it holds a space open and websites accept it as a real character. If a site rejects it, work down the table — they fail in different ways, so the next one often gets through.
Why are there so many?
Almost none of them were invented for this. They exist to join letters in Persian, mark text direction in Arabic and Hebrew, control where words break, or fill gaps in Korean. Being invisible is a side effect people found a use for.
Can I type these on a keyboard?
Not directly on most devices, though there are a few ways on a desktop — typing the code and pressing Alt and X in Word, or the character viewer. The guide to creating invisible text covers all five methods. Copying one is still the practical route, which is what the generator is for.
Are they safe to use?
For a blank name or a spaced-out bio, yes — that is ordinary. Hiding words inside a document to mislead someone, or the software reading for them, is a different matter and has had real consequences for the people who did it.