CHATGPT TEXT, OCTOBER 2026

ChatGPT watermark remover: what still works after textGrain

There are two very different things people call a ChatGPT watermark. One is stray invisible characters, which a remover deletes in a second. The other is OpenAI's new textGrain signal, which no remover can delete.

Scan my text free Updated

Short answer

A ChatGPT watermark remover can strip hidden Unicode such as narrow no-break spaces and zero-width characters. It cannot delete textGrain, the statistical watermark OpenAI began adding to EU ChatGPT and Codex text in October 2026, because that signal lives in word choice. Only real rewording weakens it.

TWO KINDS OF MARK

Does ChatGPT watermark text in 2026?

Yes for EU users, opt-in for API customers, and no by default everywhere else. Here is what each kind of mark is and where it comes from.

STATISTICAL

textGrain lives in word choice

OpenAI says textGrain adds an invisible statistical signal to the model's word choices, keyed by a secret. A detector holding the same key checks whether the words follow that pattern more often than chance.

CHARACTERS

Hidden Unicode is a separate thing

Narrow no-break spaces, zero-width spaces and soft hyphens are real characters you can find and delete. OpenAI told Rumi the 2025 ones were not a watermark, and users still report U+202F in GPT-5 output.

FILES

Images carry two signals

Per the OpenAI help center, images from ChatGPT, Codex and the API get Content Credentials plus a SynthID watermark, and audio gets SynthID. You can check those at openai.com/verify.

DETECTOR

Only approved researchers can check text

The text detector is not public at launch. Turning the watermark on as an API customer does not unlock it either. Any site that claims to read OpenAI's text watermark today is guessing.
It does not add hidden characters, invisible spaces, or unusual punctuation.
Source: OpenAI Help Center, on textGrain

So a scan that finds odd characters in ChatGPT text has found something real, but not textGrain. Those characters come from model quirks, copy paths and editors, and they are worth removing because they break word counts, search and rendering.

X-RAY A CHATGPT REPLY

The part a remover can see

Illustration
  • U+202FNarrow no-break spaceReplace with a spaceReplace with a space
  • U+00A0No-break spaceReplace with a spaceReplace with a space
  • U+200BZero-width spaceDeleteDelete
  • U+00ADSoft hyphenDeleteDelete

Looks clean to the eye. Every one of these is a real character a remover can delete or swap. textGrain is not on this list, because it lives in which words were picked.

Example reply, not a real ChatGPT output. OpenAI says textGrain adds no hidden characters, so anything this switch reveals came from a model quirk, a copy path or an editor.

HOW WE GOT HERE

When did ChatGPT start watermarking text?

OpenAI built a text watermark in 2024 and held it back. The EU AI Act changed the math two years later.

  1. Aug 4, 2024

    OpenAI shelves a working text watermark

    OpenAI said its method was strong against local edits like paraphrasing but weak against translation or rewording with another model, and that it could stigmatize AI use by non-native English speakers.
  2. Apr 2025

    The U+202F scare

    Rumi found narrow no-break spaces in o3 and o4-mini output and called them a watermark. OpenAI told Rumi the characters were not a watermark, and they disappeared from Rumi's later tests.
  3. Jul 2026

    The EU transparency code fills up

    About 190 organizations had signed the EU Code of Practice on Transparency of AI-Generated Content by the end of July. OpenAI, Anthropic, Google, Meta and Mistral are on the list.
  4. Aug 2, 2026

    EU AI Act Article 50 applies

    Providers must mark generated text in a machine-readable way. New systems are covered at once; systems already on the market get a grace period.
  5. Aug 2026

    Anthropic watermarks Claude worldwide

    Anthropic ships a SynthID-style watermark on Claude text globally, saying it has no durable way to scope it by region yet.
  6. Oct 5, 2026

    OpenAI announces textGrain

    EU ChatGPT and Codex text gets an invisible watermark over the coming weeks, the API gets a worldwide opt-in, and researchers can apply for the detector.
  7. Dec 2, 2026

    Deadline for legacy systems

    Per iubenda's summary of the AI omnibus, Article 50(2) watermarking applies to systems launched before August 2 from this date.

TechCrunch noted that The Wall Street Journal reported in 2024 that OpenAI held off partly over concerns users would switch to rivals. The EU obligation removed that choice for the EU market.

