Remove Invisible Characters

Find zero-width spaces, hidden characters and smuggled instructions in text.

Runs in your browser Free · no account

Loading the cleaner…

About the Remove Invisible Characters converter

Text copied out of ChatGPT, Claude, a PDF or a web page often carries characters you cannot see: zero-width spaces (U+200B), non-breaking spaces (U+00A0), byte order marks, soft hyphens. They survive copy and paste, and they cause problems that look inexplicable.

This shows you exactly what is in a piece of text, marks where each hidden character sits, and gives you a clean copy. It also flags text that reads like an instruction aimed at an AI rather than at you.

Why invisible characters cause so much trouble

A non-breaking space looks identical to a normal one, so a CSV column fails to match, a search returns nothing, or a lookup in a spreadsheet quietly returns the wrong row. A zero-width space inside a word breaks find-and-replace without changing how the word looks.

A byte order mark at the start of a file turns the first column heading into something no importer recognises. A soft hyphen is invisible until the line wraps, at which point a hyphen appears in the middle of a word from nowhere.

None of this is visible on screen, which is what makes it maddening. Seeing the characters marked in place is usually the whole fix.

Characters used to hide things

Some ranges have no business appearing in ordinary writing. Unicode tag characters and variation selectors are invisible and carry no meaning in prose, and both have been used to hide a payload inside text that looks completely normal.

Bidirectional controls are more serious again. They change the order text is displayed in without changing what is stored, which means source code can be made to read one way to a human and run another way — the basis of Trojan Source attacks. Anything in these ranges is called out separately here rather than lumped in with stray spaces.

Hidden instructions

If you are about to paste a document into an assistant, or hand it to an agent that can act on your behalf, it is worth knowing whether the document is trying to talk to the model rather than to you. Text that says to ignore previous instructions, that imitates the markers a model uses to tell speakers apart, or that asks the model to keep something from you, is flagged.

Be clear about what this can and cannot do. It matches patterns, so an article about prompt injection will trip it, and an attack written to avoid those patterns will not. It is a reason to look closer, never a clean bill of health. Where an instruction is also concealed with invisible characters, that is called out, because innocent text is rarely hidden.

Frequently asked questions

Why does my essay have zero-width spaces in it?

Usually because it was copied from somewhere that had them — a web page, a PDF, ChatGPT or another chatbot. They are not proof of anything on their own. Zero width space (U+200B) also arrives from ordinary word processors and content management systems, so its presence says nothing about how the text was written.

Will this stop my writing being flagged as AI?

It removes characters that should not be there, which is worth doing on its own merits. But AI detectors work on writing style, not on invisible characters, and they are unreliable in both directions — so no tool, including this one, can promise anything about what a detector will say.

What does "straighten quotes and dashes" do?

It turns curly quotes into straight ones, en and em dashes into hyphens, and the ellipsis character into three dots. That is off by default because those are legitimate typography, not errors — turn it on when the text is going somewhere that only accepts ASCII, such as code or an old system.

Does removing these characters change my text?

Only by removing what was invisible. Zero-width characters are dropped, odd spaces become ordinary spaces, and everything readable is left exactly as it was — accents, emoji and non-Latin scripts included.

Is my text sent anywhere?

No. The text is examined by this page in your own browser and never leaves the device, which matters when the thing you are checking is a contract, a dissertation or an internal document.