A working example, with the files

Can identical images have different AI metadata?

Two files can display the same picture and contain different saved creation details. Our controlled examples keep the decoded pixels unchanged while changing or removing the attached records.

Follow the steps

  1. Download the parameters PNG and changed-settings PNG.
  2. Open the pixel comparison tool and choose both. Their decoded pixel values match in this example.
  3. Then open the metadata comparison tool. The saved seed changes from 42 to 84 and steps change from 20 to 30.

Three questions, three observations

The file hashes differ because the complete files differ. The decoded RGBA arrays match because the picture has not changed. The metadata comparison identifies the two edited settings.

We changed the saved fields by code; we did not rerun a generator. This is a reproducible demonstration that an editable record can disagree with another record attached to the same pixels.

Try removing the record entirely

The without-records file preserves the same underlying picture without the supported prompt record. It returns no saved prompt. That result is consistent with the fixture construction, not a determination that the image is human-made.

The test compares exact decoded values, not visual resemblance or perceptual similarity. Different dimensions and real image edits need their own comparison.

Use stronger evidence when the question requires it

Keep the original source and look for additional provenance information. If a file carries supported Content Credentials, inspect the actual signature and validation result in the separate checker. Editable PNG text alone cannot provide that signature evidence.

Download · Run · Compare

Try the verified example

We drew the picture by code and attached controlled records. The saved prompts and model names are demonstration data. These files test record reading; no image generator, screenshot app or social network was used to create these test results.

Observed output

Original compared with changed-settings.png. Same file bytes: no. Same decoded pixels: yes.
FieldBeforeAfterState
Saved promptControlled example: a paper boat on a blue tableControlled example: a paper boat on a blue tableSame
Seed4284Changed
Steps2030Changed
Saved generation width10241024Same
Saved generation height768768Same

Seed values in the JSON are strings so that large integers retain their precision. A null result here means no supported saved prompt was returned.

Hashes and reproduction
  • parameters-tEXt.png · 13,371 bytese76d2af4e6c273e1ba8ca6cf2b5b7885ceda2321bce893f0bb5f9e64ace17c9f
  • changed-settings.png · 13,371 bytesfb6bddcf8f163c18c83a81969d3f2e80a739db4541326a718d1cfeed2e265d30

Fixtures and observations are CC0-1.0. Download all observations and versions or read the procedure. The complete Node.js reproduction script (requires sharp) creates the same test inputs and compares bytes and pixels. The isGenAI source checkout additionally verifies saved fields with npx tsx scripts/build-guide-lab.ts.

For the separate export study, explore the 18 metadata-retention cases.

Sources and method

The linked primary sources describe the formats. The downloadable fixture outputs were checked with automated assertions against the current isGenAI reader. These guides were prepared with AI assistance and reviewed against those examples.

Report an error or unsupported example. For a signed record, inspect Content Credentials.