Invisible Character Detector
Paste any text. Hidden characters light up in yellow with their code, and you can clean them out in one click. Useful for text from PDFs, websites, AI tools or chats that looks fine but breaks things.
| Name | Code | Count | Type |
|---|---|---|---|
| Thin Space | U+2009 | 1 | Space |
| Hangul Filler | U+3164 | 2 | Letter |
| Zero Width Space | U+200B | 1 | Format |
| No-Break Space | U+00A0 | 1 | Space |
| Narrow No-Break Space | U+202F | 1 | Space |
| Zero Width No-Break Space | U+FEFF | 1 | Format |
| Unicode | U+3164 | |
|---|---|---|
| HTML (hex) | ㅤ | |
| HTML (dec) | ㅤ | |
| JavaScript | \u3164 | |
| CSS | \3164 | |
| UTF-8 | E3 85 A4 | |
| URL | %E3%85%A4 |
Runs in your browser. Nothing you type is saved or sent.
How the invisible character detector works
Hidden characters text editors usually keep out of sight are what this detector reveals. Paste any text, and every invisible or unusual space character gets a yellow label with its code.
Detector tabs and options
- Paste box: paste text from any source.
- Load example: fills the box with sample text that holds hidden characters, so you can see how it works.
- Clear: empties the box.
- Also highlight normal spaces: marks regular spaces too, handy for spotting double spaces.
- Stats: total characters, how many are invisible, and how many types.
- What's hidden tab: your text with a yellow code label at each hidden character.
- List tab: each character's name, code, count and what it does.
- Clean text tab: Remove zero-width & fillers, Turn odd spaces into normal spaces, and Merge double spaces. It shows how many characters were removed and has a Copy clean text button.
- Code values tab: the codes for each character found.
How to read the result
Each yellow label is one invisible character with its code, such as 200B for a zero width space. The List tab counts how often each one appears, so you can see which matters most. The Code values tab shows its HTML, CSS and JavaScript codes.
When should you check text?
Before pasting into a password field, a spreadsheet formula, code, an SEO title or a form that keeps rejecting input. When text looks right but still fails, hidden characters are the most common cause.
Where do hidden characters come from?
Text copied from PDFs, websites, ChatGPT or WhatsApp often carries zero-width spaces and no-break spaces. It looks normal but can break passwords, spreadsheet formulas, code and SEO titles.
How to use it
Paste your text, check what's highlighted, review the list, then copy the clean version from the Clean text tab.
The characters we see most
No-break space (U+00A0) from websites and documents, narrow no-break space (U+202F) between numbers and units, zero width space (U+200B) from text editors, and U+FEFF at the start of files. The full list is on the Unicode list page.
Find hidden characters in text by symptom
Hidden characters in text rarely announce themselves. Usually you notice a strange symptom first. This table links common problems to the hidden character that most often causes them.
| Symptom | Likely hidden character | What to do |
|---|---|---|
| Password or code is rejected | U+200B or U+00A0 | Remove zero-width and odd spaces |
| Spreadsheet lookup does not match | U+00A0 | Turn odd spaces into normal spaces |
| File starts with  | U+FEFF (byte order mark) | Remove it or save without BOM |
| Words will not wrap at the line end | U+00A0 or U+2060 | Replace with a normal space |
| Search cannot find a word you can see | U+200B or U+00AD | Remove zero-width characters |
Once you know which character is the cause, the invisible character remover can clean it out.
Reading the codes behind a hidden character
Each hidden character has a code like U+200B. The part after "U+" is a hexadecimal number that identifies the character. The detector also shows the same character in other formats:
- HTML:
​, which you can type into a web page. - CSS:
\200B, used in thecontentproperty. - JavaScript:
\u200B, used inside strings.
These codes are useful when you want to search for a character in an editor, write a find-and-replace rule, or tell a developer exactly what you found.
When a hidden character belongs there
Not every hidden character is a mistake. Some are needed for text to display correctly:
- Zero Width Joiner (
U+200D): builds combined emoji. Removing it can split an emoji apart. The invisible emoji page explains how this works. - Zero Width Non-Joiner (
U+200C): needed in Persian and some Indic scripts to control how letters join. - Left-to-Right and Right-to-Left marks (
U+200E,U+200F): keep mixed Arabic, Hebrew and English text in the right order. - Soft Hyphen (
U+00AD): marks where a long word may break.
Check the highlighted result before you delete everything. If the text is in one of these languages, remove only the characters you are sure about.
Checking sensitive text privately
The detector runs in your browser, and nothing you paste is stored or sent. That makes it safe for checking text like passwords, private messages or contract wording before you use them.
A good habit is to check any hidden character text you copy from a source you do not control, such as a PDF, a web page or an AI chat tool, before it goes into a form, a spreadsheet or code. It takes a few seconds and can save a long search for a bug you cannot see.
For longer reads about where hidden characters come from, browse the BlankText.id blog.
Frequently asked questions
Is my text sent to a server?
No. Everything runs in your browser.
Does it remove normal spaces?
No, unless you choose “Merge double spaces”.
Does it work on a phone?
Yes. Paste text from any app on your phone, then copy the result back into the app you need.
Can the detector find characters in a whole document?
Yes. Copy all the text from the document and paste it in. Very long texts may take a moment to highlight.
Why are normal spaces highlighted?
You turned on Also highlight normal spaces. Turn it off to see only the invisible and special characters.