Which AI image generators label their images? Google and OpenAI compared, file by file

By The NeutronField editors · Updated

Short answer

All 3 image models we tested labelled all 50 of our files twice. Google's Nano Banana 2 and Nano Banana Pro and OpenAI's image API each returned a file with a signed C2PA content credential that also records an invisible watermark, and none saved the prompt or any other metadata. None of the API files had a visible mark. Re-saving a file removed the credential every time.

Decision table

Which generators label their images: our own files, read on 2026-11-02, before any conversion.
GeneratorContent credentialInvisible watermarkVisible markIPTC source typePrompt saved in fileVerdict
Gemini API, Nano Banana 2Yes, signed by GoogleYes, recorded in the credentialNone on API filestrainedAlgorithmicMediaNoLabels every file twice
Gemini API, Nano Banana ProYes, signed by GoogleYes, recorded in the credentialNone on API filestrainedAlgorithmicMediaNoSame records as Nano Banana 2
OpenAI image API (gpt-image)Yes, signed by OpenAIYes, a watermark step recordedNone on API filestrainedAlgorithmicMediaNoLabels every file twice

Jump toChatGPT imagesGemini and Nano BananaMethod

Gemini API, Nano Banana 2

Full file record
frame 12A potter shaping a bowl on a wheel, our Nano Banana 2 test file
▸ 12NF 01 · GM
Content credential
Signed by Google LLC; valid
Invisible watermark
SynthID, recorded in the credential
Visible mark
None on the API file
IPTC source type
trainedAlgorithmicMedia, in the credential
Prompt saved in file
No

What frame 12 carries

SignalYesNo
Content credentialmarkednot marked
Invisible watermarkmarkednot marked
Metadata fieldsnot markedmarked
Prompt saved in filenot markedmarked

Checked on 2026-11-02 with c2pa-rs (c2pa-python) and JPEG and PNG segment readers.

Gemini API, Nano Banana Pro

Full file record
frame 32A bowl of lemons on a blue tiled counter, our Nano Banana Pro test file
▸ 32NF 08 · GM
Content credential
Signed by Google LLC; valid
Invisible watermark
SynthID, recorded in the credential
Visible mark
None on the API file
IPTC source type
trainedAlgorithmicMedia, in the credential
Prompt saved in file
No

What frame 32 carries

SignalYesNo
Content credentialmarkednot marked
Invisible watermarkmarkednot marked
Metadata fieldsnot markedmarked
Prompt saved in filenot markedmarked

Checked on 2026-11-02 with c2pa-rs (c2pa-python) and JPEG and PNG segment readers.

OpenAI image API (gpt-image)

Full file record
frame 31A bowl of lemons on a blue tiled counter, our OpenAI test file
▸ 31NF 07 · CG
Content credential
Signed by OpenAI; file hash matches, signer outside our tool's default trust list
Invisible watermark
A watermark step recorded; OpenAI says SynthID
Visible mark
None on the API file
IPTC source type
trainedAlgorithmicMedia, in the credential
Prompt saved in file
No

What frame 31 carries

SignalYesNo
Content credentialmarkednot marked
Invisible watermarkmarkednot marked
Metadata fieldsnot markedmarked
Prompt saved in filenot markedmarked

Checked on 2026-11-02 with c2pa-rs (c2pa-python) and JPEG and PNG segment readers.

Method

How the table was built.

Test date
2026-11-02
Model versions
gemini-3.1-flash-image, gemini-3-pro-image, gpt-image (OpenAI image API)
Files
50 files: every original behind the examples on this site, 44 from Google's two Nano Banana models and 6 from OpenAI, each exactly as the API returned it. All 44 Google files carried a valid Google credential; all 6 OpenAI files carried an OpenAI credential whose hash matched the file
How they were read
Content credentials read and validated with c2pa-rs; EXIF, XMP, IPTC and PNG text chunks read segment by segment; vendor claims checked against Google and OpenAI documentation

Only generators whose files we have read ourselves are in the table. Chat app downloads, Midjourney, Adobe Firefly and open-weight models join it as we read their files; for what open-weight tools write, see open-weight models, and for video, AI video generators. Our About page describes the method in full.

A missing label does not mean an image is human-made.

Questions

Does ChatGPT add a watermark to images?

OpenAI says images from ChatGPT, Codex and its API carry an invisible SynthID watermark and a C2PA content credential. Our files from OpenAI's image API had the credential, which records a watermark step, and no visible mark.

Which AI image generator labels its images most clearly?

Of the models we tested, Google's and OpenAI's label every file with both a signed credential and a watermark. Google's credentials validated cleanly in our tool; OpenAI's matched the file but used a signer outside our tool's default trust list.

Does Gemini add an invisible watermark?

Yes. Google's developer docs say all generated images include a SynthID watermark, and the credential in each of our Gemini files records it.

Do any of these generators save the prompt in the file?

No. None of the files we read from Google or OpenAI contained the prompt or any EXIF, XMP or IPTC block outside the credential.

What is the IPTC digital source type?

A standard metadata value for how media was made. trainedAlgorithmicMedia means created with generative AI; all our test files carried it inside their credential.

Can a label be removed from an image?

The credential is lost whenever a file is re-saved, screenshotted or re-encoded on upload; we saw that in every test. An invisible watermark is designed to survive those changes, though heavy edits can weaken it.

Related reading