PASTE FROM CHATGPT

Find the invisible characters in your ChatGPT draft.

ClaudeClean scans any pasted text, ChatGPT included, and strips zero-width spaces, narrow no-break spaces and soft hyphens in your browser. Add a rewrite only if you want it.

  • 300 rewrite credits a month
  • 20,000 characters per request
  • .txt, .docx and .pdf files

WHO IS AFFECTED

Who gets the ChatGPT watermark?

Coverage depends on where you are and which OpenAI product produced the text. This is the October 2026 picture from OpenAI's own pages.

TRY YOUR CASE

Pick where you are and what you used

ChatGPTCodexAPIImages
In the EU
Outside the EU
MarkedOpt-inNone announced
ChatGPT, in the euMarked

textGrain on eligible output

  • Rolling out over weeks from Oct 5, 2026
  • On for all plans
  • The watermark adds no hidden characters

Cycling through all eight. Tap a cell to stop.

Every line restates the table below. OpenAI says coverage may vary by product, model, export path and creation date. Source: OpenAI help center.
Which OpenAI outputs carry a watermark, by product and region
ProductText watermarkDefault stateHidden characters
ChatGPT in the EUYes, textGrain on eligible output, rolling out over weeks from Oct 5, 2026On for all plansNone added by the watermark
ChatGPT outside the EUNo text watermark announcedOpenAI: not a global default at launchNone added; stray U+202F seen in 2025
Codex in the EUYes, eligible text outputOnNone added
OpenAI API, worldwideOnly if the customer turns it on for select modelsOff; opt in under Data controls, Text provenanceNone added
Cloud partners serving OpenAI modelsBeing added, availability varies by partnerDepends on the providerNone added
Images from ChatGPT, Codex, APIContent Credentials (C2PA) plus a SynthID watermarkOn, except API image models set for deprecationMetadata plus pixel-level signal

Swipe to compare →

ChatGPT in the EU

Text watermark
Yes, textGrain on eligible output, rolling out over weeks from Oct 5, 2026
Default state
On for all plans
Hidden characters
None added by the watermark

ChatGPT outside the EU

Text watermark
No text watermark announced
Default state
OpenAI: not a global default at launch
Hidden characters
None added; stray U+202F seen in 2025

Codex in the EU

Text watermark
Yes, eligible text output
Default state
On
Hidden characters
None added

OpenAI API, worldwide

Text watermark
Only if the customer turns it on for select models
Default state
Off; opt in under Data controls, Text provenance
Hidden characters
None added

Cloud partners serving OpenAI models

Text watermark
Being added, availability varies by partner
Default state
Depends on the provider
Hidden characters
None added

Images from ChatGPT, Codex, API

Text watermark
Content Credentials (C2PA) plus a SynthID watermark
Default state
On, except API image models set for deprecation
Hidden characters
Metadata plus pixel-level signal

Sources: OpenAI's EU text provenance post and help center, October 2026. OpenAI says coverage may vary by product, model, export path and creation date.

What eligible means is not spelled out

OpenAI says eligible ChatGPT and Codex output, without a public list of which answers qualify. Its help center notes the EU code does not require marks on outputs under 200 tokens (about 150 English words) or on code snippets, so short replies and code are the likely gaps.

OPENAI'S OWN NUMBERS

How well does the ChatGPT watermark survive edits?

All figures below are OpenAI's published test results at a 1% false positive rate. OpenAI says its technical report gets more detail in the coming weeks.

~95%

of 400-token watermarked passages detected (psychology-style answers)

OpenAI

~80%

of 200-token passages detected, so shorter text is harder to catch

OpenAI

66%

detection after 10% of words were swapped for synonyms, down from about 92%

OpenAI

17%

detection after 25% of words were swapped for synonyms

OpenAI

WATCH THE SIGNAL FADE

Swap words, and detection falls from about 92% to 17%

Illustration
sleep-essay.docx

The study found that people who sleep well tend to remember more, focus longer and handle stress with greater ease. Researchers believe sleep helps the brain sort new memories, which explains why a rested mind learns faster and feels calmer.

40 words0% swapped
~92%detected
Unedited watermarked text~92%
Synonyms for 10% of words66%
Synonyms for 25% of words17%
The passage is an example written for this page. The three detection figures are OpenAI's synonym-swap results for 400-token passages at a 1% false positive rate. Source: OpenAI, EU text provenance.

