Google reCAPTCHA mit Borlabs Cookie DSGVO-konform einbinden
Google reCAPTCHA hält Spam aus Ihren Formularen – lädt dabei aber Skripte von Google, überträgt IP-Adresse und Nutzerverhalten in die USA und setzt Cookies, noch bevor der Besucher irgendetwas bestätigt hat. Genau das ist ohne Einwilligung DSGVO-kritisch, und wer reCAPTCHA hart blockiert, dessen Kontaktformular lässt sich nicht mehr absenden. Dieser Beitrag zeigt Schritt für Schritt, wie Sie reCAPTCHA mit Borlabs Cookie unter die Einwilligung stellen, welche Fehler dabei typisch sind und wann eine datenschutzfreundlichere Alternative die klügere Wahl ist.
Warum reCAPTCHA datenschutzrechtlich heikel ist
reCAPTCHA lädt beim Seitenaufruf api.js von www.google.com/recaptcha sowie Ressourcen von www.gstatic.com. Übertragen werden dabei unter anderem die IP-Adresse und Interaktionsdaten – Mausbewegungen, Tastatureingaben, Verweildauer. Das sind personenbezogene Daten, und sie fließen an Google, also in ein Drittland (USA). Zusätzlich wird ein Cookie _GRECAPTCHA gesetzt; seine Laufzeit beträgt rund sechs Monate (eine taggenaue Dauer veröffentlicht Google nicht offiziell, gängige Cookie-Datenbanken nennen etwa 180 Tage; Stand: Juli 2026).
Entscheidend ist der Unterschied zwischen den Versionen:
- reCAPTCHA v2 (die „Ich bin kein Roboter”-Checkbox) lädt nur dort, wo die Checkbox tatsächlich steht – meist die Formularseite.
- reCAPTCHA v3 (unsichtbar, Score-basiert, Badge unten rechts) lädt in der Standard-Einbindung auf jeder Seite und läuft dauerhaft im Hintergrund. Datenschutzrechtlich ist das der größere Brocken.
Weil hier bereits vor jeder Einwilligung personenbezogene Daten übertragen werden, ist die rechtliche Einordnung heikel. Eine einheitliche Linie der deutschen Aufsichtsbehörden gibt es dazu bis heute nicht; in der Praxis wird der Einsatz oft geduldet, während Behörden und Gerichte in Frankreich und Österreich strenger vorgehen. Der rechtssichere Weg bleibt daher, die aktive Einwilligung einzuholen, bevor reCAPTCHA geladen wird. Zu beachten ist außerdem eine Änderung zum 2. April 2026: Google hat Vertrags- und Produktstruktur umgestellt, sodass reCAPTCHA-Daten seitdem als Auftragsverarbeiter und zweckgebunden nur noch im Auftrag des Website-Betreibers verarbeitet werden – nicht mehr für eigene Zwecke von Google (Stand: Juli 2026). Cookies werden dabei jedoch weiterhin gesetzt und Daten übertragen. Sich allein auf ein berechtigtes Interesse (Art. 6 Abs. 1 lit. f DSGVO) zu berufen, bleibt somit ein Risiko – dazu unten mehr im FAQ.
Das Grundproblem: Einwilligung vs. funktionierendes Formular
reCAPTCHA muss geladen sein, damit ein Formular überhaupt einen gültigen Token erzeugt und abgeschickt werden kann. Blockieren Sie das Skript pauschal, kann niemand mehr Kontakt aufnehmen. Sie haben also nur zwei saubere Wege:
- reCAPTCHA erst nach der Einwilligung laden und das Formular so lange durch einen Platzhalter mit Hinweistext ersetzen.
- Auf ein einwilligungsfreies Verfahren wechseln, das gar keine Google-Daten überträgt.
Der erste Weg ist mit Borlabs Cookie umsetzbar, hat aber Tücken, weil reCAPTCHA nicht als iframe, sondern per JavaScript vom Formular-Plugin nachgeladen wird. Genau deshalb greift der klassische Content Blocker allein oft nicht.
reCAPTCHA in Borlabs Cookie einbinden (Schritt für Schritt)
Die folgenden Schritte beziehen sich auf Borlabs Cookie 3.x. In Version 3 heißen die früheren „Cookies” jetzt Dienste, gruppiert in Dienstgruppen; neu hinzugekommen ist ein globaler Script Blocker.
1. Einen Dienst für reCAPTCHA anlegen
Öffnen Sie im WordPress-Dashboard Borlabs Cookie → Dienstgruppen und legen Sie reCAPTCHA in eine einwilligungspflichtige Gruppe – etwa „Externe Dienste” –, keinesfalls in die Gruppe „Essenziell”. Essenziell sind nur technisch zwingend notwendige Dienste, und reCAPTCHA gehört nicht dazu.
Erstellen Sie dann unter Dienste einen neuen Dienst:
- Name: Google reCAPTCHA
- Anbieter: Google Ireland Limited
- Cookie-Name:
_GRECAPTCHA - Datenschutzlink: die Google-Datenschutzerklärung
- Laufzeit: entsprechend der Cookie-Laufzeit
Borlabs Cookie bringt fertige Dienst-Vorlagen mit; in Version 3 finden Sie sie in der Bibliothek unter Dienste (nicht mehr direkt beim Anlegen wie in 2.x). Prüfen Sie dort, ob eine passende Vorlage für Google reCAPTCHA vorliegt, und übernehmen Sie sie – andernfalls legen Sie den Dienst wie oben beschrieben manuell an.
2. Das Skript mit dem Script Blocker stoppen
Da das Formular-Plugin reCAPTCHA per JavaScript einbindet, nutzen Sie den globalen Script Blocker von Borlabs Cookie 3: Legen Sie einen Blocker an, der Skripte mit dem Muster google.com/recaptcha bzw. dem WordPress-Handle google-recaptcha erfasst, und ordnen Sie ihm in den Blocker-Einstellungen den zugehörigen Dienst „Google reCAPTCHA” zu. Erst wenn der Besucher für diesen Dienst einwilligt, gibt Borlabs das Skript frei. Achten Sie darauf, dass die im Script Blocker und im zugehörigen Content Blocker verwendete ID identisch ist – nur dann greift die Freigabe zuverlässig.
3. Content Blocker um das Formular legen
Damit der Besucher überhaupt einwilligen kann, umschließen Sie das Formular mit einem Content Blocker. Dieser zeigt statt des Formulars zunächst einen kurzen Hinweistext plus Button „reCAPTCHA laden”. Der Klick gilt als Einwilligung für die Gruppe, woraufhin Skript und Formular geladen werden. In der Praxis setzen Sie dazu den Content-Blocker-Shortcode von Borlabs um das Formular oder wählen im Elementor-/Gutenberg-Block die entsprechende Blocker-Zuordnung.
4. Badge ausblenden – aber richtig
Wenn Sie das v3-Badge per CSS ausblenden …
.grecaptcha-badge { visibility: hidden; }
… verlangt Google im Gegenzug, dass der Hinweistext sichtbar im Formular steht:
Diese Seite ist durch reCAPTCHA geschützt und es gelten die Datenschutzerklärung und Nutzungsbedingungen von Google.
Ohne diesen Hinweis verstoßen Sie gegen die Google-Nutzungsbedingungen. Das Ausblenden ändert übrigens nichts an der Datenübertragung – es ist reine Optik, kein Datenschutz.
reCAPTCHA nur dort laden, wo es gebraucht wird
Contact Form 7 lädt reCAPTCHA v3 standardmäßig auf der gesamten Website, sobald die Schlüssel hinterlegt sind. Das ist unnötig und datenschutzrechtlich schlechter. Mit einem kleinen Snippet entfernen Sie das Skript überall außer auf der Kontaktseite:
add_action( 'wp_enqueue_scripts', function () {
if ( ! is_page( 'kontakt' ) ) {
wp_dequeue_script( 'google-recaptcha' );
}
}, 100 );
Passen Sie den Seiten-Slug (kontakt) an Ihre Installation an. Der Skript-Handle google-recaptcha ist der, den Contact Form 7 registriert; andere Formular-Plugins verwenden abweichende Handles, die Sie im Zweifel im Netzwerk-Tab oder im Seitenquelltext ermitteln. Das Snippet gehört in ein Child-Theme oder ein Code-Snippet-Plugin, nicht direkt in die functions.php des Eltern-Themes.
Typische Fehler und ihre Lösung
- Badge bleibt sichtbar, obwohl blockiert: Das v3-Skript wird von Theme oder einem zweiten Plugin ein zweites Mal geladen. Prüfen Sie im Netzwerk-Tab, welche URL das Skript zieht, und erweitern Sie das Muster des Script Blockers entsprechend.
- Formular sendet nach der Einwilligung nicht: Das Skript wird zu spät initialisiert und erzeugt keinen gültigen Token. Lassen Sie den Content Blocker den Inhalt nach der Einwilligung automatisch entsperren bzw. die Seite neu laden, damit das Skript rechtzeitig initialisiert wird, oder wechseln Sie zu reCAPTCHA v2 (Checkbox), das robuster nachlädt.
- Meldung „reCAPTCHA konnte nicht geladen werden”: Das Skript ist geblockt, das Formular erwartet aber schon einen Token. Ursache ist fast immer ein fehlender Content Blocker um das Formular – ohne ihn kann der Besucher gar nicht erst einwilligen.
- Consent-Log bleibt leer: Der Dienst liegt versehentlich in der Gruppe „Essenziell”. Verschieben Sie ihn in eine einwilligungspflichtige Gruppe.
DSGVO-freundlichere Alternativen
Wenn Sie das Einwilligungs-Zusammenspiel ganz umgehen wollen, lohnt der Blick auf Verfahren, die keine Google-Daten übertragen:
- Cloudflare Turnstile: kein Bilderrätsel, keine Übertragung an Google. In vielen Fällen ohne Einwilligung einsetzbar – die datenschutzrechtliche Bewertung sollten Sie dennoch dokumentieren.
- Friendly Captcha: EU-Anbieter, arbeitet mit Proof-of-Work statt Tracking, DSGVO-freundlich, kostenpflichtig.
- hCaptcha: technische Alternative, jedoch mit ähnlicher Drittland-Thematik wie reCAPTCHA.
- Honeypot / Zeitfalle: einwilligungsfrei und für viele kleine Seiten völlig ausreichend, etwa über die Honeypot-Funktion Ihres Formular-Plugins oder ein Antispam-Plugin.
Für die meisten kleineren Websites sind Turnstile oder ein Honeypot der pragmatischste Weg: Das Consent-Problem entfällt, und die Formulare bleiben nutzbar. Mehr zum sauberen Cookie-Banner selbst finden Sie unter /borlabs-cookie-einrichten/, zur rechtssicheren Formularseite unter /dsgvo-kontaktformular/.
FAQ
Reicht für reCAPTCHA nicht das berechtigte Interesse nach Art. 6 Abs. 1 lit. f DSGVO? Rechtlich umstritten. Eine einheitliche Linie der deutschen Aufsichtsbehörden fehlt; in der Praxis wird der Einsatz häufig geduldet, während andere EU-Länder (Frankreich, Österreich) strenger sind. Seit dem 2. April 2026 verarbeitet Google reCAPTCHA-Daten zwar nur noch als Auftragsverarbeiter im Auftrag des Website-Betreibers, dennoch werden weiterhin Cookies gesetzt und Daten übertragen. Der sichere Weg bleibt daher die Einwilligung über Borlabs Cookie oder eine einwilligungsfreie Alternative (Stand: Juli 2026).
Gehört reCAPTCHA in die essenziellen Cookies? Nein. Essenziell sind ausschließlich technisch notwendige Dienste. reCAPTCHA gehört in eine einwilligungspflichtige Gruppe – sonst wird nie eine Einwilligung eingeholt und protokolliert.
v2 oder v3 – was ist datenschutzfreundlicher? v2 (Checkbox) lädt nur auf der Formularseite und lässt sich leichter unter Consent stellen. v3 lädt in der Standard-Einbindung sitewide und läuft dauerhaft im Hintergrund – mehr Datenübertragung, mehr Aufwand.
Brauchen Sie Unterstützung bei DSGVO & Cookie-Consent (Borlabs & Co.)? Ypsilon.dev ist Ihre Webagentur aus Regensburg – jetzt kostenlose Erstberatung anfragen.