How-to guide
How to remove hidden characters from ChatGPT text
Copied AI text can carry characters you cannot see. What they are, where they come from, and how to strip them in seconds without breaking emoji or other languages.
Write It teamUpdated 4 min read
Text copied from ChatGPT can carry characters that take up no space, or that look exactly like a normal space: narrow no-break spaces, zero-width spaces and the invisible wrappers around citation markers. To remove them, paste the text into a cleaner that knows these characters, such as our free invisible character remover, and copy the result. The rest of this guide covers what each character is and how to check your text yourself.
What hidden characters show up in ChatGPT text
Most of them are real Unicode characters with a job somewhere, used in the wrong place. These are the ones a cleaner finds most often in copied AI text:
| Character | Code | Where it usually comes from |
|---|---|---|
| Narrow no-break space | U+202F | Some ChatGPT answers, in place of normal spaces or between numbers and units |
| No-break space | U+00A0 | Chat apps, web pages and word processors keeping two words on one line |
| Zero-width space | U+200B | Web pages and apps marking where a long word may wrap |
| Byte order mark | U+FEFF | The start of a file, carried into the middle of text |
| Soft hyphen | U+00AD | PDFs and web pages marking where a word may be hyphenated |
| Private-use characters | U+E200 to U+E202 | The invisible wrappers around ChatGPT citation markers |
| Tag characters | U+E0000 to U+E007F | Hidden text, sometimes used to slip instructions to AI tools |
Each one either looks like a space or does not show at all, which is why they go unnoticed until a search fails to match, a line wraps strangely or a form rejects your text.
Are hidden characters a ChatGPT watermark?
Not in the sense most people mean. In April 2025, the AI company Rumi reported that longer answers from OpenAI's o3 and o4-mini models contained narrow no-break spaces where normal spaces belonged, and asked whether they were a watermark. OpenAI said no, and described them as a quirk of large-scale reinforcement learning.
A mark made of characters would be weak anyway, since anyone can delete it with find and replace. The watermarks that Anthropic (Claude, since August 2026), OpenAI (ChatGPT in the EU, from October 2026) and Google (Gemini) actually use are statistical. They live in which words the model chose, so no character cleaner touches them. Can you remove an AI watermark from text? explains the difference.
How to remove hidden characters
Paste the text.
Open the invisible character remover, or the AI watermark remover if you also want markdown and em dashes cleaned, and paste your text. It is cleaned as you type, in your browser.
Check what was found.
Switch to What changed. Each hidden character is drawn as a small tag where it sat, such as ZWSP for a zero-width space or NNBSP for a narrow no-break space, and hovering a tag shows its full name and code.
Copy the clean text.
Copy plain text, or use Copy for Google Docs to keep headings, bold and lists as real formatting.
What a good cleaner keeps
Some invisible characters are doing a job, and deleting them breaks text. A careful cleaner keeps these:
- Joiners inside emoji. Family and profession emoji are several emoji glued together with zero-width joiners. Remove the joiner and one emoji falls apart into several.
- Joiners in other scripts. Persian, Arabic, Hindi and other languages use zero-width joiners and non-joiners to control how letters connect.
- Direction marks in right-to-left text. Arabic and Hebrew mixed with English rely on them to display in the right order.
Write It's cleaner keeps all three. Characters with no job in your text, like a zero-width space in the middle of an English word, go.
How to check for hidden characters yourself
- Use What changed. The quickest check is to paste the text into the cleaner and look at the tags. Nothing tagged means nothing hidden.
- Compare character counts. If the count before cleaning is higher than after, and you cannot see what changed, invisible characters were the difference.
- Open it in a code editor. Editors such as VS Code highlight invisible and unusual Unicode characters by default, which helps when the text is code or data.
Does removing hidden characters change AI detection?
No. AI detectors judge the writing itself, the words and how they are put together, and deleting characters does not change a single word. How AI detectors work covers that in detail. Cleaning is about making text behave: searches that match, code that runs, spacing that looks normal and no stray markers in your document.
Clean your text now
Paste it in, see every hidden character tagged where it sat, and copy back clean text. Free, and nothing is uploaded.