Nach europäischem Datenschutzrecht darfst du keine Tracking-Cookies, Analytics-Cookies oder Marketing-Cookies im Browser eines Besuchers setzen, ohne dessen ausdrückliche, informierte Einwilligung. Das ist nicht optional, und Verstöße werden mit ernsthaften Bußgeldern geahndet. Die gute Nachricht ist, dass die Einrichtung einer korrekten Cookie-Consent-Lösung in WordPress etwa 30 Minuten dauert, sobald du die Anforderungen verstehst. Dieser Leitfaden behandelt die rechtliche Grundlage, die technische Umsetzung und häufige Fehler, die dich in Schwierigkeiten bringen können.
Was die DSGVO und die ePrivacy-Richtlinie tatsächlich verlangen
Zwei EU-Rechtsvorschriften regeln den Umgang von Websites mit Cookies. Die DSGVO (Datenschutz-Grundverordnung) legt die Regeln für die Verarbeitung personenbezogener Daten fest, während die ePrivacy-Richtlinie (oft "Cookie-Richtlinie" genannt) speziell die Speicherung von Informationen auf dem Gerät eines Nutzers behandelt. Zusammen schaffen sie einen klaren Rahmen:
- Artikel 6 DSGVO (Rechtmäßigkeit): Du brauchst eine Rechtsgrundlage für die Verarbeitung personenbezogener Daten. Für Cookies, die Nutzer tracken, ist die relevante Grundlage die Einwilligung nach Artikel 6(1)(a). Das berechtigte Interesse (Artikel 6(1)(f)) gilt laut den meisten europäischen Datenschutzbehörden nicht für nicht-essenzielle Cookies.
- Artikel 7 DSGVO (Bedingungen für die Einwilligung): Die Einwilligung muss freiwillig, spezifisch, informiert und eindeutig sein. Es muss ein aktives Opt-in sein (keine vorangekreuzten Kästchen). Der Widerruf der Einwilligung muss genauso einfach sein wie deren Erteilung.
- ePrivacy-Richtlinie (Artikel 5 Absatz 3): Das Speichern oder der Zugriff auf Informationen auf dem Gerät eines Nutzers (einschließlich Cookies, localStorage und ähnlicher Technologien) erfordert eine vorherige Einwilligung, es sei denn, das Cookie ist unbedingt erforderlich für den Dienst, den der Nutzer ausdrücklich angefordert hat.
In der Praxis bedeutet das: kein Analytics, keine Marketing-Pixel, keine Social-Media-Embeds, keine eingebetteten Videos von Drittanbietern und keine Werbe-Cookies, bis der Nutzer auf "Akzeptieren" klickt. Unbedingt notwendige Cookies (wie Session-Cookies für einen Warenkorb oder Authentifizierungs-Cookies) benötigen keine Einwilligung.
Cookie-Kategorien verstehen
Eine korrekte Consent-Implementierung kategorisiert Cookies in Gruppen, damit Nutzer granulare Entscheidungen treffen können. Hier sind die Standardkategorien:
- Unbedingt erforderlich (Essenziell): Cookies, die für die grundlegende Seitenfunktionalität benötigt werden. Beispiele sind Session-Cookies (z.B. WordPress-Login-Cookie
wordpress_logged_in_*), WooCommerce-Warenkorb-Cookies, CSRF-Tokens und das Cookie-Consent-Präferenz-Cookie selbst. Diese benötigen keine Einwilligung und können vom Nutzer nicht abgelehnt werden. - Funktional (Präferenzen): Cookies, die Nutzerpräferenzen wie Sprachauswahl, Theme-Präferenz oder Region speichern. Diese sind nicht unbedingt erforderlich, verbessern aber das Nutzererlebnis. Sie benötigen eine Einwilligung.
- Analyse (Statistiken): Cookies, die von Tools wie Google Analytics, Matomo oder Plausible gesetzt werden und messen, wie Besucher deine Seite nutzen. Selbst "anonyme" Analytics-Cookies erfordern in der EU typischerweise eine Einwilligung, es sei denn, du verwendest ein datenschutzfreundliches Tool, das gar keine Cookies setzt (wie Plausible oder Fathom im Cookieless-Modus).
- Marketing (Werbung): Cookies von Werbenetzwerken, Retargeting-Plattformen und Social-Media-Pixeln (Facebook Pixel, Google Ads, LinkedIn Insight Tag). Diese erfordern immer eine Einwilligung.
Complianz einrichten (empfohlen für die meisten Seiten)
- Installiere Complianz - GDPR/CCPA Cookie Consent aus dem WordPress-Plugin-Verzeichnis.
- Führe den Einrichtungsassistenten durch. Complianz fragt nach deinem Unternehmensstandort, den Regionen, die du bedienst, und welche Drittanbieter-Dienste du nutzt. Antworte ehrlich, da der Assistent deine Cookie-Richtlinie und Consent-Konfiguration basierend auf diesen Antworten generiert.
- Das Plugin scannt deine Seite automatisch, um Cookies zu erkennen. Überprüfe die Scan-Ergebnisse und kategorisiere alle Cookies, die nicht automatisch identifiziert werden konnten.
- Konfiguriere das Consent-Banner-Design unter Complianz > Consent Banner. Wähle zwischen einem Banner oben oder unten, einem zentrierten Popup oder einem Seitenpanel. Stelle sicher, dass der "Alle ablehnen"-Button genauso prominent ist wie der "Alle akzeptieren"-Button (das ist eine rechtliche Anforderung).
- Aktiviere Script-Blocking. Complianz kann bekannte Skripte (Google Analytics, Facebook Pixel, YouTube-Embeds) automatisch blockieren, bis der Nutzer seine Einwilligung gibt. Gehe zu Integrationen und überprüfe, ob deine Drittanbieter-Dienste aufgelistet sind.
- Für benutzerdefinierte Skripte, die Complianz nicht erkennt, umschließe sie mit dem Complianz-Platzhalter. Ändere den Script-Typ von
text/javascriptauftext/plainund füge eindata-category-Attribut hinzu. - Teste, indem du deine Seite in einem Inkognito-Fenster öffnest. Vor dem Akzeptieren von Cookies überprüfe, ob keine Analytics- oder Marketing-Skripte geladen werden (prüfe den Network-Tab in den Browser-DevTools). Nach dem Akzeptieren stelle sicher, dass die Skripte korrekt laden.
Real Cookie Banner einrichten (beste Wahl für den DACH-Raum)
Real Cookie Banner ist ein deutsches Plugin, das einen dienstbasierten Ansatz statt eines cookiebasierten Ansatzes verfolgt. Statt einzelne Cookies zu kategorisieren, konfigurierst du jeden Dienst (Google Analytics, YouTube, Google Maps usw.) und das Plugin erledigt den Rest. Dieser Ansatz passt gut zur deutschen Auslegung der DSGVO.
- Installiere Real Cookie Banner aus dem WordPress-Plugin-Verzeichnis.
- Führe den Einrichtungsassistenten durch. Das Plugin enthält eine große Datenbank mit vorkonfigurierten Dienst-Vorlagen, sodass du Cookie-Namen oder Aufbewahrungsfristen für gängige Dienste nicht manuell eingeben musst.
- Für jeden erkannten Dienst liefert das Plugin rechtlich geprüfte Beschreibungen, Datenverarbeitungsdetails und Cookie-Informationen. Überprüfe diese und passe sie bei Bedarf an.
- Konfiguriere das Consent-Banner-Layout. Real Cookie Banner bietet umfangreiche Anpassungsoptionen für Farben, Button-Stile und Texte.
- Das Plugin generiert einen Content-Blocker für eingebettete Inhalte (YouTube-Videos, Google Maps, Social-Media-Embeds). Besucher sehen einen Platzhalter mit einer Consent-Aufforderung anstelle des eingebetteten Inhalts.
CookieYes einrichten
- Installiere CookieYes | GDPR Cookie Consent aus dem WordPress-Plugin-Verzeichnis oder melde dich bei cookieyes.com an.
- Führe den automatischen Cookie-Scan durch. CookieYes identifiziert Cookies auf deiner Seite und kategorisiert sie.
- Passe das Banner-Erscheinungsbild, Button-Farben und Texte im CookieYes-Dashboard an.
- Konfiguriere Script-Blocking für jede Cookie-Kategorie. CookieYes unterstützt sowohl automatisches als auch manuelles Script-Blocking.
- CookieYes bietet auch einen Cookie-Richtlinien-Generator, den du auf deiner Datenschutzseite einbetten kannst.
Google Consent Mode v2 Integration
Wenn du Google-Dienste verwendest (Analytics, Ads, Tag Manager), musst du Google Consent Mode v2 implementieren. Seit März 2024 verlangt Google Consent Mode für Seiten, die Werbung an Nutzer im EWR (Europäischer Wirtschaftsraum) ausliefern. Ohne ihn sammelt Google Ads keine Daten von Nutzern im EWR.
Consent Mode v2 führt zwei neue Parameter zusätzlich zu den ursprünglichen beiden ein — hier sind alle vier im Überblick:
- ad_user_data: Steuert, ob Nutzerdaten für Werbezwecke an Google gesendet werden dürfen.
- ad_personalization: Steuert, ob personalisierte Werbung (Remarketing) erlaubt ist.
- analytics_storage: Steuert, ob Analytics-Cookies gesetzt werden dürfen.
- ad_storage: Steuert, ob Werbe-Cookies gesetzt werden dürfen.
Alle drei empfohlenen Plugins (Complianz, Real Cookie Banner, CookieYes) unterstützen Google Consent Mode v2 out of the box. Stelle sicher, dass du es in den Plugin-Einstellungen aktivierst. Wenn ein Nutzer keine Einwilligung gegeben hat, sendet Consent Mode "cookieless Pings" an Google, die aggregierte, modellierte Daten liefern, ohne einzelne Nutzer zu identifizieren.
TCF 2.2 und das IAB Framework
Das Transparency and Consent Framework (TCF) Version 2.2, verwaltet vom Interactive Advertising Bureau (IAB), ist ein standardisiertes Protokoll zur Kommunikation der Nutzereinwilligung an Werbeanbieter. Wenn du programmatische Werbung auf deiner Seite schaltest (Google AdSense, Header Bidding, Werbenetzwerke), sollte deine Consent-Lösung TCF 2.2 unterstützen. Das stellt sicher, dass Werbenetzwerke Consent-Signale in einem standardisierten Format erhalten, das sie verarbeiten können.
Nicht alle kostenlosen Consent-Plugins unterstützen TCF 2.2. Complianz bietet TCF-Support in der Premium-Version. CookieYes bietet TCF 2.2 ebenfalls in den kostenpflichtigen Plänen an. Wenn du auf Werbeeinnahmen angewiesen bist, lohnt sich die Investition.
Google Analytics und Tag Manager mit Consent handhaben
Das gängigste Setup lädt den Google Tag Manager (GTM) mit Consent Mode v2 im Standardzustand und aktualisiert den Consent, wenn der Nutzer mit dem Banner interagiert. Hier ist das Muster:
<!-- GTM mit Standard-Consent-Status laden (verweigert) -->
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('consent', 'default', {
'analytics_storage': 'denied',
'ad_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'wait_for_update': 500
});
</script>
Dein Consent-Plugin ruft dann gtag('consent', 'update', {...}) auf, wenn der Nutzer akzeptiert. Wenn du eines der empfohlenen WordPress-Plugins verwendest, wird das automatisch gehandhabt. Du musst diesen Code nicht manuell schreiben.
Cookies deiner Seite manuell auditieren
Bevor du eine Consent-Lösung einrichtest, hilft es zu wissen, welche Cookies deine Seite genau setzt. So führst du ein Audit durch:
- Öffne deine Seite in einem Inkognito-Browserfenster.
- Öffne die DevTools (F12) und gehe zum Tab "Application" (Chrome) oder "Speicher" (Firefox).
- Unter Cookies klicke auf deine Domain. Notiere jeden Cookie-Namen, seine Domain, das Ablaufdatum und ob er HttpOnly oder Secure ist.
- Navigiere durch mehrere Seiten, einschließlich Seiten mit eingebetteten Inhalten (YouTube-Videos, Google Maps, Social-Media-Feeds). Jede Interaktion kann zusätzliche Cookies setzen.
- Prüfe auch localStorage und sessionStorage, da diese ebenfalls von der ePrivacy-Richtlinie abgedeckt sind.
- Nutze den Network-Tab deines Browsers, um zu identifizieren, welche Anfragen Cookies setzen (suche nach Set-Cookie Response-Headern).
InspectWP kann bei diesem Audit helfen. Führe einen Scan durch und prüfe den Cookie-Bereich, der alle während des Crawls erkannten Cookies auflistet.
Häufige Cookie-Consent-Fehler, die zu Bußgeldern führen
Europäische Datenschutzbehörden haben erhebliche Bußgelder für Cookie-Verstöße verhängt. Hier sind die häufigsten Fehler, die du vermeiden solltest:
- Vorangekreuzte Einwilligungskästchen: Der EuGH (Europäischer Gerichtshof) hat im Planet49-Fall (2019) entschieden, dass vorangekreuzte Kästchen keine gültige Einwilligung darstellen. Jede nicht-essenzielle Kategorie muss Opt-in sein.
- Cookie-Walls: Den Zugang zu deiner Seite zu blockieren, wenn Nutzer nicht alle Cookies akzeptieren, gilt als Nötigung und macht die Einwilligung ungültig. Nutzer müssen auf deine Inhalte zugreifen können, auch wenn sie alle nicht-essenziellen Cookies ablehnen.
- Versteckte Ablehnen-Buttons: Den "Ablehnen"-Button klein, grau oder hinter einem "Einstellungen verwalten"-Link zu verstecken, während der "Alle akzeptieren"-Button groß und farbig ist, ist ein Dark Pattern. Die französische CNIL hat Google 150 Millionen Euro Bußgeld unter anderem dafür auferlegt. Beide Buttons sollten gleich sichtbar sein.
- Kein Widerruf möglich: Nutzer müssen ihre Cookie-Präferenzen jederzeit ändern können. Füge einen dauerhaften Link oder ein Icon (oft ein kleines Schild- oder Cookie-Icon in der Ecke) hinzu, das den Consent-Dialog erneut öffnet.
- Cookies setzen vor der Einwilligung: Wenn dein Analytics-Skript feuert, bevor das Consent-Banner überhaupt angezeigt wird, verstößt du gegen das Gesetz, egal wie schön dein Banner aussieht. Nutze die DevTools deines Browsers, um das Timing zu überprüfen.
- Eingebettete Inhalte ignorieren: YouTube-Embeds, Google-Maps-Iframes und Social-Media-Widgets setzen alle Cookies. Du musst diese blockieren, bis die Einwilligung erteilt wird, typischerweise indem du das Embed durch einen Platzhalter ersetzt.
Cookie-Consent-Implementierung testen
Nach der Einrichtung deiner Consent-Lösung teste sie gründlich:
- Öffne deine Seite im Inkognito-Modus. Das Consent-Banner sollte sofort erscheinen.
- Vor der Interaktion mit dem Banner prüfe die DevTools auf Cookies. Du solltest nur unbedingt erforderliche Cookies sehen.
- Klicke "Alle ablehnen." Es sollten keine Analytics- oder Marketing-Cookies gesetzt werden. Navigiere durch mehrere Seiten, um das zu bestätigen.
- Lösche die Cookies und lade neu. Klicke "Alle akzeptieren." Überprüfe, ob Analytics- und Marketing-Skripte jetzt korrekt laden.
- Lösche die Cookies erneut. Klicke "Einstellungen verwalten" und akzeptiere nur Analytics. Stelle sicher, dass Marketing-Cookies nicht gesetzt werden, aber Analytics-Cookies schon.
- Suche nach der Möglichkeit, die Einwilligung zu widerrufen. Klicke darauf und überprüfe, ob nicht-essenzielle Cookies entfernt werden.
Cookie-Setup mit InspectWP überprüfen
Führe einen InspectWP-Scan durch, um eine vollständige Liste der Cookies zu sehen, die deine Seite beim Seitenaufruf setzt. Der DSGVO-Bereich markiert Drittanbieter-Cookies und externe Ressourcen, die möglicherweise eine Einwilligung erfordern. Wenn du Google-Analytics-Cookies, Facebook-Cookies oder andere Tracking-Cookies im InspectWP-Bericht siehst, überprüfe, ob deine Consent-Lösung sie vor der Einwilligung korrekt blockiert. Bedenke, dass InspectWP deine Seite crawlt, ohne Cookie-Consent zu erteilen. Jedes Tracking-Cookie, das im Bericht erscheint, deutet auf ein mögliches Compliance-Problem hin.