Inhalt
Selbst gebaut aus meinem laufenden Betrieb mit über 50 eigenen Websites.
Seit dem 2. August 2026 gilt die Kennzeichnungspflicht aus Artikel 50 der KI-Verordnung, die meisten kennen sie als EU AI Act. Ich habe sie am Wochenende auf meinen Seiten umgesetzt und dabei zwei Dinge gelernt, die in keiner Anleitung stehen, die ich vorher gelesen habe.
Erstens: Die meisten deiner Bilder musst du wahrscheinlich gar nicht kennzeichnen. Zweitens: Wenn du es tust, hält die übliche Lösung genau bis zu dem Moment, in dem jemand das Bild anklickt.
Was seit August 2026 wirklich verlangt wird
Der AI Act unterscheidet zwei Pflichten, und sie treffen unterschiedliche Leute. Das wird in der Diskussion um KI-Inhalte fast durchgehend vermischt.
Die maschinenlesbare Markierung nach Absatz 2 trifft den Anbieter des KI-Systems, also Midjourney, OpenAI oder Higgsfield. Nicht dich. Eine Genauigkeit, die oft untergeht: Die Digital-Omnibus-Verordnung hat diese Frist auf den 2. Dezember 2026 gestreckt, aber nur für generative Systeme, die vor dem 2. August schon auf dem Markt waren. Neue Systeme müssen sofort liefern, und die Transparenzpflichten selbst wurden gar nicht verschoben.
Dich als Betreiber trifft Absatz 4. Und der verlangt die Offenlegung nur bei Deepfakes, also bei Inhalten, die laut Begriffsbestimmung in Artikel 3 realen Personen, Gegenständen, Orten, Einrichtungen oder Ereignissen ähneln und authentisch wirken können. Dazu kommt eine eigene Regel für Texte zu Angelegenheiten von öffentlichem Interesse, die ohne redaktionelle Verantwortung veröffentlicht werden.
Warum die meisten Bilder nicht kennzeichnungspflichtig sind
Das ist der Punkt, an dem fast alle Ratgeber zu streng sind. Ein abstraktes Titelbild, ein Diagramm, eine Illustration aus geometrischen Formen: All das ähnelt keiner realen Person und keinem realen Ort. Die Leitlinien der Kommission nennen als Beispiel für eine erkennbar unrealistische Darstellung eine geflügelte Sphinx über dem Eiffelturm. Die Kommission stellt dafür eigene Icons kostenlos bereit.
Sobald es fotorealistisch wird, kippt es. Ein erfundenes, aber echt wirkendes Gesicht fällt darunter, auch wenn die Person nie existiert hat. Für KI-generierte Autorenbilder heißt das: kennzeichnen.
Meine Linie ist trotzdem, jedes neu erzeugte KI-Bild zu kennzeichnen. Nicht weil ich muss, sondern weil die Abgrenzung im Alltag Zeit kostet und die Kennzeichnung nichts. Für den Altbestand gilt sie ausdrücklich nicht, die Verordnung wirkt nicht zurück.
Der Fehler in fast allen Anleitungen
Die verbreiteten Lösungen für WordPress arbeiten mit einem Label, das per CSS oder als Bildunterschrift über dem Bild liegt. Das habe ich zuerst genauso gebaut, es ist in zehn Minuten eingerichtet.
Dann habe ich die Bild-URL direkt in den Browser getippt. Kein Label. Denn das Overlay gehört zur Seite, nicht zum Bild.
Das betrifft nicht nur den Direktaufruf:
- Die Vorschau, die WhatsApp, LinkedIn oder Discover aus deinem og:image bauen
- Jeder Rechtsklick und Download
- Jeder Hotlink von einer fremden Seite
- Google Bilder
In allen diesen Fällen verlässt das Bild deine Seite und lässt die Kennzeichnung dort zurück. Genau das sind aber die Momente, in denen jemand zum ersten Mal Kontakt mit dem Inhalt hat.
Die zwei Ebenen, die halten
| Ebene | Was sie leistet | Sichtbar |
|---|---|---|
| Label in die Pixel gebrannt | Direktaufruf, Download, og:image, Hotlink | ja |
| IPTC-Metadaten in der Datei | reist mit der Datei, Google wertet sie aus | nein |
Für die zweite Ebene gibt es einen Standard. Die IPTC pflegt ein kontrolliertes Vokabular, und Google wertet es nach eigener Ankündigung aus, unter anderem für „Über dieses Bild“. Der Wert heißt trainedAlgorithmicMedia, ein Aufruf genügt:
exiftool -overwrite_original \
-XMP-iptcExt:DigitalSourceType="http://cv.iptc.org/newscodes/digitalsourcetype/trainedAlgorithmicMedia" \
-IPTC:Credit="KI-generiert" \
-EXIF:ImageDescription="Mit einem KI-System erzeugtes Bild." \
bild.jpg
Das Label einbrennen
Für die sichtbare Ebene nutze ich PHP mit der Imagick-Erweiterung, weil die auf jedem WordPress-Hosting läuft, auf dem auch Bildgrößen erzeugt werden. Der Kern in Kurzform:
$im = new Imagick($datei);
$H = $im->getImageHeight();
$fs = max(14, (int) round($H * 0.032)); // Schrift relativ zur Bildhöhe
$rand = (int) round($H * 0.025);
$mess = new ImagickDraw();
$mess->setFont('/pfad/zu/DejaVuSans-Bold.ttf'); // Font zwingend explizit setzen
$mess->setFontSize($fs);
$m = $im->queryFontMetrics($mess, 'KI-generiert');
$bw = (int) round($m['textWidth']) + $fs * 3;
$bh = (int) round($m['ascender'] + abs($m['descender'])) + $fs;
$d = new ImagickDraw();
$d->setFillColor(new ImagickPixel('rgba(17,17,17,0.80)'));
$d->roundRectangle($rand, $rand, $rand + $bw, $rand + $bh, 6, 6);
$im->drawImage($d);
$t = new ImagickDraw();
$t->setFont('/pfad/zu/DejaVuSans-Bold.ttf');
$t->setFontSize($fs);
$t->setFillColor(new ImagickPixel('white'));
$im->annotateImage($t, $rand + $fs, $rand + $fs + $m['ascender'] * 0.6, 0, 'KI-generiert');
$im->setImageCompressionQuality(88);
$im->writeImage($datei);
Das läuft einmal auf der Originaldatei, bevor WordPress die Größen erzeugt. Danach wp media regenerate, und alle Größen tragen das Label.
Fünf Stolpersteine, die mich Zeit gekostet haben
Die Reihenfolge entscheidet. Wenn du Bilder mit Imagick komprimierst, entfernt stripImage() sämtliche Metadaten. Setzt du die IPTC-Daten vorher, sind sie danach weg. Erst komprimieren, dann kennzeichnen.
IPTC:Credit ist auf 32 Zeichen begrenzt. Exiftool kürzt stillschweigend und meldet das nur als Randnotiz. Den ausführlichen Hinweis in XMP-dc:description legen, dort gibt es kein Limit.
Die Position hängt am Theme. Ich hatte das Label unten links, was auf einer meiner Seiten gut aussieht. Auf dieser hier schiebt das Theme eine weiße Inhaltsbox über den unteren Bildrand, dort war es halb verdeckt. Nach dem ersten Bild einer Seite im echten Browser nachsehen, der Quelltext zeigt diesen Fehler nicht.
Zwei Labels sind schlimmer als keines. Wenn du ein Plugin für die CSS-Kennzeichnung nutzt und zusätzlich einbrennst, legt es sein Overlay über das eingebrannte. Ich setze deshalb ein zweites Meta am Anhang und lasse das Plugin das Overlay unterdrücken, sobald das Label in der Datei steckt.
Dein Browser lügt dich an. Uploads werden hier mit max-age=10368000 ausgeliefert, also 120 Tage. Wer die Bild-URL vorher schon offen hatte, sieht monatelang die alte Fassung, und F5 hilft nicht. Zum Prüfen Strg+Shift+R oder einen Parameter anhängen. Ich habe deshalb erst geglaubt, mein eigener Einbau funktioniere nicht.
Wie ich KI sonst einsetze, ohne dass die Inhalte in der Suche untergehen, steht in meinem Beitrag dazu, ob Google KI-Texte erkennt und abstraft.
Kein Rechtsrat, sondern ein Werkstattbericht
Ich bin kein Anwalt und leiste keine Rechtsberatung. Was hier steht, ist das System, das ich für meine eigenen Seiten gebaut habe, auf Grundlage der Informationen, die ich gefunden habe, und so, wie ich sie verstanden habe. Ich kann mich irren.
Für die Richtigkeit dieser Angaben und für die Folgen ihrer Umsetzung übernehme ich keine Verantwortung. Der Code ist zum Nachbauen gedacht, nicht als geprüfte Compliance-Lösung. Wenn Haftung oder Geld davon abhängen, lass es von einer Kanzlei prüfen.
Häufige Fragen
Muss ich alte KI-Bilder nachträglich kennzeichnen?
Nein, die Verordnung wirkt nicht zurück. Maßgeblich ist bei Bildern der Zeitpunkt der Erzeugung. Wer einen alten Beitrag überarbeitet und dabei ein neues Bild erzeugt, kennzeichnet dieses neue Bild.
Muss ich meine mit ChatGPT geschriebenen Texte kennzeichnen?
Für gewöhnliche Ratgebertexte nicht. Die Regel greift bei KI-generierten Texten zu Angelegenheiten von öffentlichem Interesse, die ohne echte redaktionelle Kontrolle erscheinen. Wer jeden Artikel selbst prüft und verantwortet, fällt nicht darunter, egal mit welchen KI-Tools er arbeitet.
Reicht ein Hinweis im Impressum?
Nein. Die Offenlegung muss klar und unterscheidbar sein und spätestens beim ersten Kontakt mit dem Inhalt wahrgenommen werden können. Eine zentrale Fußnote erfüllt das nicht.
Reicht ein WordPress-Plugin mit CSS-Label?
Auf der Seite selbst ja. Sobald das Bild direkt aufgerufen, geteilt oder heruntergeladen wird, ist das Label weg. Wer das abdecken will, braucht die Kennzeichnung in der Datei.
Was droht bei einem Verstoß?
Der Rahmen reicht bis 15 Millionen Euro oder 3 Prozent des Weltjahresumsatzes, für kleine Unternehmen gilt der jeweils niedrigere Betrag. Zuständig ist in Deutschland die Bundesnetzagentur als Marktüberwachungsbehörde. Das realistischere Risiko für kleine Seiten ist aber eine wettbewerbsrechtliche Abmahnung, denn das Lauterkeitsrecht kennt keine Stichtagslogik.
