Zero-Width Space Remover
A zero-width space (U+200B) is a character with no width and no glyph — completely invisible, but very real to compilers, parsers and search functions. Paste your text below to find and remove every one of them.
🔒 Runs 100% in your browser — your text never leaves this page.
Where zero-width spaces come from
You almost never type one on purpose. They sneak in when you copy text from websites (some insert U+200B for line-break control), from chat apps like Slack or WhatsApp, from PDFs, from AI chat tools, or from rich-text editors. Some sites even inject them deliberately to break copy-paste or to fingerprint text.
The bugs they cause
Because they are invisible, zero-width characters produce some of the most confusing bugs in everyday computing: a JSON.parse error on JSON that "looks fine", a Python SyntaxError: invalid character pointing at an apparently normal line, a username or API key that fails validation, an Excel VLOOKUP that can't find an exactly-matching cell, a Ctrl+F search that misses text you can clearly see. If you have ever stared at two identical-looking strings that refuse to compare equal — this is usually why.
How this tool handles them
The detector above scans every character against the full family: zero-width space (U+200B), zero-width non-joiner (U+200C), zero-width joiner (U+200D), word joiner (U+2060) and the zero-width no-break space / BOM (U+FEFF), plus dozens of related invisible characters. Each one found is listed by code point with a count, then removed with one click. Emoji sequences and joining scripts (Persian, Arabic, Hindi) are protected automatically, so cleaning never corrupts legitimate text.
FAQ
How do I see zero-width spaces in my text?
Paste the text above — the "Detected characters" panel lists each invisible character by Unicode code point (e.g. U+200B) and how many were found. No more guessing.
Why does my code fail with an "invalid character" error?
A zero-width or non-standard character was pasted into your source code — usually from a website, chat, or AI tool. Paste the offending line here, clean it, and paste it back.
Is removing them always safe?
For ordinary text and code, yes. The two legitimate uses — emoji sequences (ZWJ) and joining control in scripts like Persian — are automatically preserved by the cleaner's guards.
Does my text get uploaded?
No. Detection and removal run entirely in your browser, so it is safe for API keys, credentials and confidential text.