Why a second save costs anything at all
JPEG compression divides an image into blocks, converts each to frequency components, and throws away the high-frequency ones your eye is least sensitive to. The result is smaller and slightly softer.
Open that file and save it again and the process repeats on data that has already been through it. The encoder cannot tell which detail is original and which is an artefact of the last pass, so it treats both the same and discards more of each.
The loss compounds and never reverses. There is no operation that restores discarded frequency components, which is why an image that has been through four platforms cannot be repaired by any tool, only re-invented by one.
What that does to a score
We took one genuine photograph, saved it repeatedly at quality 75, and scored it at each stage. Nothing was edited. Every change below comes from the act of saving.
By the tenth save the photograph has crossed the decision line. It is the same picture of the same scene taken by the same camera, and a detector now reports it as likely AI.
How many saves a real image accumulates
Ten sounds excessive until you count what an ordinary image goes through between a camera and a group chat.
- 1 Camera export Save one
- 2 Edited and saved Save two
- 3 Uploaded to a platform Re-encoded on upload
- 4 Downloaded by somebody Often re-encoded again
- 5 Sent through a chat app Compressed for transfer
- 6 Screenshotted A new file entirely
Screenshots are worse than saves
A screenshot is not a copy of a file. It is a photograph of what a screen was displaying, captured at screen resolution, then encoded fresh.
That discards the original file entirely along with its metadata and any credential, and it rewrites the texture with whatever the display and the scaling produced. A screenshot of a 4000-pixel photograph on a laptop screen keeps perhaps a quarter of the pixels and none of the provenance.
It is also the most common way images reach the people who want to check them, which is an unfortunate combination.
What survives and what does not
| Operation | Detail lost | Effect on score |
|---|---|---|
| Copying a file | None | None. A copy is identical |
| Re-saving at high quality | Small | A few points upward |
| Re-saving at low quality | Large | Ten to twenty points upward |
| Resizing down | Large | Substantial, and removes the region map on small results |
| Upscaling | Detail invented | Large upward move. Invented pixels are generated pixels |
| Screenshotting | Almost everything | The largest single move of any operation here |
What to do about it
-
Always ask for the original
From the device that took it, sent as a file rather than as a photo. This one step resolves most disputed results.
-
Never check a screenshot if you can avoid it
If a screenshot is all that exists, treat a low score as no answer rather than as a clean result.
-
Compare like with like
Scoring an original against a downloaded copy tells you about the download, not about the image. Both sides of a comparison need the same treatment.
-
Read a middling score as degradation first
On a file that has clearly travelled, the middle band usually means lost detail rather than partial manipulation.
Why generation-loss looks like generation
There is a reason the two are confused by a model, and it is not a coincidence. Both processes rebuild fine detail rather than recording it.
A JPEG encoder discards high-frequency components and the decoder reconstructs an approximation from what remains. A diffusion model builds detail from noise according to what it learned. Neither output carries the specific relationship between neighbouring pixels that a sensor and a lens produce, because in both cases that relationship was thrown away and something plausible was put in its place.
From the model’s point of view a heavily recompressed photograph and a generated image share the same fundamental property: the fine texture was written by software. That is why the score moves in the direction it does, and why the effect gets stronger with every pass.
Understanding this changes how you read a result. A high score on a degraded file is not the detector failing to spot a real photograph. It is the detector correctly reporting that the texture in front of it was not produced by a camera, which happens to be true.