ccwatermark

News and public record

Everything publicly known about Anthropic’s marking, with sources. All of it is announcement-level; no technical detail has been published as of 2026-08-10.

Timeline

Date Event
2023 Kirchenbauer et al. publish the green/red logit-bias watermark (KGW)
2024-05 ETH SRI publish black-box detection of deployed watermarks; test GPT-4, Claude 3, Gemini 1.0 Pro
2024-10 Google DeepMind publish SynthID-Text in Nature; deploy on Gemini and open-source the scheme
2025 ETH SRI paper appears at ICLR 2025
2026-08-02 EU AI Act Article 50 transparency obligations bite. Claude models launched in the EU on or after this date support machine-readable marking at launch
2026-08-10 This repository’s baseline collected. No technical documentation exists

What Anthropic has said

From the Claude help centre article:

What is still unpublished

Which cohort every model belongs to (readable, 2026-08-12)

No model list has been published, but the Models API exposes created_at per model, so the cutoff can be applied directly. src/models_snapshot.py:

created_at model cohort
2025-09-29 claude-sonnet-4-5-20250929 pre-cutoff
2025-10-15 claude-haiku-4-5-20251001 pre-cutoff
2025-11-24 claude-opus-4-5-20251101 pre-cutoff
2026-02-04 claude-opus-4-6 pre-cutoff
2026-02-17 claude-sonnet-4-6 pre-cutoff
2026-04-14 claude-opus-4-7 pre-cutoff
2026-05-28 claude-opus-4-8 pre-cutoff
2026-06-07 claude-fable-5 pre-cutoff
2026-06-29 claude-sonnet-5 pre-cutoff
2026-07-24 claude-opus-5 pre-cutoff — by nine days

Every model currently on the API predates 2026-08-02. Zero are in the “marked at launch” cohort. All ten are transitional-cohort models whose marking status Anthropic describes as still being worked on, and which it has never enumerated.

So every result in this repository was collected on a model that is not required to have been marked at launch. That does not make the nulls worthless, but it does mean they test the cohort where the answer is expected to be murky.

Two caveats on created_at: it need not match the date embedded in a model id (claude-haiku-4-5-20251001 reports 2025-10-15), and the endpoint lists available models, so retired ones are absent.

The experiment this sets up

The first model with created_at >= 2026-08-02 is the cleanest test available: marked at launch by Anthropic’s own statement, so it is a positive control rather than a guess. Better still, it can be run against a pre-cutoff sibling on identical stimuli — same vendor, tokenizer and serving stack, differing in marking status. That is a far tighter control for the context-sensitivity confound in findings.md than another vendor’s model.

src/models_snapshot.py is the tripwire; it costs nothing and flags new arrivals against the last snapshot in data/models/.

The load-bearing detail

Anthropic is still adding marking to already-released models: it is “working on models it has already released, to add output marking during the transition period allowed under EU law”, described elsewhere as “transitional marking support” for older models.

This matters more than anything else in this file:

  1. It means a model’s marking status changes over time, so any measurement is only valid at its collection date. This is why data/ is organised by date.
  2. It means null results collected now most plausibly mean not yet marked rather than never marked.
  3. It makes a pre-rollout baseline valuable and perishable — differencing a later run against an earlier one on identical prompts detects activation without needing Anthropic’s documentation at all.

Sources

Secondary coverage repeats the help-centre text closely; treat the help centre as the only authoritative source and the rest as paraphrase.

Watch list

Article 50 is a legal forcing function, so the documentation should appear. Check:


Part of ccwatermark — independent research on AI text provenance marking. Overview · Scope and ethics · Source on GitHub