Skip to main content
01 ] / do-not-train tagger

Add a do-not-train tag to your images.

Embed the IPTC AI-training opt-out and your copyright into a photo — locally, in your browser. Nothing uploads.

do-not-train tagger

cleanimages.online
writing · localruntime · browser
network bytes sent · 0checking status is free
02 ] / do-not-train tagger

Does a do-not-train tag actually work?

Partly, and it depends entirely on who's reading. The IPTC data-mining property is the standard the industry agreed on, and compliant crawlers honour it. Scrapers that don't care will not care. What the tag reliably does is remove the 'we didn't know' defence: it's an explicit, machine-readable, timestamped statement of your terms attached to the work itself.

Why not a C2PA do-not-train assertion?

Because a C2PA assertion is only meaningful when it's cryptographically signed, and signing needs a certificate we can't hand out from a browser tab. An unsigned manifest looks like provenance while carrying none — worse than nothing. We write the metadata-layer signals that are genuinely valid without a signature, and we'd rather say so than fake the rest.

What about Glaze and Nightshade?

Those are a different discipline: they perturb the pixels themselves so models learn the wrong thing. This tool never touches your pixels. The two approaches are complementary — a metadata signal states your terms, adversarial cloaking tries to enforce them. If you need enforcement, look at those projects directly.

Where do these signals survive?

In the file. Send the image as a file, host it yourself, or attach it to email and the metadata travels with it. Upload it to a platform that strips metadata and it's gone — which is why knowing which platforms strip is part of the plan, not an afterthought.

03 ] / faq
What exactly gets written into my image?
An XMP packet containing the IPTC/PLUS Data Mining property set to the AI/ML-training-prohibited value, a matching xmpRights:UsageTerms sentence, and — if you provide them — dc:creator and dc:rights. That's it. No pixels are altered and no other fields are invented.
Does this change my image quality?
No. The compressed image data is copied through byte for byte; only the metadata section of the container is rewritten. The photo you download is pixel-identical to the one you dropped in.
Can I protect and clean at the same time?
Yes — tick 'Also remove location & device data'. The strip runs first, then the protective fields are written, so you end up with the opt-out present and the GPS gone.
What if the image already has a do-not-train tag?
Running the tool again replaces the existing XMP packet rather than adding a second one, so files never end up with duplicate or contradictory metadata.
Will this stop AI companies from training on my photos?
Not on its own, and anyone telling you otherwise is selling something. It is a voluntary signal. Crawlers that comply will skip the image; crawlers that don't comply will ignore it. It is one honest layer, not a wall.
Which formats can you write to?
JPEG, PNG, and WebP. GIF has no standard XMP container in practice, and HEIC/RAW aren't supported yet.