Mark your AI generated images — visibly for your visitors, machine-readably for everything else. One click in the media library gives an image both halves of the disclosure: a badge wherever the image appears on your site, and an IPTC / C2PA provenance label written losslessly into the file itself.
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.0 and PHP 7.4.
SourceWordPress plugins · Oct 18, 2026
01 / Source details
About this tool.
Mark your AI generated images — visibly for your visitors, machine-readably for everything else. One click in the media library gives an image both halves of the disclosure: a badge wherever the image appears on your site, and an IPTC / C2PA provenance label written losslessly into the file itself.
If the EU AI Act’s transparency rules are on your mind: this is the technical half of that disclosure. Whether it satisfies your obligations is a legal question, and the FAQ below is honest about it.
This is not a watermark plugin. It works on the layer underneath: the provenance metadata inside your image files. Image generators are increasingly expected to embed a machine-readable marking — an IPTC DigitalSourceType value in XMP, or a C2PA manifest. SEO’n’AI – AI Image check&mark opens your files and reads it. It tells you which images carry such a marking, which do not — and it can write the missing label into them.
What makes this different
It labels both layers at once . Marking an image gives it the visible badge on the page and the machine-readable marking in the file — the human-readable and the machine-readable side of the same disclosure.
It writes losslessly . The XMP packet is inserted into the container by hand — JPEG APP1, PNG iTXt , WebP RIFF chunk. The compressed image data is copied through byte for byte. Nothing is re-encoded, no quality is lost. Watermarking plugins cannot do this, because re-encoding is how they work.
It does not touch a single pixel . The badge is a CSS overlay you can restyle or switch off at any moment.
It reads provenance metadata, too. Uploads are inspected on arrival; if the file declares itself as AI generated — via IPTC in XMP or a C2PA / Content Credentials manifest — the image is marked automatically. No other step needed.
It tells you where the badge does not appear — bluntly, on its own settings screen, instead of letting you assume it is everywhere.
Features
A per-image checkbox in the attachment details panel, and a one-click “Mark as AI generated” link on every row of the media list
A Marking details screen per image: what the file actually carries — IPTC DigitalSourceType, C2PA, per generated size — including the raw XMP block, so you can verify rather than trust
A badge — the visible AI label — in the corner of every image WordPress renders, with configurable text, position, size and style
An honest alt text, so screen reader users get the disclosure too
A data-ai-generated="true" attribute on the image tag
Detection of an existing marking (IPTC DigitalSourceType, C2PA) on upload, per image, for a hand-picked selection, and as one run across the whole library
Automatic marking of uploads whose file already declares itself as AI generated
Writing the marking into new uploads and into images already in your library , one at a time, or as one batch run over everything that is missing it
A filter and a status column in the media library
Neither the reading nor the writing is held back: you can examine every image in your library, and write the marking into every image that needs one, with no limits and no quota. For running your own site, this plugin is complete.
A file is never given a second metadata block. If it already carries XMP from another tool — a photo editor, a stock library — that block is left exactly as it is and the plugin says so instead of writing next to it.
Honest about the limits
The badge — the visible half of the label — is a CSS overlay. It appears where WordPress renders the page, and nowhere else. It does not appear in:
Social media previews — the platform loads the file, not your page
The image file itself, when downloaded or opened by direct URL
RSS feeds and newsletters
Lightboxes that rebuild the image element
Google Images, scrapers and hotlinking third parties
Images used as a CSS background used to be on that list as well. Page builders lean on backgrounds heavily — sliders, hero areas and section headers are almost always backgrounds rather than image tags — so a site could look completely unbadged while everything was in fact working. The smart check closes that gap: switch it on and the finished page is inspected once before it is sent, including the stylesheet files on your server, and the badge is placed onto whatever element carries a marked background. It is off by default, because it looks at the whole page.
One thing to remember either way: if you run a caching plugin, clear its cache after marking an image. A cached page was built before the marking existed and keeps being served exactly as it was, so the badge looks missing when the page is simply old.
The plugin says all of this plainly on its own settings screen, under “Where it reaches”, along with ways to deal with what is left.
Optional add-on
SEO’n’AI – AI Image check&mark Pro is a separate, paid plugin from the author’s own shop, built for agencies and editors maintaining large libraries as a service. Its centrepiece is burning the badge into the image files themselves, across every generated size, with a backup of the originals and a one-click restore; around that it adds batch tooling for large libraries. None of that code is in this plugin, and this plugin never downloads it — if you want it, you install it yourself.
This plugin is a tool, not legal advice and not a compliance guarantee. It marks the images you tell it to mark. It cannot detect AI generated images on its own, and it cannot guarantee that a badge appears in contexts it does not control. The author accepts no liability for missing, incorrect or removed markings, for damage to image files, or for any legal consequences arising from the use of this plugin. Keep backups.
See it in action
Screenshots & previews.
Marking an image in the media libraryThe badge on the front end"Where it reaches" — the two layers, the badge and the marking in the file, and where each of them stopsThe marking details screen, showing the raw XMP block inside the file
02 / Source details
Getting started.
01Upload the seonai-ai-image-checkmark folder to /wp-content/plugins/ , or install it through the plugin installer.
02Activate the plugin.
03Go to Media → AI Image check&mark to set the badge text and behaviour.
04In the media library, hover an image row and click Mark as AI generated — or open any image and tick the box in the attachment details panel.
03 / Source details
Frequently asked questions.
Does this make my site compliant with the EU AI Act?
No plugin can promise that. This one helps you disclose AI generated images visibly and machine-readably. Whether that is sufficient depends on your content, your role and your jurisdiction. Please take legal advice if you need certainty.
I marked an image but no badge appears.
Two likely reasons, in this order. First, a page cache: if you run a caching plugin, the page a visitor sees was built before the marking existed and keeps being served exactly as it was. Clear the cache and look again. Second, the image may not be an image tag at all — page builders build sliders and hero areas from CSS backgrounds, which have nothing for a badge to attach to. Switch on the smart check in the settings for that case. The settings screen then reports what the last page view actually found, so you can see which of the two it was.
Does it change my image files?
Only the metadata, and only when you ask it to, and only when the file has no XMP block yet. The pixel data is never re-encoded.
I ran an image optimiser and the marking disappeared.
That is what optimisers do: they rebuild the image, and a rebuilt image has lost its metadata block. The plugin watches for exactly this and writes the marking back. If you would rather it did not, switch off “Keep it in the file” in the settings.
The marking is in the file but an online checker does not find it.
Then it is being lost on the way out, not on the way in. Open “Marking details” on that image and use the delivery check: it fetches the image the way a visitor would and tells you whether you are being served a cached copy from before the marking was written, or a re-encoded one that had its metadata stripped. Writing and then removing the marking again leaves a JPEG byte-identical to the original — that is covered by the test suite. Everything else the plugin does lives in the HTML and CSS.
Will it overwrite metadata my generator already wrote?
No. A marking that came with the file is left alone. Only packets this plugin authored carry its own marker, and only those are ever removed.
Can it detect AI generated images automatically?
Only when the file says so itself, via XMP or C2PA. There is no reliable way to detect generated images from the pixels, and this plugin does not pretend otherwise. Everything else is your decision.
Which formats are supported?
JPEG, PNG and WebP for metadata. The badge overlay works for any image WordPress can render.
Website LLMs.txt and LLMs-Full.txt Generator is an LLMs.txt generator and llms-full.txt generator for WordPress. It helps site owners generate, manage, preview, validate, and serve AI discovery files from published public content. Use it to create structured /llms.txt and optional /llms-full.txt end
EngageDock AI is a customizable floating contact widget for WordPress websites that want more leads and faster visitor communication. It helps small businesses turn website traffic into calls, texts, emails, and callback requests from one clean contact panel. Key Features: Click-to-Call – One tap ca
Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO. Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati