Skip to the tool

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.

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:

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:

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.