AI Text Cleaner
See invisible characters in AI-generated text and clean them out, one rule at a time.
Runs in your browser. Nothing is uploaded.
How to use the cleaner
- Paste the text you copied from ChatGPT, Claude, Gemini or another assistant.
- Open What will change to see every character the rules will touch. Invisible characters get a short visible label, such as ZWSP for a zero-width space or NBSP for a non-breaking space.
- Switch rules on or off. The preview and the counts update as you go.
- Check the Clean text tab, then copy the result or download it as a .txt file.
What each rule does
- Invisible characters. Zero-width spaces and joiners, soft hyphens, byte order marks, word joiners, text-direction marks and Unicode tag characters. Emoji that need a joiner, such as family emoji and flags, stay intact.
- Special spaces. Non-breaking, narrow, thin and other look-alike spaces become ordinary spaces, so search and line wrapping behave normally.
- Citation markers. Leftovers from assistants with web search, such as 【4:0†source】 or
:contentReference[oaicite:0]{index=0}. - Markdown symbols. Heading hashes, bold and italic asterisks, backticks, quote markers and horizontal rules go. Links keep their text and, if you want, the address in brackets. Tables become tab-separated rows that paste into a spreadsheet.
- List bullets. Removed, or replaced with • or a hyphen. Numbered lists keep their numbers.
- Em dashes. Replaced with a comma, a spaced hyphen or a spaced en dash. A dash between two numbers becomes an en dash range, like 10–20.
- Smart quotes and the ellipsis character. Curly quotes become straight ones and … becomes three dots, which matters in code, CSV files and strict forms.
- Emoji. Off by default. Switch it on to strip pictographs from headings and bullet points.
- Whitespace. Trailing spaces, double spaces and stacks of empty lines.
What it does not do
The cleaner changes characters and formatting. It does not rewrite sentences, change word choice or make text "undetectable". AI detectors look at wording and style, not hidden characters, so cleaning is about tidy copy, not about hiding where the text came from.
Replacing em dashes with commas is a rule of thumb. Read the result once: sometimes a full stop or a pair of brackets fits the sentence better.
Do ChatGPT and other assistants hide watermarks in text?
No mainstream assistant documents a character-based watermark. OpenAI's textGrain watermark, announced in October 2026, works through the model's word choices and adds no characters, so cleaning neither removes nor reveals it. Hidden characters usually come from copying: special spaces from the chat window, zero-width characters from web pages, or citation markers. The cleaner shows exactly what is in your text.
Is my text sent anywhere?
No. The cleaning runs in your browser, and your text is not uploaded or stored. Only your rule settings are saved in this browser.
What does the hidden text warning mean?
Unicode tag characters can spell out text that nobody can see on screen. They are sometimes used to slip instructions to AI tools inside ordinary-looking text. When the cleaner finds them, it decodes and shows the hidden message, and the invisible-characters rule removes it.
Will it break emoji or other languages?
Emoji built from several characters, such as family emoji, skin tones and flags, are kept together. Some scripts, including Persian and several Indian languages, use zero-width joiners on purpose. If you clean text in those languages, turn the invisible-characters rule off.
Why are my numbered lists unchanged?
The bullet rule only touches -, * and + markers. Numbers carry meaning, so they stay.
Writing tools from our directory
Browse: Writing, AI assistants
AI gaming companion with live voice reactions and customizable roleplay characters