Machine-readable marking: three statements and twelve silences
Machine-readable marking records what a vendor says is written into the file itself. Three generators fill it, naming C2PA or SynthID or an invisible watermark. Twelve record not documented, which is a statement about their pages rather than their files. As of 2026-09-12.
| Generator | What the vendor states is in the file |
|---|---|
| Amazon Nova Reel | Invisible watermark plus C2PA Content Credentials |
| D-ID | Not documented |
| Fliki | Not documented |
| HeyGen | Not documented |
| Kling AI | Not documented |
| LTX Studio | Not documented |
| Luma AI | Not documented |
| Pictory | Not documented |
| Pika | Not documented |
| Runway | Not documented |
| SceneMixer | Not documented |
| Sora | C2PA on every asset, standard named |
| Synthesia | Not documented |
| Veo | SynthID, with a verification platform named |
| Wan | Not documented |
Inclusion rule. Every generator on this register. A named standard, a named metadata field or a described signal fills this column; a general mention of metadata does not. Order. Alphabetical by generator name.
1What would fill this column
Three kinds of statement count. A provenance scheme named so that a reader can look up what it writes. A metadata key named so that it can be checked in a downloaded file. Or a signal in the picture whose behaviour the vendor describes, as Google does for SynthID. Each of them hands a reader something to do next, and that is the test a sentence has to pass before it fills a cell here.
A gesture at metadata does not count. SceneMixer's guide tells publishers to keep whatever content credentials or generation metadata the tool writes, and warns that re-encoding can strip that layer, which implies something is there. It names no scheme and lists no field, so the cell says not documented and the sentence that raised the question is kept on that generator's own page instead.
Three generators now clear that bar. Sora's system card names C2PA metadata on all assets. Veo's API documentation names SynthID and the platform that verifies it. Amazon Nova Reel's service card names both an invisible watermark applied to everything it generates and, on version 1.1, Content Credentials built on C2PA and carrying the model and platform that produced the file. Each of those hands a reader something to do next, which is exactly the test.
2An empty cell is the finding
Twelve generators on this register record not documented here, and that is not a gap in the reading. It is the answer to a question people ask about a tool before committing a series to it: does it tell you what it puts inside your files. On the pages those rows are read from, none of them does, and the three exceptions make the silence harder to explain away as an industry-wide impossibility.
The cell is not a claim about the product either. A vendor can write provenance data without describing it anywhere, and several probably do. What a register built from published pages can honestly say is that nothing is published, which is why the value is printed as a stated position rather than left as a blank a reader would take for an oversight.
3What a filled version looks like, and where the fullest one lives
SynthID is the entry shaped most completely like a filled cell, and it sits under implementers rather than in the generator table because it inverts the other three columns: nothing is visible, no tier lifts it, and nothing is offered as removable. Google states where it is embedded, that it is written the moment content is created, which transformations it is designed to survive, and two routes for checking a file. Veo's documentation is the generator-side counterpart to that scheme, which is why the two are kept as separate rows.
Reading those statements beside a dozen empty cells is the clearest argument for keeping this column apart from the visible-mark ones. Detection and marking are different capabilities, and a file can carry a signal that nobody outside the vendor is able to read, which is precisely what Sora's internal detection tools are described as. The filled cells that help a receiving party are the ones that name a public reader.
- Machine-readable markingIn the same list: C2PA metadata on all assets, providing verifiable origin through an industry standardstandard named
- Machine-readable markingVideos created by Veo are watermarked using SynthID, described as the vendor's tool for watermarking and identifying AI-generated contentstated under Limitations
- Machine-readable markingAmazon Nova Reel applies an invisible watermark to all videos it generates, and the detection solution can check for the existence of that watermarkapplied to all output
- Machine-readable markingAmazon Nova Reel 1.1 adds Content Credentials to videos it generates, built on the C2PA specification, carrying the model and the platform used to generate the videostandard named
- Machine-readable markingNot documented on the vendor's public pages (as of 2026-09-12)not mentioned in the plan table
- Machine-readable markingNot documented on the vendor's public pages (as of 2026-09-12)not mentioned on the pricing page
- Machine-readable markingNot documented on the vendor's public pages (as of 2026-09-12)not mentioned on the pricing page
- Machine-readable markingNot documented on the vendor's public pages (as of 2026-09-12)not mentioned on the pricing page
- Machine-readable markingNot documented on the vendor's public pages (as of 2026-09-12)no field list published
- Machine-readable markingAn invisible watermark is embedded across Google's generative AI consumer productsproduct-wide
- When it is writtenThe watermark is added the moment content is created and does not change image or video qualityat generation
- RobustnessDesigned to stand up to cropping, added filters, changed frame rates and lossy compressionas stated by the vendor
- DetectionGemini checks an uploaded image, video or audio clip for the watermark, and a separate SynthID Detector portal is in testing with journaliststwo published routes
4Sources
Every value above is read from the vendor page named beside its row on the support table, checked 2026-09-22. What this column is allowed to hold is defined on the protocol page, and the rest of the columns are on the fields index. Next columns along: free tier, paid tier.