Free generator, copy and paste
Invisible character remover see what’s hiding, then strip it
Some characters take up no space at all. Paste your text and every hidden one is shown with its code, counted, and removed in the clean version.
- hidden characters removed
- hidden characters shown
- what was found
Updated · strikethroughtext.online
Three rows, three jobs
- Hidden characters removed is the clean copy. Zero-width characters are deleted, space look-alikes become an ordinary space, and everything else stays exactly as it was.
- Hidden characters shown keeps your text but puts a badge like ⟦U+200B⟧ wherever something invisible sits, so you can see where it came in.
- What was found gives the count and the names, for example 4 hidden characters: zero-width space (U+200B) ×1, no-break space (U+00A0) ×1, soft hyphen (U+00AD) ×1, zero-width no-break space (BOM) (U+FEFF) ×1.
What counts as invisible
| Character | Code | Where it usually comes from |
|---|---|---|
| Zero-width space | U+200B | Web pages, CMS editors, some chat apps |
| Zero-width non-joiner / joiner | U+200C, U+200D | Persian and Indic text, emoji |
| Word joiner | U+2060 | Typesetting, some AI output |
| Byte order mark (BOM) | U+FEFF | Text files saved on Windows, CSV exports |
| Soft hyphen | U+00AD | Justified text, PDFs, e-books |
| No-break space | U+00A0 | Word, web pages, |
| Narrow no-break space | U+202F | French typography, macOS times, some AI output |
| Thin, hair, em and en spaces | U+2009, U+200A, U+2003, U+2002 | Design tools, PDFs |
| Direction marks and overrides | U+200E, U+200F, U+202A–202E, U+2066–2069 | Arabic and Hebrew text, and pranks that reverse text |
| Blank fillers | U+3164, U+2800, U+FFA0 | “Invisible” names and messages |
Why hidden characters cause trouble
They’re harmless in a chat message but painful elsewhere:
- Code and config. A zero-width space in a variable name or a YAML key produces errors that look impossible, because the line looks correct.
- Search and filters. “invoice” with a hidden character in it won’t match a search for invoice.
- Spreadsheets. VLOOKUP and MATCH fail on cells that look identical, and numbers with a no-break space stay as text.
- Passwords and usernames. A hidden character copied with a password makes it wrong while it looks right.
- Direction overrides. U+202E draws the text after it backwards, which has been used to make a file ending in “fdp.exe” display as if it ended in “exe.pdf”.
About “AI watermarks”
You’ll see tools that promise to remove ChatGPT watermarks. There is no published, confirmed scheme of hidden characters in ChatGPT text. What does turn up in AI drafts are the normal characters above, mostly narrow no-break spaces and the odd zero-width space. Cleaning them is worth doing because they cause the problems listed here, not because it hides who wrote something. For the visible tells, the em dash remover and the Markdown formatter handle dashes and stray asterisks.
Need invisible characters on purpose?
For blank names and empty messages, the invisible text generator has the fillers people use, ready to copy.
Questions people ask
What is a zero-width space?
U+200B, a character that marks a spot where a line may break but draws nothing and takes up no width. It slips into text copied from websites, PDFs and some apps, and it can break searches, passwords, code and spreadsheet formulas because two words that look identical no longer match.
Does ChatGPT add hidden watermark characters to its text?
OpenAI has not said it watermarks text with hidden characters. What people do find in AI output is ordinary Unicode, such as narrow no-break spaces (U+202F) or zero-width spaces, which can come from the model or from copying out of a web page. Either way this tool shows them and removes them; it can’t tell you who or what wrote the text.
Will removing them change how my text looks?
Almost never. Zero-width characters draw nothing, so deleting them changes nothing you can see. Space look-alikes, like the no-break space and thin space, are swapped for a normal space rather than deleted, so words don’t run together.
Why are some emoji left alone?
Many emoji are built with invisible parts. A family emoji is several people joined by zero-width joiners, and the England and Scotland flags use invisible tag characters. Stripping those would break the emoji into pieces, so anything inside an emoji is kept as it is.
How do I remove zero-width spaces in Word or Excel?
In Word, open Replace (Ctrl + H), type ^u8203 in Find what, leave Replace with empty and click Replace All. In Excel, use =SUBSTITUTE(A1, UNICHAR(8203), "") in a helper column. For a quick one-off, paste the text here and copy the clean row.