Zero width space is a Unicode character at code point U+200B. Unlike Hangul Filler, zero width space has no intrinsic width. It can sit between two visible characters without creating a visible gap. Its main purpose is to mark a possible word or line-break point in text.
U+200B
Zero Width Space
Copy it below and test it in the field you plan to use.
This guide covers where zero width space comes from, where people use it outside of social media bios, and how it compares to the small group of similar zero-width characters people often confuse it with.
Where Zero Width Space Comes From
Zero width space belongs to Unicode’s General Punctuation block. It is a format character used for invisible word separation and line-break control. It has no intrinsic width.
Written English relies on regular spaces to separate words and provide natural places for line wrapping. Languages such as Thai do not normally separate words with spaces, so software needs other ways to identify possible break points. Unicode specifically lists Thai, Myanmar, Khmer, and Japanese as examples where zero width space can be used for this purpose.
Zero width space fills that gap. A writer or piece of software can insert it between characters, and text layout tools can treat it as an invisible break opportunity without creating a normal visible space.
| Feature | Zero Width Space | Regular Space |
|---|---|---|
| Visible width | None | Normal width |
| Marks a line-break point | Yes | Yes, by default |
| Used in text without visible word spaces | Yes | Not normally |
A non-breaking space works on the opposite principle. It keeps its visible width while preventing a line break at that position.
Zero width space is mainly a digital text-layout character. It provides an invisible place where a line can break without adding a normal space.
Non-Social Uses of Zero Width Space
Most people run into zero width space through blank bios and usernames, but it also has real uses outside of that.
- Web design, where it can provide additional break opportunities inside long strings when normal spaces cannot be used. Unicode defines it as a way to enable invisible break opportunities.
- Software testing, where developers can test how an application handles invisible Unicode characters.
- Digital typesetting, where it can mark possible break points in text without adding a visible space.
These uses share one thing in common. Each one relies on zero width space doing its job without creating a normal visible gap.
The Security Side of Zero Width Space
Because zero width space is invisible and can sit inside normal-looking text, it can also be misused to disguise text from simple automated checks.
A filter that looks for an exact sequence of characters may not match the same visible-looking text when an invisible character is inserted inside it. This is one reason software that handles user-generated text may need to account for invisible and formatting characters.
The same property that makes zero width space useful for line breaking can also make it useful for hiding character differences from a simple text check.
This is not a security flaw in Unicode itself. Zero width space is a standard Unicode character with legitimate text-layout uses.
Zero Width Space vs Other Zero-Width Characters
A handful of characters share the “zero width” label, but each one does a different job.
| Character | Code Point | Purpose |
|---|---|---|
| Zero Width Space | U+200B | Marks a possible line-break point |
| Zero Width Non-Joiner | U+200C | Prevents certain characters from joining |
| Zero Width Joiner | U+200D | Allows certain characters to join into a combined form |
| Word Joiner | U+2060 | Prevents a line break |
Unicode defines U+200B as a character for additional invisible break opportunities. U+200D has a different function and is used in emoji sequences and complex scripts. U+2060 Word Joiner works in the opposite direction by preventing breaks.
The zero width joiner works in a completely different direction from zero width space. Instead of marking a possible break point, it can connect characters into a combined sequence, including certain emoji sequences.
How to Tell If Text Already Contains Zero Width Space
Text copied from another source, especially from a webpage or a message, can contain a zero width space without any visible sign of it.
A quick way to check is to place your cursor near a suspicious word and move through the text one character at a time. This can sometimes reveal an unexpected character, but it is slow and easy to miss in longer text.
A more reliable approach is running the text through a dedicated character-scanning tool. It can identify hidden characters instead of relying on a manual check.
Zero Width Space FAQ
What does zero width space actually do?
It marks a possible word or line-break point without adding a normal visible space. Unicode defines U+200B for invisible break opportunities, especially where visible word spacing is not used.
Is zero width space the same as an invisible space bar press?
No. A regular space has a defined width. Zero width space does not have intrinsic width and is used mainly to mark a possible break point.
Does zero width space count toward a character limit?
It can. Character limits depend on how each platform or application counts Unicode characters. Do not assume that an invisible character gives you extra space.
Can zero width space break my code or website?
It can cause problems if it appears somewhere unexpected, such as inside copied code or text that software expects to contain only certain characters. Because it is invisible, it can be difficult to notice.
Is zero width space dangerous or malicious on its own?
No. It is a standard Unicode character with legitimate text-layout uses. It can be misused to disguise text, but that is a use of the character rather than a property that makes the character malicious.
How do I remove zero width space from text I copied?
A dedicated character-scanning or cleaning tool can find and remove invisible characters like this one more reliably than trying to spot them by eye.
Does every platform accept zero width space?
No. Applications can process Unicode formatting characters differently. A character may be preserved, ignored, displayed differently, or removed depending on the software.
Why is zero width space more common in Thai and CJK typesetting tools?
Some writing systems do not use visible spaces between words in the same way English does. Unicode specifically identifies zero width space as a way to mark possible break points in languages such as Thai, Myanmar, Khmer, and Japanese.
Copy zero width space from the button above, then paste it into a plain text editor first to confirm it behaves the way you expect before using it anywhere that matters.
