What is an invisible character?
An invisible character is a Unicode code point that exists inside a string but has no obvious visible glyph. Some are true zero-width control codes used by text engines to shape scripts or join emoji. Others render as blank space because the assigned shape is empty, like the Hangul Filler `U+3164` or the Braille Pattern Blank `U+2800`.
Because invisible characters are still real characters, software counts them, stores them, and includes them when you copy and paste. That is exactly what makes them useful for blank usernames, empty social posts, layout tweaks, and developer testing — and why they sometimes break code, search, and CSV files.
Copy invisible characters
GlyphCopy gives you one-click copy buttons for the most useful invisible characters. Pick a character below, then either copy the single character or set a length and copy a longer blank string. The preview panel shows brackets `[ ]` around the result so you can see how long the run actually is — those brackets are not copied with the text.
If clicking copy does not work in your environment, the tool falls back to a hidden text area so the legacy `document.execCommand('copy')` path still works. You can also tap and hold the result to select it manually on mobile.
Which blank character should you choose?
Most users only need three or four characters. The right pick depends on whether the target app keeps zero-width characters, normalizes spaces, or strictly enforces non-empty fields.
| Character | Code point | Best for | Caution |
|---|---|---|---|
| Hangul Filler | U+3164 | Display-name blanks, visual blank text | Some platforms block it |
| Braille Pattern Blank | U+2800 | Blank-looking symbol | Not zero-width; may be announced by assistive tech |
| Zero Width Space | U+200B | Hidden separation, testing | Often stripped by platforms |
| Zero Width Joiner | U+200D | Emoji and script joining | Can change emoji rendering |
| Word Joiner | U+2060 | Prevent unwanted line break | Usually invisible to humans |
| Non-Breaking Space | U+00A0 | Visible space that does not wrap | Not truly invisible |
Where can you use invisible characters?
Social media bios
Some platforms collapse repeated normal spaces or trim them at the start and end of a bio. A Hangul Filler or a Braille Pattern Blank often survives that cleanup, which lets you push lines apart or align emoji rows the way you want.
Chat apps and blank messages
WhatsApp, Telegram, Discord, and similar chat apps refuse to send empty messages. Pasting one or two invisible characters lets you send a true blank-looking message. Some apps still reject it — test with a friend before relying on it.
Game display names
Players often want a single space or a short blank tag in their display name. Fortnite, Roblox, Free Fire, and similar games have changed their handling of blank names many times, so what works today might not work tomorrow. Use the smallest invisible run that still satisfies the field.
Layout and design testing
Designers paste long blank strings to test wrap behavior in tables, cards, and titles. A Non-Breaking Space is great for keeping units like `10 kg` together, while Zero Width Space lets you offer a soft-wrap point inside a long URL.
Developer testing
QA engineers paste zero-width characters into forms to check that validation, trimming, and persistence behave as expected. Pair this tool with the Unicode Detector page to confirm what survived the round trip.
Why invisible text may not work
Many platforms now normalize Unicode and strip zero-width characters before saving. Search engines often skip them. Username validation may forbid empty-looking names to prevent impersonation. None of this is a bug in the character — it is a deliberate platform choice. If your blank characters disappear, try a different code point or accept that the platform simply does not allow it.
- Whitespace trimming on save
- Unicode normalization (NFKC) collapsing zero-width joiners
- Username rules that require visible characters
- Display layers that render the character but storage layers that do not keep it
How to detect and remove invisible characters
If you paste text from a PDF, an LLM, or a configuration file and it behaves strangely, hidden characters are a likely cause. The GlyphCopy Unicode Detector highlights every zero-width, direction, control, and unusual space character in the input, with the position and code point. You can then remove the categories you do not want and copy the cleaned text back.
Privacy: text is processed in your browser
Everything you type or paste into the tool stays in your browser. GlyphCopy does not upload, log, or store the contents of any input field. If you have a strict policy about test data, you can use the tool offline after the page has loaded.
Responsible use
Invisible characters are convenient for layout and testing, but they should not be used to impersonate other users, hide spam links, evade moderation, or break a platform's rules. Many sites treat unusual blank usernames as a sign of abuse and may suspend accounts. Use the smallest, simplest character that solves your problem.
Sources and further reading
Every code point shown above is defined by the Unicode Standard. The official charts and the Unicode Character Database (UCD) are the authoritative reference for character properties, default rendering, and bidirectional behavior. The UCD is also what platforms apply when they normalize or strip invisible characters during input validation.
- Unicode Code Charts — General Punctuation (U+2000–U+206F): https://www.unicode.org/charts/PDF/U2000.pdf
- Unicode Code Charts — Hangul Jamo / Hangul Filler (U+3164): https://www.unicode.org/charts/PDF/U3130.pdf
- Unicode Character Database (UCD): https://www.unicode.org/ucd/
- Unicode UAX #15: Normalization Forms (NFC / NFKC): https://www.unicode.org/reports/tr15/
- WHATWG HTML — Form-data trimming behavior: https://html.spec.whatwg.org/multipage/input.html