May 21, 2026

What ChatGPT and DALL·E embed in your generated images

You ask ChatGPT for an image, save the PNG it returns, and post it somewhere. You probably assume the file is just pixels. It isn’t. Since spring 2024, OpenAI embeds C2PA content credentials in every generated image, plus a handful of additional metadata fields. Here’s what’s actually in that file, and how to remove it locally with AI Info Remover.

Inspecting a fresh ChatGPT PNG

Save any image ChatGPT generates today and run exiftool on it. You’ll typically see:

JFIF Version             : 1.01
Software                 : OpenAI
C2PA / JUMBF             : signed manifest, ~10-30 KB
  - Claim Generator      : OpenAI / DALL-E 3
  - Created              : 2026-05-21T15:34:11Z
  - Action               : c2pa.created
  - Signature            : valid
PNG iTXt chunk           : "parameters" or platform tag
Embedded thumbnail       : small JPEG preview

The bulk of that is the C2PA manifest — a cryptographically signed JSON-ish blob declaring “OpenAI created this image at this time.” Platforms read it and may surface a “Made with AI” label (see our post on Meta’s AI label).

There’s also a Software: OpenAI EXIF tag, a timestamp, and occasionally an iTXt text chunk with platform debugging info.

Why care?

A few reasons people remove this metadata, in roughly descending honesty order:

Removing the metadata is not the same as misrepresenting the image. The pixels stay the same. The labels are claims, not facts.

How a browser canvas wipes all of it at once

The trick is that every one of those metadata blocks lives outside the pixel grid. The C2PA manifest is in a PNG caBX chunk or JPEG APP11 segment. The Software tag is in EXIF. The thumbnail is in an EXIF subdirectory. The platform iTXt chunk is a separate PNG block.

When a browser decodes the image, it reads only the pixels into memory. When it re‑encodes via canvas.toBlob(), none of the metadata blocks get re‑attached because the canvas doesn’t know they existed.

const c = document.createElement("canvas");
c.width = img.naturalWidth;
c.height = img.naturalHeight;
c.getContext("2d").drawImage(img, 0, 0);
c.toBlob(blob => { /* clean file */ }, "image/png");

One re‑encode strips C2PA, Software tag, timestamp, iTXt chunks, and embedded thumbnails simultaneously. No tool‑by‑tool list to maintain.

Step‑by‑step in AI Info Remover

  1. Save the ChatGPT image to your device.
  2. Open aiinforemover.com in any browser.
  3. Drop the file. It processes instantly — no upload.
  4. Click Download. The new file has none of the above.

Verify with exiftool:

exiftool ChatGPT_Image_clean.png

Output should show only basic encoding fields (dimensions, color depth). No Software, no C2PA, no parameters chunk.

What we can’t remove

This tool removes metadata. It is not a laundering service for AI content. Be honest about what you’re doing.

Related reading