xAI's Grok API will watermark text by default from November 7
Unicorn News Desk ·
Key facts
- Start date
- November 7, 2026
- Models covered
- Seven: grok-4.7, 4.6, 4.5, 4.3 and three grok-4.20 variants
- Default
- On, no code change needed
- Check per response
- x-watermark: true header
- Opt-out
- Team admins, per model, with legal confirmation
xAI will add an invisible watermark to text generated by seven Grok models through its API, switched on by default from November 7, 2026. The company says it is doing so to comply with the EU AI Act, and team admins can opt out model by model only after confirming that a legal exception covers their use.
The change is set out in xAI’s developer documentation, where the company appears under the name SpaceXSI. The page was last updated on October 31, 2026. For developers the practical upshot is twofold: nothing in existing requests has to change, but the text, structured data and tool calls coming back from Grok will carry a hidden signal that xAI can later detect.
What changes for Grok API users on November 7
From November 7, responses from these models include a watermark by default:
- grok-4.7
- grok-4.6
- grok-4.5
- grok-4.3
- grok-4.20-reasoning
- grok-4.20-non-reasoning
- grok-4.20-multi-agent
The watermark is enabled on every xAI API endpoint, including the global endpoint at api.x.ai and any regional endpoint. That means it is not a setting reserved for European developers, even though the stated rationale is European law. It applies to every text generation API, including both the Responses API and the Chat Completions API.
The scope goes beyond ordinary prose. The documentation says the watermark covers the generated text in the response: ordinary text responses, structured outputs and tool call arguments. Tool call arguments are the inputs the model writes when it asks another program or function to act, so agent pipelines that pass Grok-generated JSON to other systems will be carrying watermarked content too.
xAI says there is no parameter to send and that integrations work the same way with or without the watermark. The only visible change to the response is a new HTTP header.
| Item | What the documentation says |
|---|---|
| Start date | November 7, 2026, on by default |
| Models | Seven, from grok-4.20 variants to grok-4.7 |
| Endpoints | Global (api.x.ai) and all regional endpoints |
| APIs | Responses API and Chat Completions API |
| Outputs covered | Text, structured outputs, tool call arguments |
| Per-response check | x-watermark header, value true |
| Detection of arbitrary text | By application only |
| Opt-out | Team admins, per model, takes effect within 5 minutes |
How a watermark that adds nothing to the text works
A text watermark, in this sense, is a hidden statistical signal in the words a model picks, which lets whoever holds the right key say later whether a passage came from the model. It is not a label or a tag.
According to xAI, the watermark is applied while the model generates text: it slightly shapes which tokens the model picks, so it adds no characters, markup or hidden text to the response. Tokens are the small units of text a model chooses one after another as it writes. Because the signal lives in the word choices themselves, a reader notices nothing, and copying and pasting the text leaves no visible trace.

Detection is statistical. xAI scores a piece of text against the watermark and reports one of three results: watermarked, not watermarked or uncertain. Longer text gives a stronger signal. In Pillitteri’s summary, the signal is weak on a paragraph and becomes readable on a full page.
The detector is not public. Access to the detection API is granted by application through a form. Superpower Daily points out that this creates two separate kinds of access: receiving watermarked output, and being able to test a passage. As Pillitteri notes, this means no journalist, teacher or company can currently check a suspicious Grok text on its own.
Checking a response with the x-watermark header
Developers do get a direct, per-request signal. Every response from the Responses API or Chat Completions API can be checked through the x-watermark header. A value of true means the output for that request was generated with the watermark; any other value, or no header at all, means it was not.
The documentation includes examples showing how to read the header with the Vercel AI SDK, the OpenAI Python and JavaScript SDKs pointed at xAI’s base URL, and a raw curl request. In the OpenAI Python SDK, for instance, the example uses a raw-response call to read the headers alongside the parsed output.
For teams that need to show what they marked, logging this header with each request gives a simple record. It only tells you about your own responses, though; it does not let you test text that arrives from elsewhere.
How admins switch it off, and who carries the risk
Control sits with team administrators, model by model, not with individual API-key holders. In the xAI console, admins open the Team settings page and find a row called “Model output watermarking”, which shows On (all models), Off (all models) or Custom. Only team admins see this row.
The steps, as documented:
- Select the settings icon next to the Model output watermarking row.
- Clear the checkbox for each model to opt out (Select all toggles every model at once).
- Select Save, then confirm with Opt Out if a model was turned off.
Changes apply to new requests within five minutes, and the setting applies to every API key on the team. Every opt-in and opt-out is recorded in the team’s audit log, searchable by event ID, description or user.

