Quick answer: Start with the thing you cannot do. The text watermark is applied by the model provider during generation; there is no parameter that turns it on, off, or up, and you cannot add it to text after the...

Add provenance to your AI output

Updated September 1, 2026 · first published September 1, 2026

Start with the thing you cannot do. The text watermark is applied by the model provider during generation; there is no parameter that turns it on, off, or up, and you cannot add it to text after the fact. C2PA signing likewise happens at generation for files the provider produces. If you want a stronger signal than what arrives, the answer is not to add marking — it is to add a record.

That record is cheap, it is entirely under your control, and it is the thing that actually gets produced when someone asks you to prove where an output came from. Most teams can build it in a day, because it is one join away from telemetry they already collect for cost attribution.

The four fields

For every generated artefact, log: the exact model ID and version, the region it ran in, the timestamp, and a stable artefact ID that follows the output through your pipeline. That last one is the field teams skip and later wish they had.

If you already emit per-request usage records for cost attribution, three of the four are in there. What is usually missing is the join: your cost telemetry knows a request happened and what it cost, but not which stored artefact it produced. Adding the artefact ID to the usage record turns two systems into one query.

Keep the signed manifest when you control the pipeline

Where the provider hands you a C2PA-signed file, the goal is simple: do not lose it. Configure image transforms to preserve metadata explicitly rather than trusting defaults, and re-attach provenance after any re-encode you control. Test the whole path from generation to delivery, not the model output alone.

For files you produce yourself — a chart your service renders, an image you compose from generated parts — you can sign your own C2PA manifest asserting what you did. That is a real option and a genuine improvement in traceability, but it is a project rather than an afternoon, and it is worth doing only after the logging above exists.

Mark it for humans too

Machine-readable marking and user-visible disclosure are different obligations solving different problems. A visible "generated with AI" label costs nothing to add, is not affected by any pipeline transform, and is what a user actually reads. It is not a substitute for machine-readable marking, and machine-readable marking is not a substitute for it.

What it costs to run

Four small fields per generated artefact, retained for as long as your compliance window requires. On any realistic volume this is a rounding error against the inference bill itself — and unlike the inference, it is the part you will be asked to produce. Set the retention period deliberately: too short and the record is gone before the question arrives; unbounded and you are paying storage forever for no reason.

The sequence that works: add the artefact ID to your existing usage telemetry, verify metadata survives one real image path end to end, add the visible label, then decide whether signing your own manifests is worth it. Only the last step is a project.

Related

Related


Want this applied to your own LLM spend? FinOps LLM runs a free audit of your AI costs and shows where the savings are. Book free audit →

Back to research