On Oct 31, xAI (signed as SpaceXSI in its docs) added an "Output Watermarking" page to its API docs: starting November 7, 2026, text generated by grok-4.7, grok-4.6, grok-4.5, grok-4.3, and the reasoning, non-reasoning, and multi-agent versions of grok-4.20 will carry an invisible watermark by default, to comply with the EU AI Act. It covers ordinary text, structured outputs, and tool call arguments on both the Responses and Chat Completions APIs, and works by slightly shaping token choice without adding any characters. Developers can read the x-watermark response header to check; team admins can opt out per model in the Console, but must confirm a legal exception applies, and some models may be locked on.

Key Takeaways

  • ✓Timing: on by default from November 7, 2026, with no code change and no request parameter (xAI docs)
  • ✓Scope: 7 model IDs (grok-4.7, 4.6, 4.5, 4.3, and grok-4.20 reasoning, non-reasoning, and multi-agent) on the global and regional endpoints, across both Responses and Chat Completions
  • ✓Coverage: ordinary text, structured outputs, and tool call arguments; the response header x-watermark: true marks a watermarked output
  • ✓Opt-out: team admins switch it off per model, effective for new requests within 5 minutes and logged in the audit log; admins must confirm a legal exception applies, and some models are locked on
  • ✓xAI's position: no effect on quality or speed; detection is statistical with three outcomes (watermarked, not watermarked, uncertain), and the detection API is by application
🧭

Turn your technical choice into a development budget

Compare 40 dev plans & simulate token costs vs $20/mo subscriptions

🔬

In-Depth Technical Analysis

Background and pain point

Article 50 of the EU AI Act requires generative AI output to be marked in a machine-readable way as AI-generated. Anthropic, OpenAI, Google, and others signed the EU Code of Practice on transparency of AI-generated content and have been rolling out invisible text watermarks; xAI did not sign and was seen as the holdout. Now xAI has published watermarking rules in its API docs with a firm date of November 7. On X, many developers worry about tracking, and some noted that Grok itself had answered the day before that it does not watermark text.

Architecture

The watermark is added during generation: it slightly changes which token the model picks and inserts no characters, markup, or hidden text, so there is nothing visible to strip by copying or removing formatting. Detection is statistical, longer text gives a stronger signal, and results come back as watermarked, not watermarked, or uncertain. Control is per team and per model: every API key on a team shares the setting, changes take effect within 5 minutes, and each change is written to the audit log. The page covers the API only and does not say whether the consumer Grok apps watermark text.

Benchmarks

This is a compliance and platform policy change, so there are no benchmarks. xAI says watermarking does not affect quality or speed, but it has not published detection accuracy, false-positive rates, or how much text is needed for a reliable result, and there are no third-party tests yet.

Getting started

After November 7, log the x-watermark response header with each request for compliance audits. If output is published downstream as if a human wrote it, review your disclosure duties first. If a legal exception really applies, a team admin can open Team settings in the Console, find Model output watermarking, and switch it off per model, watching for locked models. Teams that need to check text can apply for the detection API through the form in the docs.

Action HubReady to adopt this in production?

Benchmark side-by-side against alternatives, or calculate monthly token cost vs subscription break-even.

Up NextAnthropic extends Claude text watermarking to older models including Mythos 5, Opus 4.7/4.6 and Sonnet 4.6, reportedly from November 3
Read Now→