AI text watermark remover
Text copied out of ChatGPT, Claude or Gemini can carry characters that never show on screen: zero-width spaces, spaces that only look like spaces, tag characters, variation selectors and so on. They survive every paste and end up in your CMS. Paste a draft below and the page shows you where each one sits, then gives you the text back without them.
Statistical watermarks
Marks like SynthID sit in the choice of words, not in hidden characters, so only different words weaken them. Pressing the button below means the clean copy leaves this site for DeepSeek's servers in China and a rewording streams back. Do not send anything confidential or personal.
The model is DeepSeek's deepseek-v4-flash, chosen because its weights are public and it is not the model most drafts come from. We keep nothing; DeepSeek's API terms and privacy policy decide what happens to the text there, including whether they keep it or train on it. Read the result before you use it: it is a paraphrase, and the model may have changed more than you wanted. The limit is 15000 characters per rewrite and 5 rewrites an hour.
Frequently asked questions
- What does it remove?
- Characters you cannot see and that do nothing where they sit: zero-width spaces and joiners, spaces that only look like a normal space, tag characters, variation selectors, and characters from the private-use range. The count in the rail is exact, because the same text always gives the same result. Characters that do a job stay: the joiners inside a family emoji, the joiners inside Persian or Devanagari words, right-to-left marks in mixed Arabic text, and variation selectors after a Chinese, Japanese or Korean character. Anything the page found but kept is marked as kept, both in the text and in the rail.
- Does it change my writing?
- No. Writing tells such as an em dash, a semicolon or a long sentence are underlined and counted. Nothing else happens to them. They may be exactly what you meant, and a tool that rewrote your text without asking would remove the part worth keeping.
- Will this get my text past an AI detector?
- The hidden-character pass will not, and it is not meant to. Statistical watermarks are a different problem. Tools like SynthID do not add characters. They nudge which words the model picks, so the mark sits in the wording itself. The rewrite panel under the sheet is the one known way to weaken it: a different model rewrites the words. Research on these marks shows that a good rewrite makes them much fainter but does not reliably remove them, so treat the rewrite as a best effort. A tool that promises more is guessing. Clean text is not proof of human authorship, and this page will never claim it is. If your client, journal or platform asks you to say that AI helped, that still applies after either pass.
- Is my text stored?
- Not by us. The hidden-character check runs on our own server. The page sends your text once, gets the answer back, and writes nothing down. There is no account and no history. The rewrite is the exception, and the panel under the sheet says so: pressing that button sends the clean copy to DeepSeek in China, and from then on their privacy policy applies, including whether they keep the text or train on it. Nothing is sent until you press the button, so keep confidential drafts to the free pass. Our privacy policy has the details.
- What runs underneath?
- The hidden-character pass is watermarks-remover by Guillaume Meyer, MIT licensed. We copied it into our code and run it on our own server. The rewrite follows the same project's advice for its second layer: use a model with public weights that is not the model your draft came from. Here that is DeepSeek's deepseek-v4-flash, through their API. The writing tells come from our own writing notes. Related: the GSC data loss calculator.