{"id":247,"date":"2026-07-06T19:51:24","date_gmt":"2026-07-06T17:51:24","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=247"},"modified":"2026-08-20T17:51:11","modified_gmt":"2026-08-20T15:51:11","slug":"wie-man-google-consent-mode-v2-implementiert","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/","title":{"rendered":"Wie man Google Consent Mode v2 implementiert"},"content":{"rendered":"\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-8f761849 wp-block-group-is-layout-flex\">\n<p class=\"wp-block-paragraph\">Wer im Europ\u00e4ischen Wirtschaftsraum (EWR) t\u00e4tig ist oder Daten europ\u00e4ischer Nutzer verarbeitet, f\u00fcr den ist der Google Consent Mode v2 keine &#8220;Nice-to-have&#8221;-Funktion mehr, sondern eine zwingende Anforderung (seit M\u00e4rz 2024). Durch das Gesetz \u00fcber digitale M\u00e4rkte (DMA) hat Google die Datenverarbeitung seiner Werbe- und Analyseplattformen grundlegend ge\u00e4ndert.<br><br>Ein Fehlen des Consent Mode v2 bedeutet den Verlust von Remarketing-Funktionen und eine drastische Verschlechterung der Conversion-Messung. Das Ziel ist es, die Datenqualit\u00e4t zu erhalten und gleichzeitig strikt die Datenschutzprotokolle einzuhalten. Hier ist eine detaillierte Anleitung, warum Consent Mode v2 wichtig ist, wie er den GMP-Stack beeinflusst und wie er korrekt implementiert wird.<\/p>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Warum ist Consent Mode v2 so entscheidend?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><p>Im Kern schl\u00e4gt der Consent Mode die Br\u00fccke zwischen den Privatsph\u00e4re-Entscheidungen der Nutzer und den Datenerfassungssystemen. Wenn ein Nutzer mit dem Cookie-Banner interagiert, kommuniziert der Consent Mode dessen Auswahl (granted oder denied) an die Google-Tags. Die Einf\u00fchrung der Version 2 brachte zwei kritische neue Parameter mit Fokus auf Werbung:<\/p><figure class=\"lw-diagram\">\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/google-consent-mode-v2-implementierung-via-gtm-und-vanilla-de.png\" width=\"1120\" height=\"536\" alt=\"Diagramm zum Artikel: Warum ist Consent Mode v2 so entscheidend?, Was bewirkt er f\u00fcr Google-Tags (Ads, Floodlights\u2026, Methode 1: Implementierung \u00fcber Google Tag Manager \u2026\">\n<figcaption>Der Ablauf aus dem Artikel in 4 Schritten: Warum ist Consent Mode v2 so entscheidend?, Was bewirkt er f\u00fcr Google-Tags (Ads, Floodlights\u2026, Methode 1: Implementierung \u00fcber Google Tag Manager, Methode 2: Implementierung via Vanilla JavaScript.<\/figcaption>\n<\/figure><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>ad_user_data:<\/strong> Setzt die Zustimmung f\u00fcr das Senden von Nutzerdaten an Google zu Werbezwecken.<\/li>\n\n\n\n<li><strong>ad_personalization:<\/strong> Setzt die Zustimmung f\u00fcr personalisierte Werbung (Remarketing).<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Was bewirkt er f\u00fcr Google-Tags (Ads, Floodlights, SA360, GA4)?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bei korrekter Konfiguration im &#8220;Advanced Consent Mode&#8221; laden die Tags vor der Entscheidung, \u00e4ndern aber ihr Verhalten drastisch basierend auf dem Zustimmungsstatus:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Google Analytics 4 (GA4):<\/strong> Wenn <code>analytics_storage<\/code> verweigert wird, liest oder schreibt GA4 keine Cookies. Stattdessen sendet es &#8220;Cookieless Pings&#8221;. GA4 nutzt maschinelles Lernen, um mittels Verhaltensmodellierung die Datenl\u00fccken zu schlie\u00dfen, ohne die Privatsph\u00e4re zu verletzen.<\/li>\n\n\n\n<li><strong>Google Ads &amp; SA360:<\/strong> Wenn <code>ad_storage<\/code> oder <code>ad_user_data<\/code> verweigert wird, senden Werbe-Tags anonyme Conversion-Pings. Die Google-Engine nutzt dann Conversion-Modellierung, um verlorene Conversions wiederherzustellen, damit ROAS-Berechnungen und automatische Gebotsstrategien stabil bleiben.<\/li>\n\n\n\n<li><strong>Floodlights (Campaign Manager 360):<\/strong> \u00c4hnlich wie bei Google Ads respektieren Floodlight-Tags den Zustimmungsstatus und nutzen aggregierte Daten und Modellierung zur genauen Conversion-Zuordnung in Display- und Video-Kampagnen, ohne auf Third-Party-Cookies angewiesen zu sein.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Ohne Version 2 verwirft Google nicht zugestimmte Daten, was Messung und Zielgruppenaufbau lahmlegt.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Methode 1: Implementierung \u00fcber Google Tag Manager (GTM)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr die meisten Setups ist GTM der sauberste Weg, um Zustimmungen zu verwalten, da er als zentrales Nervensystem der Tracking-Architektur dient.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Schritt 1: Consent Overview aktivieren<\/strong> In den GTM-Arbeitsbereich &gt; Verwaltung &gt; Containereinstellungen wechseln und &#8220;Consent Overview&#8221; aktivieren. Dies schaltet ein Schild-Symbol in der Tag-Ansicht frei, um Zustimmungen einfach zu verwalten.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Schritt 2: CMP-Template oder Consent Mode Template nutzen<\/strong> Anstatt eigene Logik zu bauen, nutze ein zertifiziertes CMP (z.B. Cookiebot, OneTrust, CookieYes) aus der Community Template Gallery.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Das CMP-Template hinzuf\u00fcgen und mit der eigenen CMP-ID konfigurieren.<\/li>\n\n\n\n<li>Als Trigger dient <strong>Consent Initialization \u2013 All Pages<\/strong>. Dies ist ein spezieller Trigger, der vor normalen Seitenaufrufen feuert und garantiert, dass Zustimmungsstandards vor Google-Tags gesetzt werden.<\/li>\n\n\n\n<li>Wenn das CMP direkt implementiert ist, empfiehlt sich das Template &#8220;gtm-templates-simo-ahava&#8221;. Zwei Instanzen als Tags hinzuf\u00fcgen:\n<ul class=\"wp-block-list\">\n<li><strong>Default Tag:<\/strong> Feuert bei Consent Initialization, alles auf &#8220;Denied&#8221;.<\/li>\n\n\n\n<li><strong>Update Tag:<\/strong> Feuert bei Consent Update vom CMP.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Schritt 3: Tag-Zustimmungseinstellungen konfigurieren<\/strong> Google-Tags (GA4, Google Ads) haben eingebaute Pr\u00fcfungen. Man muss sie nicht blockieren:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Den GA4- oder Google Ads-Tag \u00f6ffnen.<\/li>\n\n\n\n<li>Zu Erweiterte Einstellungen &gt; Zustimmungseinstellungen wechseln.<\/li>\n\n\n\n<li>Stelle sicher, dass er <code>ad_storage<\/code> und\/oder <code>analytics_storage<\/code> ben\u00f6tigt. Der Tag erledigt den Rest \u2013 er feuert normal bei Zustimmung oder sendet anonyme Pings bei Ablehnung.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Methode 2: Implementierung via Vanilla JavaScript<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bei hochoptimierten Frontends oder SPAs, bei denen GTM zu schwerf\u00e4llig ist, ist die direkte Implementierung via Vanilla JS der richtige Weg.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Der Standardzustand (Platzierung im <code>&lt;head&gt;<\/code>)<\/strong> Das Skript muss vor <code>gtag.js<\/code> ausgef\u00fchrt werden. Es weist Google an, standardm\u00e4\u00dfig alles abzulehnen.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><\/span><span role=\"button\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" aria-hidden=\"true\" readonly>&lt;script&gt;\n  window.dataLayer = window.dataLayer || [];\n  function gtag(){dataLayer.push(arguments);}\n  \n  gtag('consent', 'default', {\n    'ad_storage': 'denied',\n    'ad_user_data': 'denied',\n    'ad_personalization': 'denied',\n    'analytics_storage': 'denied',\n    'wait_for_update': 500 \n  });\n&lt;\/script&gt;<\/textarea><\/pre><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\"><code><span class=\"line\"><span style=\"color: #81A1C1\">&lt;<\/span><span style=\"color: #D8DEE9FF\">script<\/span><span style=\"color: #81A1C1\">&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  window<\/span><span style=\"color: #81A1C1\">.<\/span><span style=\"color: #D8DEE9FF\">dataLayer <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> window<\/span><span style=\"color: #81A1C1\">.<\/span><span style=\"color: #D8DEE9FF\">dataLayer <\/span><span style=\"color: #81A1C1\">||<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">[]<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">function<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">gtag<\/span><span style=\"color: #ECEFF4\">(){<\/span><span style=\"color: #D8DEE9FF\">dataLayer<\/span><span style=\"color: #81A1C1\">.<\/span><span style=\"color: #88C0D0\">push<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #88C0D0\">arguments<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #88C0D0\">gtag<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">consent<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">default<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">ad_storage<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">denied<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">ad_user_data<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">denied<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">ad_personalization<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">denied<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">analytics_storage<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">denied<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">wait_for_update<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #B48EAD\">500<\/span><span style=\"color: #88C0D0\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">  <\/span><span style=\"color: #ECEFF4\">})<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">&lt;\/<\/span><span style=\"color: #D8DEE9FF\">script<\/span><span style=\"color: #81A1C1\">&gt;<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Der Aktualisierungszustand (getriggert durch Nutzeraktion)<\/strong> Wenn der Nutzer auf &#8220;Akzeptieren&#8221; klickt, muss ein Update an das <code>dataLayer<\/code> gepusht werden.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><\/span><span role=\"button\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" aria-hidden=\"true\" readonly>document.getElementById('btn-accept-all').\naddEventListener('click', function() {\n  gtag('consent', 'update', {\n    'ad_storage': 'granted',\n    'ad_user_data': 'granted',\n    'ad_personalization': 'granted',\n    'analytics_storage': 'granted'\n  });\n  \n  document.getElementById('cookie-banner').style.display = 'none';\n});<\/textarea><\/pre><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\"><code><span class=\"line\"><span style=\"color: #D8DEE9FF\">document<\/span><span style=\"color: #81A1C1\">.<\/span><span style=\"color: #88C0D0\">getElementById<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">btn-accept-all<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">addEventListener<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">click<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #81A1C1\">function<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">  gtag<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">consent<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">update<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">ad_storage<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">granted<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">ad_user_data<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">granted<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">ad_personalization<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">granted<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">    <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">analytics_storage<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">:<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">granted<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">  <\/span><span style=\"color: #ECEFF4\">})<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">  <\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">  document<\/span><span style=\"color: #81A1C1\">.<\/span><span style=\"color: #88C0D0\">getElementById<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">cookie-banner<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">.<\/span><span style=\"color: #88C0D0\">style<\/span><span style=\"color: #81A1C1\">.<\/span><span style=\"color: #88C0D0\">display <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #A3BE8C\">none<\/span><span style=\"color: #ECEFF4\">&#039;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">})<\/span><span style=\"color: #81A1C1\">;<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Falls n\u00f6tig, ist die ID des Buttons &#8220;btn-accept-all&#8221; anzupassen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Zusammenfassung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die Implementierung des Google Consent Mode v2 ist der definitive Weg, um digitale Analytics- und Werbeinfrastrukturen zukunftssicher zu machen. Ob \u00fcber die GTM-Schnittstelle oder per Vanilla JavaScript \u2013 die korrekte Definition von Standardzust\u00e4nden und Aktualisierungen stellt die Rechtskonformit\u00e4t sicher und erm\u00f6glicht es den Algorithmen von Google gleichzeitig, Datenl\u00fccken zu schlie\u00dfen.<\/p>\n\n\n<div class=\"lw-quellen\">\n<h2>Quellen<\/h2>\n<ul>\n<li><a href=\"https:\/\/developers.google.com\/tag-platform\/security\/guides\/consent\" target=\"_blank\" rel=\"noopener noreferrer\">Consent Mode implementation<\/a><\/li>\n<li><a href=\"https:\/\/developers.google.com\/tag-platform\/gtagjs\/reference\" target=\"_blank\" rel=\"noopener noreferrer\">gtag.js reference<\/a><\/li>\n<\/ul>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Wer im Europ\u00e4ischen Wirtschaftsraum (EWR) t\u00e4tig ist oder Daten europ\u00e4ischer Nutzer verarbeitet, f\u00fcr den ist der Google Consent Mode v2 keine &#8220;Nice-to-have&#8221;-Funktion mehr, sondern eine zwingende Anforderung (seit M\u00e4rz 2024). Durch das Gesetz \u00fcber digitale M\u00e4rkte (DMA) hat Google die Datenverarbeitung seiner Werbe- und Analyseplattformen grundlegend ge\u00e4ndert. Ein Fehlen des Consent Mode v2 bedeutet den [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":12631,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[92139,92142,92265,92241,92145,92268],"class_list":["post-247","post","type-post","status-publish","format-standard","hentry","category-digital-analytics-de","tag-consent-management-de","tag-consent-mode-v2-de","tag-prywatnosc-danych-pl-de","tag-gdpr-de","tag-google-tag-manager-de","tag-javascript-de"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Wie man Google Consent Mode v2 implementiert - Lukas Wojcik - Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Wie man Google Consent Mode v2 implementiert - Lukas Wojcik - Blog\" \/>\n<meta property=\"og:description\" content=\"Wer im Europ\u00e4ischen Wirtschaftsraum (EWR) t\u00e4tig ist oder Daten europ\u00e4ischer Nutzer verarbeitet, f\u00fcr den ist der Google Consent Mode v2 keine &#8220;Nice-to-have&#8221;-Funktion mehr, sondern eine zwingende Anforderung (seit M\u00e4rz 2024). Durch das Gesetz \u00fcber digitale M\u00e4rkte (DMA) hat Google die Datenverarbeitung seiner Werbe- und Analyseplattformen grundlegend ge\u00e4ndert. Ein Fehlen des Consent Mode v2 bedeutet den [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-06T17:51:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-20T15:51:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-247-google-consent-mode-v2-implementierung-v-d.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"luky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"luky\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/\"},\"author\":{\"name\":\"luky\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Wie man Google Consent Mode v2 implementiert\",\"datePublished\":\"2026-07-06T17:51:24+00:00\",\"dateModified\":\"2026-08-20T15:51:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/\"},\"wordCount\":714,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-247-google-consent-mode-v2-implementierung-v-d.png\",\"keywords\":[\"Consent Management\",\"Consent Mode v2\",\"Data Privacy\",\"GDPR\",\"Google Tag Manager\",\"JavaScript\"],\"articleSection\":[\"Digital Analytics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/\",\"name\":\"Wie man Google Consent Mode v2 implementiert - Lukas Wojcik - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-247-google-consent-mode-v2-implementierung-v-d.png\",\"datePublished\":\"2026-07-06T17:51:24+00:00\",\"dateModified\":\"2026-08-20T15:51:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-247-google-consent-mode-v2-implementierung-v-d.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-247-google-consent-mode-v2-implementierung-v-d.png\",\"width\":1200,\"height\":630,\"caption\":\"Wie man Google Consent Mode v2 implementiert\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/digital-analytics-de\\\/wie-man-google-consent-mode-v2-implementiert\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Wie man Google Consent Mode v2 implementiert\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"luky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"luky\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"],\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/author\\\/luky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Wie man Google Consent Mode v2 implementiert - Lukas Wojcik - Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/","og_locale":"en_US","og_type":"article","og_title":"Wie man Google Consent Mode v2 implementiert - Lukas Wojcik - Blog","og_description":"Wer im Europ\u00e4ischen Wirtschaftsraum (EWR) t\u00e4tig ist oder Daten europ\u00e4ischer Nutzer verarbeitet, f\u00fcr den ist der Google Consent Mode v2 keine &#8220;Nice-to-have&#8221;-Funktion mehr, sondern eine zwingende Anforderung (seit M\u00e4rz 2024). Durch das Gesetz \u00fcber digitale M\u00e4rkte (DMA) hat Google die Datenverarbeitung seiner Werbe- und Analyseplattformen grundlegend ge\u00e4ndert. Ein Fehlen des Consent Mode v2 bedeutet den [&hellip;]","og_url":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-07-06T17:51:24+00:00","article_modified_time":"2026-08-20T15:51:11+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-247-google-consent-mode-v2-implementierung-v-d.png","type":"image\/png"}],"author":"luky","twitter_card":"summary_large_image","twitter_misc":{"Written by":"luky","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/"},"author":{"name":"luky","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Wie man Google Consent Mode v2 implementiert","datePublished":"2026-07-06T17:51:24+00:00","dateModified":"2026-08-20T15:51:11+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/"},"wordCount":714,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-247-google-consent-mode-v2-implementierung-v-d.png","keywords":["Consent Management","Consent Mode v2","Data Privacy","GDPR","Google Tag Manager","JavaScript"],"articleSection":["Digital Analytics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/","url":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/","name":"Wie man Google Consent Mode v2 implementiert - Lukas Wojcik - Blog","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-247-google-consent-mode-v2-implementierung-v-d.png","datePublished":"2026-07-06T17:51:24+00:00","dateModified":"2026-08-20T15:51:11+00:00","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-247-google-consent-mode-v2-implementierung-v-d.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-247-google-consent-mode-v2-implementierung-v-d.png","width":1200,"height":630,"caption":"Wie man Google Consent Mode v2 implementiert"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/digital-analytics-de\/wie-man-google-consent-mode-v2-implementiert\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Wie man Google Consent Mode v2 implementiert"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"luky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"luky"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"],"url":"https:\/\/www.lukaswojcik.com\/blog\/author\/luky\/"}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/247","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=247"}],"version-history":[{"count":10,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/247\/revisions"}],"predecessor-version":[{"id":12601,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/247\/revisions\/12601"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/12631"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=247"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=247"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=247"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}