AI Output Provenance Means Two Different Records, and Only One Is Yours
AI output provenance gets treated as one problem when it is two. Model-layer watermarking answers whether a system produced a piece of content. It says nothing about which identity inside an enterprise generated a specific output, under which policy, at what time. NIST catalogs the technical approaches to the first question. Almost nobody has built the second record, and it is the one an auditor actually asks for.

Google's SynthID embeds a statistical signal in how a model selects tokens, detectable later without changing what the text says. C2PA's Content Credentials attach signed metadata to a file describing its edit history. Model providers now ship both approaches, plus classifier-based detection, and NIST's overview of technical approaches to digital content transparency catalogs them side by side. Every one of these answers the same question: did a generative system produce this content. None of them answers the question a compliance team actually gets asked, which is which identity inside the organization generated this specific output, under what policy, at what moment.
TL;DR
- Model-layer watermarking and enterprise provenance are different records answering different questions, and most organizations only have the first.
- Watermarking proves a system generated content. It says nothing about which employee, agent, or service account triggered the generation.
- The provider controls the watermark and can change or drop it. The deployer controls nothing about that record.
- An enterprise's own per-request log, tied to identity and policy state, is the only provenance record the deployer actually owns.
Two provenance questions, one gets answered
"Was this AI-generated" and "who inside our company generated it" sound like the same question asked two ways, but they describe two different events. The first is a property of the content itself, established once at generation time by the model provider. The second is a property of an organizational event, established by whichever system sat on the request path when the generation happened.
A marketing team using an approved LLM to draft a press release and a compromised service account using the same model to draft a phishing email produce content with the identical provenance mark, if any mark exists at all. The watermark, where one exists, cannot distinguish the two, because it was never built to. C2PA's own specification describes Content Credentials as answering questions about a piece of media, not about the actor who requested it inside a specific company. I covered the same identity gap from the request side in the post-authentication gap piece: authentication tells you who is calling, and neither authentication nor a content watermark tells you whether this specific call was permitted.
Watermarking is real, and it is not yours
Anthropic, OpenAI, and Google have all shipped some form of output marking in 2026, at the model layer. Anthropic's own rollout in August is a useful case study in how quickly the durability of a provider-controlled mark gets contested. That is real progress on the public-facing question of AI-generated content, and DeepInspect does not compete with it or claim to replace it.
It is also a record the deployer does not control. The provider decides which models get marked, how the mark is embedded, when a detector ships, and whether the scheme changes in a future model version. A compliance officer who needs to answer, in writing, which of their own employees or agents generated a specific output cannot query a provider's watermark for an answer keyed to their internal identity system. The watermark was built to answer a different customer's question: the public's, not the deployer's.
The gap shows up at the worst moment
The gap becomes visible during an incident, not during normal operation. A regulator or a customer disputes an AI-generated communication, and the organization has to reconstruct which system produced it, on whose authority, and under what policy. If the only provenance signal available lives inside the model provider's infrastructure, the deployer is dependent on a third party's cooperation to answer a question about its own operations.
That dependency is structural, not a contract failure. The provider's watermark travels with the content. It does not travel with a record of who inside the deployer's organization typed the prompt, which role that person or agent held, or what data-handling policy applied to that specific request. Those three facts live nowhere unless something on the deployer's own request path wrote them down.
Building the record you actually own
An enterprise provenance record has to be built independently of the model's own marking, because it answers a different question and has a different owner. The minimum shape is a per-request entry containing the verified identity that originated the call, the role or authorization context in effect, the model and version that handled the request, a timestamp, and the policy state that governed the decision.
That record does not depend on the provider embedding anything. It does not break when a provider changes its watermarking approach or a user copies text out of a chat window and pastes it elsewhere, which defeats most watermarks anyway. It is written at the moment the request leaves the organization's boundary, by something the organization controls, and it stays complete regardless of what the model itself does with the output. The schema for that record, and why it needs to be structured rather than a free-text log line, is its own subject.
DeepInspect
This is the record DeepInspect produces. DeepInspect sits inline between authenticated users and agents and the LLM APIs they call, and for every request and response it evaluates identity, policy, and model authorization before the traffic reaches the model. Each decision writes a signed, per-decision audit record: who asked, under what role, against which policy, at what model and version, with what outcome.
That record answers the enterprise provenance question directly, independent of whatever the model provider does or does not embed in the output itself. It does not require the provider to cooperate, does not depend on a watermark surviving a copy-paste, and is complete at the moment of the request rather than reconstructed after the fact.
If your organization's answer to "who generated this" currently depends on a provider's detector, that answer is not yours to give. Book a demo today.
Frequently asked questions
- Does model watermarking make enterprise-side provenance unnecessary?
It does not. Watermarking answers whether a piece of content came from a generative model at all. It does not identify which employee, agent, or service account inside a specific organization triggered the generation, and it is not designed to. An enterprise still needs its own record tying a generation event to an internal identity and policy state, because that is the record a regulator, auditor, or internal investigation will actually ask for. The two records serve different audiences: the watermark serves the public and downstream consumers of the content; the enterprise record serves the organization's own accountability chain.
- What happens to a watermark when text is copied, edited, or summarized?
Most current text watermarking schemes, including token-selection approaches like SynthID, are vulnerable to paraphrasing, translation, or substantial editing, which can degrade or remove the statistical signal. Metadata-based approaches like C2PA's Content Credentials can survive some transformations but are stripped entirely if a platform does not propagate the metadata field, which many do not. An enterprise provenance record does not have this failure mode, because it is written at generation time on the request path and does not depend on anything surviving in the output afterward.
- Can we build our own output watermarking instead of relying on model providers?
Some organizations do add their own marking at the application layer, typically metadata tags or logging hooks around API calls. That approach can work but has to be built and maintained independently for every model provider and every integration point, and it inherits the same self-attestation problem as any application-controlled log: the system generating the record is the same system that might fail or be compromised. A decoupled proxy that sits on the request path independent of the calling application avoids that failure mode structurally.
- Is this relevant if our organization only uses one AI vendor?
The number of vendors does not change the underlying gap. Even with a single AI vendor, the question "which of our employees or agents generated this specific output" is not one the vendor's own watermark can answer, because the vendor has no visibility into the deployer's internal identity and role structure. A single-vendor deployment still needs an internal record connecting generation events to internal identities.