Skip to content
disclosura Check

Live demo — this is the real product

The disclosure widget, running right here.

Look at the bottom-right corner of this page: that badge is the widget. Click it. Then try it in other languages and in banner mode below — the demo reloads this page with different settings, exactly as your customers would see them.

Try it — all 24 official EU languages:

Banner mode

What you’re looking at

  • One script tag — the whole install. No iframe, no cookies, no tracking of your visitors.
  • Hosted — served from our server. When official guidance evolves, we update it centrally; your site changes without you touching it. Every change is listed on the changelog.
  • Multilingual — all 24 official EU languages; lang=auto follows the visitor’s browser (regional variants like pt-BR resolve to pt; unsupported languages fall back to English).
  • Accessible — keyboard and screen-reader friendly, dismissible banner, high-contrast.
  • Record of display (since 1.2.0, on by default) — each render sends one cookie-free ping with your site’s hostname, the page path, the language shown and the widget version. Nothing about the visitor: no IP, no user agent, no cookie. Kit buyers download a dated CSV or printable “record of display” from their kit page. It is a technical log, not proof of compliance. Off with data-log="off" on the script tag.
  • Image labels (since 1.2.0) — any <img data-ai-generated> gets a small corner badge reading “AI-generated image” in the notice language, with an aria-label. Off with data-image-labels="off".

Image label, live

The picture below carries data-ai-generated. The badge in its corner is added by the widget — switch the language above and it follows.

Placeholder illustration used to demonstrate the AI-generated label
Markup: <img data-ai-generated src="…" alt="…"> — the badge is text, so screen readers get it too.

The embed code

<script src="https://disclosura.eu/widget/widget.js?key=YOUR_KEY&lang=auto&mode=badge" defer></script>

Options: mode=badge|banner, lang= any of the 24 official EU language codes or auto, pos=bl|br|tl|tr, accent=RRGGBB. Every option also works as a data-* attribute on the script tag (data-lang="de"), plus data-log="off" and data-image-labels="off". Your key and a pre-configured tag come with the Kit; WordPress users get a plugin in the kit that exposes the same settings under Settings → AI disclosure.

Article 50 is in force since 2 Aug 2026. The last transitional runway — Art. 50(2) machine-readable marking, for providers of AI tools already on the market before 2 Aug 2026 — ends 2 Dec 2026. Reg. (EU) 2026/1744