What does EU AI Act Article 50(2) require?
Article 50(2) of the EU AI Act requires providers of AI systems — including general-purpose AI models — that generate synthetic audio, image, video, or text content to mark the output in a machine-readable format and make it detectable as artificially generated or manipulated. The law asks for technical solutions that are "effective, interoperable, robust and reliable as far as technically feasible," with the method allowed to vary by content type, implementation cost, and the generally acknowledged state of the art.
The obligation became enforceable on August 2, 2026. Systems already on the market before that date were given a transition period until December 2, 2026 to put the marking requirement in place. On July 20, 2026, the European Commission published its final Guidelines on Transparency Obligations under Article 50, and both the Commission and the AI Board confirmed the industry Code of Practice on Transparency of AI-Generated Content as adequate for demonstrating compliance. Noncompliance with AI Act transparency obligations carries fines of up to EUR 15 million or 3% of worldwide turnover, whichever is higher.
What actually satisfies "machine-readable and detectable"?
For text, the law doesn't mandate a specific technique — it sets an outcome. In practice, the leading compliant approach is a statistical watermark: a method that biases which words a model is likely to choose, using a secret key, without adding, removing, or changing any visible character. Two examples:
Google DeepMind — SynthID-Text
Published in Nature (October 2024) and live in Gemini since 2024. It re-weights token sampling probabilities with a secret key — DeepMind calls it "tournament sampling" — and was validated across roughly 20 million real Gemini responses. No characters are added.
Nature 634:818–823Anthropic watermarking
Announced August 11, 2026: Claude models launched on or after August 2, 2026 carry a SynthID-style statistical watermark. Like SynthID-Text, it works through word-choice bias, not inserted Unicode characters.
TechCrunch, Aug 11, 2026Both methods are covered in more depth on the page explaining what a Unicode text watermark is and how it differs from a statistical one.
Does hidden-character cleaning have anything to do with this law?
No — and it's worth being precise about why, since the two topics get conflated online. The character-level artifacts this site documents, like the narrow no-break space (U+202F) that briefly appeared in OpenAI's o3 and o4-mini output in April 2025, were never a compliance mechanism. OpenAI called that episode "a quirk of large-scale reinforcement learning," not a watermark, and it disappeared within days. It's a formatting byproduct, not a regulatory disclosure signal.
Statistical watermarks like SynthID-Text and Anthropic's watermarking, meanwhile, add zero characters — they only shift which words a model was already statistically likely to pick. That means running text through a cleaner like an invisible character remover neither breaks Article 50(2) compliance nor helps anyone evade it. The table below separates what each mechanism actually is.
| Mechanism | Adds a character? | Article 50(2) relevant? | Affected by cleaning? |
|---|---|---|---|
| Character-level artifacts (U+202F, U+200B, curly quotes, em dashes) | Yes — real code points | No — never a disclosure mechanism | Yes — this is what a cleaner removes |
| Statistical watermarks (SynthID-Text, Anthropic watermarking) | No — word-choice bias only | Yes — the leading compliant approach | No — no characters exist to remove |
| C2PA Content Credentials (image, video, audio, PDF) | No — file metadata, not text characters | Yes — for non-text generative outputs | No — a text cleaner never touches file metadata |
Text and non-text outputs are marked differently under the same law: statistical watermarking for generated text, and C2PA Content Credentials for generated images, video, and audio.
Why this matters if you publish AI-assisted text
If you're a publisher, developer, or business operating in the EU, Article 50(2) is a provider-side obligation — it falls on the company that builds the generative AI system, not on someone who pastes its output into an editor. Cleaning hidden characters out of AI text before publishing is still worth doing for entirely separate reasons: professionalism, avoiding broken formatting from ChatGPT output, and preventing stray artifacts from shipping into a CMS or codebase. It just isn't a compliance action under this specific law either way. If you want to check whether a passage carries character-level markers without altering it, the AI watermark checker reports findings and leaves the text untouched.