✍️ Writing · Free

The character you
can't see is the bug.

Smart quotes, zero-width spaces, nbsp, soft hyphens — found, counted, and stripped.

▶︎ How to use — watch it work on real numbers

🔒 Nothing is uploaded — pasted text often isn't yours to share.

Free text cleaner — for the characters you can't see

You paste text from Word, Google Docs, Slack or a PDF, and something breaks: the CSV won't parse, the code won't compile, the search finds nothing, the JSON is invalid. The text looks fine. The problem is that word processors quietly swap straight quotes for curly ones, insert non-breaking spaces where you typed a space, and leave behind zero-width characters that render as literally nothing. Same appearance, different bytes. This text cleaner finds them, tells you how many it found, and strips only what you tick.

What it looks for

Smart quotes (“ ” ‘ ’) → straight quotes. Em and en dashes (— –) → hyphens. Ellipsis (…) → three dots. Non-breaking spaces (U+00A0) and other exotic spaces → normal spaces. Zero-width space, joiner and BOM (U+200B, U+200D, U+FEFF) → gone. Soft hyphens (U+00AD) — invisible until the line wraps in the wrong place. Plus the everyday tidying: double spaces, trailing whitespace, hard line breaks that turn a paragraph into a poem, and tabs.

It shows you before it touches anything

The panel above the switches lists exactly what was found and how many times, so you learn what was wrong with the text instead of just getting a mystery fix. Every switch is optional — if you want your em dashes, leave them. Everything runs in your browser: pasted text is usually someone else's contract, draft or export, and it should not be sent to a stranger's server to have its quotes changed.

Why does pasted text break my code or CSV?
Curly quotes, non-breaking spaces and zero-width characters look identical but are different bytes. Parsers and compilers see the difference; your eyes don't.
What is a zero-width space?
A character that renders as nothing (U+200B). It sneaks in via copy-paste and is invisible — this tool counts them for you.
Is my text uploaded?
No — everything happens in your browser. The text never leaves the tab.

Related: Readability Score · JSON ↔ CSV ↔ SQL · RegEx Tester