The confirmation step is the part that carries weight. Opting out asks the team to confirm that an exception under applicable law applies to its use, and that it is solely responsible for any marking, disclosure or other legal requirement. In Pillitteri’s reading, responsibility shifts onto the team that turns the mark off.
Not every team will be able to opt out of every model. The documentation says some models may be locked on for a team; locked models appear in the dialog without a checkbox and cannot be turned off from the console. Superpower Daily calls this the practical constraint: whether a team can actually switch a given model off. The documentation does not say which models are locked or why, and directs questions to the team admin or xAI support.
Why xAI says it is doing this, and what it does not cover
xAI states that it watermarks text model output to comply with the EU AI Act. Superpower Daily notes that this is the company’s stated compliance rationale, not a separate legal assessment.
The change is limited to the developer API. Grok is also available through an app, a website and inside X with a subscription, and for those channels no date has been announced. The API is the channel where developers send a request to the model and get text back, billed by usage.
Watermarking text output is a step other model makers are also taking; Unicorn API recently covered Anthropic’s text watermark for more Claude models.
What it means for builders, and the open questions
For most teams on the seven listed models, the immediate effect is invisible: requests keep working, response formats stay the same apart from the header. The decisions are about policy rather than code.
- Agent and data pipelines are in scope. Because structured outputs and tool call arguments are watermarked, the mark can travel into downstream systems, not just into user-facing text.
- Opting out is a legal decision, not a toggle. Admins must attest that a legal exception applies and accept sole responsibility for disclosure duties. That likely involves whoever owns compliance, not only engineering.
- Quality and speed claims are xAI’s own. The documentation says watermarking does not change response quality or speed. Pillitteri notes there is no independent testing of that promise and suggests production users compare their own benchmarks before and after November 7.
- Detection is probabilistic. On short or heavily edited texts the most likely result is “uncertain”, and the documentation does not say how well the mark survives a rewrite.
- Verification is gated. Only parties granted detector access by xAI can test arbitrary text, so an ordinary reader cannot check a single passage.
One more point to keep in view: the x-watermark header reports what xAI applied to a response, but it is xAI’s own statement in its own response. There is no public way yet to verify the mark independently on a given passage.
What to watch next
The switch flips on November 7. The open items are concrete. Watch which models end up locked on for which teams, since the documentation leaves that unexplained. Watch whether xAI widens access to the detection API beyond its application form. Watch for independent tests of the quality-and-speed claim and of how the mark holds up under editing, which no source reports yet. And watch whether the watermark reaches the Grok app, website or X, for which no date has been announced.
Frequently asked questions
Which Grok models are watermarked from November 7?
xAI's documentation lists seven: grok-4.7, grok-4.6, grok-4.5, grok-4.3, grok-4.20-reasoning, grok-4.20-non-reasoning and grok-4.20-multi-agent.
Do developers need to change their code?
No. There is no request parameter, and the response format is unchanged apart from a new x-watermark header, according to xAI.
How can I tell if a Grok API response was watermarked?
Read the x-watermark header on the Responses API or Chat Completions API response. A value of true means the output was watermarked; any other value, or no header, means it was not.
Can I turn the Grok watermark off?
Team admins can opt out per model in the xAI console, but must confirm a legal exception applies and accept sole responsibility for marking or disclosure duties. Some models may be locked on.
Does the watermark apply to the Grok app or Grok on X?
The documented change covers the API. Coverage reports no announced date for the Grok app, website or X subscription.