Invisible Character
Copy a character that shows nothing, or find the ones already hiding in your text.
Most likely to work
Hangul Filler · U+3164
A blank character with a real width, which is what forms that reject an empty value usually accept.
Blank width
These take up space but show nothing. Use one where an empty value would be rejected.
A Hangul syllable placeholder that renders as blank space with a real width. Often accepted where a truly empty value is rejected.
Some systems normalise or strip it, and it is a Hangul letter rather than a space, so search and sorting can treat it oddly.
The empty braille cell. It has a visible width but no ink, so it reads as a blank block of space.
Screen readers may announce it as a braille character rather than skipping it. Avoid it in text that matters for accessibility.
A space that prevents a line break. Web pages and word processors insert it constantly.
It looks exactly like a normal space but does not match a space in search, regex or exact comparisons.
A narrower non-breaking space, common in French typography and unit spacing.
Same matching problem as the regular no-break space, and easier to miss.
A space as wide as a digit, used to align numbers in tables.
Width varies by font, so alignment is not guaranteed everywhere.
A narrow space used for fine typographic spacing.
Often collapsed or converted by editors and content management systems.
A full-width space matching the width of a CJK character. Standard in Japanese and Chinese text.
Very wide in Latin contexts, and not equal to a normal space in comparisons.
Zero width
These occupy no space at all. They control joining, line breaking and direction rather than creating a gap.
A word-break opportunity with no width. Useful for breaking long strings without adding visible space.
Because it has no width, forms that trim whitespace or require visible content often still treat the field as empty.
Prevents a line break between the characters on either side, without adding width.
Invisible in editors, so it is easy to leave behind when copying text.
Stops two characters from forming a ligature or joined shape. Meaningful in Arabic, Persian and several Indic scripts.
Removing it changes how words render in those scripts, so it should never be stripped automatically.
Joins characters together. It is what holds multi-part emoji such as family sequences together.
Deleting it splits emoji into their separate parts and breaks joined scripts.
Also used as a byte order mark at the start of a file. Inside text it is a no-break joiner with no width.
A leading one frequently breaks CSV imports, JSON parsing and code files in ways that are hard to see.
Marks where a word may be hyphenated. It only appears if the line actually breaks there.
Text copied from PDFs and print layouts is full of these, and they silently corrupt search and comparison.
Affects how neighbouring characters are treated as a unit. Renders as nothing.
Rarely intentional in pasted text; usually an artefact.
Sets text direction to left-to-right without displaying anything.
Mixing direction marks into data fields can reorder how text is displayed.
Sets text direction to right-to-left without displaying anything.
Same as above — invisible, but it changes how a whole line renders.
Find hidden characters in your text
Processed in your browser. No signup.
Two different jobs
People arrive here for one of two reasons. Either they need a character that looks like nothing — to leave a bio line blank, to space something out, to satisfy a field that will not accept an empty value — or something has broken and they suspect an invisible character is to blame. This page does both.
Zero width versus blank width
A zero width character takes up no space at all. It exists to control how text behaves: where a line may break, whether two letters join, which direction the text runs. Because it has no width, a form that requires visible content will usually still consider the field empty.
A blank width character does occupy space — it simply has nothing drawn in it. That is why Hangul Filler and Braille Pattern Blank are the ones that tend to work when you need a field to accept something that looks like nothing.
How to use it
- Press Copy invisible character for the one that works most often.
- Or pick a specific character from the tables and copy that.
- To investigate a problem, paste your text into the box and tick Reveal.
- Each hidden character is marked in place with its Unicode name and code point.
Why invisible characters break things
- Search stops matching. A username or product code with a zero-width space in it will not be found by anyone typing the visible characters.
- Comparisons fail. Two values look identical on screen and are not equal, which produces duplicates in a database and mismatches in a spreadsheet.
- Imports break. A byte order mark at the start of a file breaks the first column of a CSV, the first key of a JSON document, or the first line of a script.
- Text copied from PDFs carries soft hyphens. They are invisible until the line wraps somewhere else, and then a hyphen appears in the middle of a word.
Removing them safely
Remove them here strips every invisible character, which is what you want when you are cleaning up data. It is deliberately blunt: zero-width joiners hold multi-part emoji together and matter in Arabic, Persian and several Indic scripts, so removing them changes how that text renders. For a version that separates safe removals from ones that could change meaning, useText Cleaner.
Where these work — and where they may not
No one can promise a given platform will accept a given character. Services normalise input, strip unusual characters and change those rules without announcing it, and a character that worked in a bio last month may be rejected today. If a field refuses one, try another from the blank-width table.
Accessibility
Assistive technology handles these characters inconsistently. Braille Pattern Blank may be announced as a braille character, and Hangul Filler as a Korean letter. Use them for spacing, not in text that has to be read aloud accurately.
Privacy
The text you paste into the checker stays in your browser. Nothing is uploaded.