SHORTER TEXT, FEWER CATCHES

Length and language both move the needle

By length

Watermarked passages detected, 1% false positive rate

400 tokens~95%
200 tokens~80%

By language

Two of the 24 official EU languages, as first measured

Spanish69.0%
Romanian42.2%

Dashed line: 60%. OpenAI raised strength below it

Length figures from OpenAI's announcement, language figures from the OpenAI help center. OpenAI raised the watermark strength for languages under 60%.

LANGUAGE

Detection varies by language

Across the 24 official EU languages, OpenAI measured 69.0% detection for Spanish and 42.2% for Romanian, then raised the strength for languages under 60%.

CONSTRAINED TEXT

Math and code carry less signal

When there is only one right next word, the watermark has nothing to nudge. OpenAI reports substantially lower detection for mathematics than for open-ended prose.

QUALITY

No measurable quality cost

On OpenAI's Astra benchmarks the watermark made no meaningful difference, for example 94.44% vs 93.94% on GPQA Diamond. The method is detailed in the textGrain technical report.

STEP BY STEP

How to remove hidden characters from ChatGPT text

This handles the part a remover can fix. It takes under a minute and changes no words.

STEPS 2 AND 3 ON A MAC

Find, clean, check again

Illustration
The grep pattern and the two replace calls are the snippets from the steps below. Hidden characters are drawn as tags so you can see them; a real terminal prints them as nothing.
  1. 01

    Paste the raw output first

    Copy the answer as plain text into a scanner before it touches Google Docs, Word or a CMS. Rich editors can add their own non-breaking spaces and smart quotes, which muddies what came from ChatGPT.
  2. 02

    Find the invisible characters

    The usual suspects are U+200B to U+200D (zero-width), U+FEFF (byte-order mark), U+00AD (soft hyphen) and U+202F (narrow no-break space). On Linux, or GNU grep on a Mac:

    grep -nP "[\x{200B}-\x{200D}\x{FEFF}\x{00AD}\x{202F}]" draft.txt
  3. 03

    Replace spaces, delete zero-widths

    Turning U+202F into nothing glues words together, so swap it for a normal space. Zero-width characters and soft hyphens can go entirely:

    text
      .replace(/[\u200B-\u200D\uFEFF\u00AD]/g, "")
      .replace(/[\u202F\u00A0]/g, " ");
  4. 04

    Normalize lookalike punctuation

    Curly quotes, typographic dashes and Cyrillic or Greek letters that look Latin (homoglyphs) are not watermarks, but they make text look pasted. Swap them for plain keyboard characters where your style allows.
  5. 05

    Rewrite in your own words, if that is the goal

    This is the only step that touches textGrain, and only real rewording counts. OpenAI's numbers show light synonym swaps leave most of the signal; a full rewrite changes the word choices the watermark depends on.
  6. 06

    Disclose where you are asked to

    Cleanup changes characters, not your obligations. If a course, journal or client asks you to declare AI help, declare it; a missing watermark does not prove human authorship, as OpenAI itself states.

SEE THE CLEANUP

Paste ChatGPT text, scan it, rewrite only if you choose

ClaudeClean is not limited to Claude. It treats any pasted text the same way, whichever chatbot wrote it.

01

> source text

Paste or drop a file

Paste a ChatGPT answer or upload a .txt, .docx or .pdf. Up to 2,000 characters works without an account.

02

scan report

3 zero-width1 soft hyphencleanable signals2

Scan locally

Zero-width characters, narrow and regular no-break spaces, soft hyphens and homoglyphs are flagged and removed in your browser. Your text is not stored.

03

before → after

clearusefulanswer

Copied ✓

Optional rewrite

Light, Medium or Strong passes reword AI habits with a before and after diff. Rewriting is best effort and sends text to OpenAI.

PRICING

Clean the text free. Rewrite more with Pro.

The scan and hidden-character cleanup are free. Pro adds room for rewrites and files.

PRO

CLAUDECLEAN PRO

ClaudeClean Pro

$5/ month

Cancel anytime.

  • 300 credits every month (≈300,000 characters of rewriting)
  • 20,000 characters per request
  • Clean .txt, .docx and .pdf files
  • Light / medium / strong intensity
  • Dashboard with history
