{"slug": "how-claude-could-watermark-text-without-invisible-characters", "title": "How Claude Could Watermark Text Without Invisible Characters", "summary": "Anthropic's Claude will watermark AI-generated text as part of the EU AI Act, using a statistical fingerprint in word choices rather than invisible characters, according to a technical analysis. The watermark survives copy-paste and some editing, but its effectiveness in code generation remains unclear.", "body_md": "Claude said they’ll be [watermarking the text it generates](https://support.claude.com/en/articles/16266773-how-claude-marks-ai-generated-content) as part of the EU AI Act for transparancy. Not a simple “AI generated” label, and not some invisible characters hidden between words either. I think the watermark will be baked into the text itself.\n\nEvery time an LLM generates text, it’s choosing between a bunch of possible next tokens. Roughly:\n\n```\ncat       9%\ndog       7%\nkitten    3%\nanimal    2%\n```\n\nA watermark could in theory nudge those choices. Give certain tokens a tiny edge based on some secret pattern only the model (and whoever built it) knows about. You’d never notice a single choice being off, but string together a few hundred or a few thousand tokens and you get a statistical fingerprint. Essentially, statisical but imperceptible word choices is the watermark.\n\nAnthropic hasn’t said exactly how they’re doing it, so take the above as “one way this could work” rather than “here’s what Claude does.” [Their docs](https://support.claude.com/en/articles/16266773-how-claude-marks-ai-generated-content) don’t go much deeper than the marketing version either.\n\nThe thing that sticks out to me is that it survives copy and paste. People online are already thinking “just copy/paste it into a text editor and delete the invisible characters” but if the signal is the words themselves, good luck. Anthropic says it can survive some editing as well.\n\nIt’s not bullet proof though. Modify the text enough and the signal probably falls apart pretty quickly. Which makes sense if you’re relying on a very specific statistical pattern in word selection.\n\nThe bit I actually care about is code, and it isn’t clear to me how it’ll work there. Prose has a ton of ways to say the same thing, plenty of room for a model to quietly prefer one token over another without you ever noticing. Code doesn’t give you that luxury.\n\n```\nif user.isAuthenticated {\n    await syncData()\n}\n```\n\nNot a lot of wiggle room there. Claude can’t just swap tokens around for the sake of a fingerprint if doing so breaks the syntax or changes behaviour. Anthropic says watermarketing includes Claude Code and API usage, but how that actually holds up in something as constrained as code, I have no idea. That’s the part I want to see more on.", "url": "https://wpnews.pro/news/how-claude-could-watermark-text-without-invisible-characters", "canonical_source": "https://www.jrzs.dev/blog/claude-watermarking-ai-text", "published_at": "2026-08-11 00:00:00+00:00", "updated_at": "2026-08-11 10:36:05.617296+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-policy", "large-language-models"], "entities": ["Anthropic", "Claude", "EU AI Act"], "alternates": {"html": "https://wpnews.pro/news/how-claude-could-watermark-text-without-invisible-characters", "markdown": "https://wpnews.pro/news/how-claude-could-watermark-text-without-invisible-characters.md", "text": "https://wpnews.pro/news/how-claude-could-watermark-text-without-invisible-characters.txt", "jsonld": "https://wpnews.pro/news/how-claude-could-watermark-text-without-invisible-characters.jsonld"}}