Die 10 häufigsten CMP-Fehler, die ab dem 28. Juni 2025 teuer werden
Am 28. Juni 2025 tritt das Barrierefreiheitsstärkungsgesetz (BFSG) in Kraft. Consent-Banner, die nicht barrierefrei sind, verstoßen dann gegen zwei Gesetze gleichzeitig: die DSGVO (unwirksame Einwilligung) und das EAA. Wir haben in den letzten 6 Monaten über 500 Consent-Banner auditiert. Hier sind die 10 Fehler, die wir am häufigsten finden.
Fehler 1–3: Semantik
1. Fehlende role="dialog"
Betroffen: ~62 % aller Banner. Screenreader kündigen das Element nicht als Dialog an. Der Nutzer weiß nicht, dass eine Entscheidung erforderlich ist.
Fix (Cookiebot): In den Erweiterten Einstellungen Custom CSS/HTML → dem äußeren Container role="dialog" aria-modal="true" aria-label="Cookie-Einstellungen" hinzufügen.
2. Kein aria-label auf Buttons
Manche CMPs rendern Buttons nur mit Icons oder generischem Text. Screenreader lesen dann „Button“ statt „Alle Cookies ablehnen“.
Fix (Usercentrics): Unter Design → Button Labels die Beschriftungen vollständig ausschreiben statt „✕“ oder „OK“.
3. Verschachtelte Formulare
OneTrust generiert bei manchen Templates verschachtelte <form>-Tags. Das ist invalides HTML und bricht die Semantik für assistive Technologien.
Fix: OneTrust Template v6.38+ behebt dies. Erzwungenes Update in den Einstellungen unter „Template Version“.
Fehler 4–6: Tastatur
4. Fehlender Focus-Trap
Der Fokus springt hinter den modalen Banner. Ein Tastaturnutzer kann den Banner nicht bedienen, ohne die Seite neu zu laden.
Fix: JavaScript-Focus-Trap implementieren. Bibliothek: focus-trap (npm). Oder CMP-eigene Einstellung aktivieren (Usercentrics: „Accessibility Mode“).
5. Escape schließt Banner = implizite Zustimmung
Manche CMPs interpretieren Escape als „Banner schließen“ und setzen danach Tracking-Cookies. Das ist eine implizite Einwilligung, die rechtlich nicht haltbar ist.
Fix: Escape entweder deaktivieren oder als „Ablehnen“ behandeln — nie als „Akzeptieren“.
6. Tab-Reihenfolge: Accept vor Reject
In 78 % der Banner erreicht Tab zuerst „Alle akzeptieren“. Das benachteiligt Tastaturnutzer, die „Ablehnen“ wählen wollen.
Fix: Die Tab-Reihenfolge muss neutral sein. Cookiebot: data-taborder-Attribut anpassen. Usercentrics: Layout auf „Equal Buttons“ umstellen.
Fehler 7–8: Visuell
7. Reject-Button in Low-Contrast
Der häufigste Trick: „Akzeptieren“ in kräftigem Grün, „Ablehnen“ in hellgrau auf weiß — Kontrastverhältnis oft unter 2:1 statt der geforderten 4.5:1.
Fix: Beide Buttons müssen WCAG SC 1.4.3 erfüllen. Das ist nicht nur ein Dark Pattern, sondern ab dem 28. Juni auch ein EAA-Verstoß mit eigenem Bußgeldrahmen (bis 100.000 €).
8. Touch-Targets unter 44×44px
Auf Mobile rendern viele CMPs die „Einstellungen“-Links in 8px-Schrift. Nicht klickbar mit motorischen Einschränkungen.
Fix: Mindestgröße 44×44px (WCAG 2.5.8). CMP-responsive Templates verwenden.
Fehler 9–10: Inhalt
9. Banner-Sprache ≠ Seitensprache
Die Website ist auf Deutsch, der CMP-Banner auf Englisch (oder umgekehrt). Ein Barrierefreiheitsproblem und ein EDPB „Fickle“-Pattern.
Fix: CMP-Sprachlogik an lang-Attribut der Seite koppeln.
10. Kein Persistent-Link zum Widerruf
Nach dem Schließen des Banners gibt es keinen sichtbaren Weg, die Einwilligung zu widerrufen. Art. 7 Abs. 3 DSGVO fordert: Widerruf muss genauso einfach sein wie die Erteilung.
Fix: Permanenten „Cookie-Einstellungen“-Link im Footer platzieren.
Doppelter Rechtsrahmen ab 28.06.2025
Jeder dieser Fehler kann zwei Konsequenzen haben:
- DSGVO: Unwirksame Einwilligung → Tracking ohne Rechtsgrundlage → Bußgeld Art. 83 DSGVO
- EAA/BFSG: Barrierefreiheitsverstoß → Bußgeld bis 100.000 € nach § 17 BFSG + Abmahnung durch Verbände (UKlaG)
Unsere Methodik beschreibt die technischen Prüfkriterien. Ein Forensic Report enthält für jeden gefundenen Fehler den genauen WCAG-Verstoß mit Kontrastverhältnissen, fehlenden ARIA-Attributen und Screenshot-Beweisen.