Checking account…

Free: 10 credits a month with an account, or try 2,000 characters right here without one. Strong rewrites cost 2× credits.

SET EXPECTATIONS

What can a ChatGPT watermark remover do, and what can't it?

Most remover pages blur these together. Here they are side by side.

TWO LAYERS, ONE SENTENCE

What a remover can and cannot touch

Illustration
Layer 1: characters2 hidden characters

Starting next week, invoices arrive as PDFs in your dashboard, and nothing changes for your billing date.

Layer 2: word choiceSignal present

Starting next week, invoices arrive as PDFs in your dashboard, and nothing changes for your billing date.

Hidden charactersPresent
Word choicesSame as the model picked
Visible textUnchanged

A remover handles layer 1 in a second. Layer 2 only changes when the words do.

Highlighted words only show where a keyed signal can sit. textGrain is invisible and spread across word choices; OpenAI's numbers show light synonym swaps leave most of it, while a full rewrite changes the choices it depends on.

A remover can

  • Delete zero-width characters. U+200B, U+200C, U+200D and U+FEFF are removed without changing a visible letter.
  • Fix narrow no-break spaces. U+202F becomes a normal space, so word counts and line wrapping behave.
  • Strip soft hyphens and homoglyphs. Hidden hyphenation points and lookalike letters get normalized.
  • Reword with your approval. A rewrite pass changes word choice, which is the only thing that affects a statistical watermark.
  • Work on any source. ChatGPT, Claude, Gemini or a human draft: characters are characters.

A remover cannot

  • Erase textGrain like a character. There is nothing to delete; the signal is the pattern of words.
  • Tell you whether textGrain is present. Only OpenAI's restricted detector holds the key.
  • Promise a detector outcome. No detector result is promised, here or anywhere honest.
  • Change what you must disclose. Policies on AI use apply whether or not a watermark survives.
  • Fix short or factual text. Short or tightly factual passages hold little signal to start with, so rewriting them changes little.

READ THIS FIRST

What does a ChatGPT watermark prove?

Less than people assume. OpenAI's own list of limits is unusually blunt.

IDENTITY

It does not identify you

OpenAI says the watermark is not tied to a person, account, prompt or conversation, and the detector reports only whether it found a watermark.

AUTHORSHIP

It does not measure your share

A hit means an OpenAI model likely generated or processed part of the text. It cannot say how much a person wrote, edited or decided.

ABSENCE

No watermark is not proof of a human

Text may be too short, edited or translated, may predate the rollout, or may come from another vendor's model.

Cleaning text is not the same as hiding AI use

ClaudeClean removes characters and, if you ask, rewrites style. No detector result is promised. If your school or employer requires disclosure, a clean draft does not change that, and OpenAI says watermarks do not replace visible labels either.

WATCH

How textGrain hides in ChatGPT's word choices

A three-minute explainer posted the day after OpenAI's announcement.

OpenAI textGrain: how can ChatGPT text carry an invisible watermark? by Stepwise. Useful for seeing why a character scanner never touches this kind of mark

FAQ

ChatGPT watermark remover FAQ.

In the EU, yes. OpenAI said on October 5, 2026 that eligible ChatGPT and Codex text gets an invisible textGrain watermark, rolling out over several weeks. Outside the EU it is not on by default, and API customers can opt in.
Not like a character. textGrain lives in which words were picked, so only rewording weakens it. In OpenAI's own test, swapping 25% of words in a 400-token passage cut detection from about 92% to 17%.
OpenAI says textGrain adds none. Stray ones still turn up: in April 2025, o3 and o4-mini output carried narrow no-break spaces (U+202F), which OpenAI called a quirk, not a watermark. Zero-width spaces also arrive from other apps.
Not publicly. OpenAI's text detector is limited to approved researchers and expert organizations who apply. openai.com/verify checks images and audio only. GPTZero, Turnitin and similar tools run their own classifiers, not OpenAI's key.
Yes. The scan works on any pasted text, whichever model wrote it. Hidden-character cleanup runs in your browser; the optional rewrite sends text to OpenAI and is best effort. No detector result is promised.
Stripping stray characters is normal cleanup, and rewording your own text is legal. Schools, journals and employers can still require AI disclosure whatever a watermark says, so check the rules you write under.