Invisible character detector & remover

Paste any text and ClepBoard highlights every character you can’t see: zero-width spaces, non-breaking spaces, byte-order marks, soft hyphens and direction marks. Then copy it back without them.

Removes only what you cannot see. Every visible character is left exactly as it was.
Paste

Paste anything.

Press Ctrl V anywhere on this page, drop a text file, or try an example:

Clean
1 Paste text on the left
2 See what’s hiding in the X-ray
3 Copy it back, clean
Fixes8 rules on · 0 changes made

Hidden characters

AI & markdown

Typography

Layout & spacing

Keyboard: Ctrl+Enter copies the clean text, Ctrl+Shift+Enter copies rich text, keys 1 to 6 switch presets, X toggles the X-ray.

What are invisible characters?

Unicode contains dozens of characters that take up no visible space or look exactly like a normal space. They sneak in when you copy from web pages, PDFs, Word, Slack, AI chats and spreadsheets. You can’t see them, but software can, which is why they cause bugs that seem impossible:

  • A password or coupon code that “doesn’t match” even though it looks identical
  • VLOOKUP and database lookups that fail on perfectly normal-looking values
  • Words that won’t wrap, search that can’t find a phrase, or a word count that’s off
  • Code that throws SyntaxError: Invalid character on a line that looks fine

What ClepBoard finds

CharacterCodeWhere it comes from
Zero-width spaceU+200BWeb pages, CMS editors, chat apps
Zero-width joiner / non-joinerU+200D / U+200CEmoji, copy-paste from social apps
Byte order markU+FEFFFiles saved by Windows tools, CSV exports
Word joinerU+2060Word processors, typesetting
Soft hyphenU+00ADPDFs, e-books, hyphenated web text
No-break spaceU+00A0Word, Google Docs, HTML  
Narrow no-break spaceU+202FAI chat output, French typography, macOS dates
Direction marksU+200E, U+200F, U+202A–U+202EMixed-language text, spoofed file names

ClepBoard is careful about the cases where these characters are needed: the zero-width joiner inside emoji like 👨‍👩‍👧 and the joiners used in Persian, Arabic and Indic scripts are left alone.

How to use it

  1. Paste your text into the box above (or press Ctrl/⌘ + V anywhere on the page).
  2. Open the X-ray tab to see each invisible character as a labelled chip. Hover a chip for its name and code point.
  3. Copy the cleaned version on the right. Only invisible characters are removed; every visible character stays exactly as it was.

FAQ

Is it safe to remove all zero-width characters?

For normal English text, yes. ClepBoard keeps the joiners that emoji sequences and scripts like Persian or Hindi rely on, so removing the rest will not change how your text looks.

Why do non-breaking spaces matter?

They look like spaces but are different characters, so searches, form validation and spreadsheet formulas treat "10 000" with a no-break space differently from "10 000" with a normal one.

Is my text uploaded?

No. Detection and cleaning run entirely in your browser with JavaScript. Nothing you paste is sent to a server.

Related tools