> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.pandectes.io/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# So prüfen Sie, ob der Google Consent Mode korrekt umgesetzt ist

**Stellen Sie mit unserer Anleitung sicher, dass der Google Consent Mode in Ihrem Shopify-Shop korrekt umgesetzt ist. Erfahren Sie, wie Sie Ihre Konfiguration prüfen und Fehler beheben.**

### Video-Tutorial

${youtube}[Prüfen, ob Sie Google Consent Mode V2 erfüllen: Anleitung für Shopify und Pandectes](2zg7dBeH71o)

### Einführung

Mit unserer Anwendung und aktivierter Google-Consent-Mode-Integration passen Sie das Verhalten Ihrer Google-Tags an die Einwilligung Ihrer Nutzer an. Sie legen fest, ob eine Einwilligung für Analyse- und/oder Werbe-Cookies vorliegt, und die Google-Tags richten sich dynamisch danach, indem sie Cookies nur für die vorgesehenen Zwecke oder Kategorien einsetzen. Das ist eine Alternative zum Blockieren von Skripten.

| [Hier](https://help.pandectes.io/en/article/how-to-create-a-banner-that-meets-googles-banner-requirements-1vbnphy/) erfahren Sie, wie Sie einen Banner erstellen, der die Anforderungen von Google erfüllt.

Der Google Consent Mode (GCM) ist ein einfacher und verlässlicher Weg, um zu verhindern, dass Google-Skripte über den Google Tag Manager oder gtag Cookies setzen. Die Umsetzung ist unkompliziert, es kann jedoch schwierig sein zu bestätigen, dass alles korrekt eingerichtet ist und funktioniert.

Wichtig zu wissen: Nur bestimmte Tags im Google Tag Manager bringen eingebaute Einwilligungsprüfungen mit. Sie sind in der folgenden Abbildung aufgeführt.

![](https://storage.crisp.chat/users/helpdesk/website/1a5af239e847cf00/image_185jx11.png)

Ist der Consent Mode aktiv, verändert er das Verhalten dieser Pings.

* Pings zum Einwilligungsstatus: Sie werden von jeder besuchten Seite gesendet, auf der der Consent Mode eingebunden ist, sowie bei jeder Änderung der Einwilligung (etwa wenn der Nutzer zustimmt). Sie übermitteln den Einwilligungsstatus (granted oder denied) je Einwilligungstyp (etwa ad storage, analytics storage).
* Conversion-Pings: Sie zeigen an, dass eine Conversion stattgefunden hat.
* Google-Analytics-Pings: Sie werden auf jeder Seite mit eingebundenem Google Analytics sowie beim Protokollieren von Ereignissen gesendet.

Um die Wirksamkeit des Consent Mode zu prüfen, sollten Sie drei Punkte betrachten:

* Tags mit eingebauter Einwilligungsprüfung werden unabhängig von der Einwilligung ausgelöst.
* Der Google Tag Manager hat die Standardeinstellungen des Consent Mode erfasst, und aktualisierte Werte werden in den dataLayer geschrieben, sobald die Einwilligungspräferenzen bekannt sind.
* Vor der Einwilligung oder nach einer Ablehnung werden keine Cookies gesetzt.

Diese Prüfungen helfen Ihnen zu beurteilen, ob der Google Consent Mode korrekt umgesetzt ist und richtig arbeitet.

### Prüfung mit dem Google Tag Assistant

In der Vorschau können Sie bestätigen, dass die Einwilligung aktiv ist und ob Sie Version 2 nutzen. Öffnen Sie den [Google Tag Assistant](https://tagassistant.google.com/) und geben Sie die Adresse Ihres Shops ein. In einem weiteren Tab öffnet sich Ihr Shop. Im Tab mit dem Google Tag Assistant sehen Sie anschließend das Folgende.

1. Wählen Sie "Consent".
2. Öffnen Sie den Reiter "Consent".
3. Stellen Sie sicher, dass die "On-page Defaults" gesetzt sind und die beiden neuen Parameter `ad_personalization` und `ad_user_data` enthalten.

![](https://storage.crisp.chat/users/helpdesk/website/1a5af239e847cf00/image_wo8xmu.png)

### Prüfen, ob Tags ausgelöst werden

Diese Prüfung führen Sie über die Konsole der Entwicklerwerkzeuge Ihres Browsers durch.

```javascript
"Pandectes" in window
  ? Pandectes.consent.status && Pandectes.fn.revokeConsent()
  : console.warn("Pandectes methods are not available!");
```

Prüfen Sie im nächsten Schritt mit der Browser-Erweiterung Google Tag Assistant, ob Tags bereits vor dem Einholen der Einwilligung aktiviert wurden. Damit bestätigen Sie, ob die freigegebenen Tags ausgeführt wurden. In diesem Beispiel sehen wir, dass sowohl der Google Tag Manager als auch Google Analytics geladen wurden.

![](https://storage.crisp.chat/users/helpdesk/website/1a5af239e847cf00/image_jt7btj.png)

|| Hinweis: Nach Abgabe der Einwilligung sollten dieser Liste keine weiteren unterstützten Tags hinzugefügt werden.

### Die Consent-Mode-Einstellungen prüfen

###### Bei Nutzung des Google Tag Manager

Wird eine Seite vor dem Einholen der Einwilligung geladen, müssen die Einstellungen des Google Consent Mode korrekt im Google Tag Manager erfasst sein. Mit unserer Google-Consent-Mode-Integration werden die Standardeinstellungen in den dataLayer geschrieben. Mit folgendem Skript prüfen Sie die im Google Tag Manager registrierten Einwilligungspräferenzen (haben Sie den GTM nicht in Ihrem Shop eingebunden, läuft dieses Skript nicht):

```javascript
(() => {
  l = s => s == undefined ? "" : s ? "granted" : "denied";
  c = s => s == "granted" ? "color: #0C0": "color: #C00"; 
  if (!"google_tag_data" in window) {
    console.log("No Google Consent Mode data found");
    return;
  }
  var g = google_tag_data.ics.entries, 
      i = "",
      t = "", 
      u = "";
  for (var a in g) {
    i = l(g[a]['initial']);
    u = l(g[a]['update']);
    if (i == "" && u == "") continue;
    t = ("\t" + a + ":" +
      (i != "" ? "\n\t\tDefault: %c" + i : "%c")
      + "%c" +
      (u != "" ? "\n\t\tUpdate: %c" + u : "%c"));
    console.log(t, i != "" ? c(i) : "",
    "", u != "" ? c(u) : "", "");
  }
  if (i == "") console.log("No default Google Consent settings found");
})()
```

###### Bei Nutzung anderer Google-Properties

Ist die Google-Consent-Mode-Integration in unserer Anwendung aktiv, sollten diese Einstellungen noch vor allem anderen im dataLayer stehen.

Den Inhalt des dataLayer prüfen Sie, indem Sie in der Konsole den Befehl **dataLayer** ausführen oder mit diesem Skript, das die Ausgabe etwas lesbarer macht:

```javascript
(function(w, d, t) {
  for (i of w[d])
    t += JSON.stringify(i).replaceAll(/\"\d{1,}\":/g, "") + "\n";
  console.log(t);
})(window, "dataLayer", "")
```

Die Ausgabe sollte ungefähr so aussehen (die Einstellungen des Google Consent Mode in **Fettschrift**):

**{"set","ads_data_redaction",true}**
**{"set","url_passthrough",true}**
**{"consent","default",{"ad_personalization":"denied","ad_storage":"denied","ad_user_data":"denied","analytics_storage":"denied","functionality_storage":"denied","personalization_storage":"denied","security_storage":"granted","wait_for_update":2000}}**
{"event":"Pandectes_Consent_Update","pandectes_status":"deny","pandectes_categories":{"C000":"allow","C001":"deny","C002":"deny","C003":"deny"},"gtm.uniqueEventId":4}
{"gtm.start":1676370384330,"event":"gtm.js","gtm.uniqueEventId":5}
{"event":"sh_info","page_type":"Homepage","page_currency":"EUR","user":{"type":"visitor"},"gtm.uniqueEventId":6}
{"event":"gtm.dom","gtm.uniqueEventId":7}
{"event":"gtm.load","gtm.uniqueEventId":8}

Nachdem die Einwilligung für alle Cookie-Typen erteilt wurde, enthält der dataLayer sowohl die anfänglichen als auch die aktualisierten Einstellungen des Google Consent Mode (GCM in **Fettschrift**):

**{"set","ads_data_redaction",true}**
**{"set","url_passthrough",true}**
{"consent","default",{"ad_personalization":"denied","ad_storage":"denied","ad_user_data":"denied","analytics_storage":"denied","functionality_storage":"denied","personalization_storage":"denied","security_storage":"granted","wait_for_update":2000}}
{"event":"Pandectes_Consent_Update","pandectes_status":"deny","pandectes_categories":{"C000":"allow","C001":"deny","C002":"deny","C003":"deny"},"gtm.uniqueEventId":4}
{"gtm.start":1676370384330,"event":"gtm.js","gtm.uniqueEventId":5}
{"event":"sh_info","page_type":"Homepage","page_currency":"EUR","user":{"type":"visitor"},"gtm.uniqueEventId":6}
{"event":"gtm.dom","gtm.uniqueEventId":7}
{"event":"gtm.load","gtm.uniqueEventId":8}
**{"consent","update",{"ad_personalization":"granted", "ad_storage":"granted","analytics_storage":"granted","ad_user_data":"granted","functionality_storage":"granted","personalization_storage":"granted","security_storage":"granted"}}**
{"event":"Pandectes_Consent_Update","pandectes_status":"allow","pandectes_categories":{"C0000":"allow","C0001":"allow","C0002":"allow","C0003":"allow"},"gtm.uniqueEventId":10}
{"event":"gtm.triggerGroup","gtm.triggers":"9024031_93,9024031_140,9024031_255","gtm.uniqueEventId":11}
{"js","2023-02-14T10:26:32.900Z"}

### Prüfen, ob Cookies gesetzt wurden

Das ist der schwierigste Teil. Um sicherzugehen, dass keine Cookies bereits zuvor gesetzt oder von einer anderen Domain übernommen wurden, müssen wir zunächst bestätigen, dass keine Cookies vorhanden sind.

Nutzen Sie dafür den Inkognito-Modus, oder löschen Sie die Cookies manuell über die Entwicklerwerkzeuge (F12 oder Strg + Umschalt + I) im Bereich Application → Cookies.

Rufen Sie vor der Einwilligung einige Seiten auf und klicken Sie verschiedene Links an. Dabei sollten die Cookies **_ga**, **_gid** und **_gat** nicht entstehen.

Wurden die beiden vorherigen Prüfungen korrekt durchgeführt, werden diese Cookies vor der Einwilligung sehr wahrscheinlich nicht gesetzt. Erscheinen sie dennoch, binden Sie sie vermutlich über ein Inline-Skript wie analytics.js ein, das den Consent Mode nicht unterstützt.

###### Cookies des Consent Mode

Nach der Einrichtung von Consent Mode Version 2 bestätigen Sie die Aktivierung anhand der Parameter **gcs** und **gcd**. **gcs** gehört zum ursprünglichen Consent Mode, **gcd** speziell zu Version 2. Diese Parameter sind in der Netzwerk-Nutzlast sichtbar, wie unten dargestellt.

![](https://storage.crisp.chat/users/helpdesk/website/1a5af239e847cf00/image_1mo0k9c.png)

G111 erscheint im Format G1xy, wobei x und y für die Cookies von Google Ads (ad_storage) und Google Analytics (analytics_storage) stehen. Die Werte 1 und 0 stehen für Zustimmung und Ablehnung.

Die möglichen Kombinationen des gcs-Parameters:

| Code von gcs | Bedeutung | Wert des Einwilligungstyps |
| ---- |
| G111 | Einwilligung für Google Ads und Google Analytics erteilt | ad_storage='granted', analytics_storage='granted' |
| G110 | Einwilligung für Google Ads erteilt, für Google Analytics verweigert | ad_storage='granted', analytics_storage='denied' |
| G101 | Einwilligung für Google Ads verweigert, für Google Analytics erteilt | ad_storage='denied', analytics_storage='granted' |
| G100* | Einwilligung für Google Ads und Analytics verweigert | ad_storage='denied', analytics_storage='denied' |

*G100 ist nur bei umgesetztem Advanced Consent Mode möglich.*

Mit Consent Mode Version 2 kommt zusätzlich der Parameter gcd hinzu. Er fasst die Präferenzen für ad_storage, analytics_storage, ad_user_data und ad_personalization zusammen, aufgebaut wie folgt:

&gcd=11<ad_storage>1<analytics_storage>1<ad_user_data>1<ad_personalization>Z

Dabei kann Z 5 sein oder gelegentlich ein anderer Wert.

Die Folge beginnt mit 11, wobei die Ziffer 1 als Trennzeichen zwischen den Präferenzen dient.

In der Praxis sieht das Format aus wie im gezeigten Screenshot, etwa:

gcd: 11r1r1r1r5

Mit der folgenden Tabelle entschlüsseln Sie den Einwilligungsstatus im gcd:

| Buchstabe im gcd-Parameter (alles kleingeschrieben) | Beschreibung |
| ---- |
| l | Das kleine L bedeutet, dass das Signal nicht über den Consent Mode gesetzt ist, es wird also weder etwas verweigert noch zugestimmt. |
| p | p steht für standardmäßig verweigert. |
| q | q steht für standardmäßig verweigert und auch nach einer Aktualisierung durch den Nutzer im Banner weiterhin verweigert. |
| t | t bedeutet standardmäßig erteilt, ohne Aktualisierung, selbst wenn der Nutzer im Banner handelt. |
| r | r bedeutet standardmäßig verweigert, und sobald der Nutzer einwilligt, wird der Wert aktualisiert. |
| m | m bedeutet, der Nutzer hat die Einwilligung verweigert und sie bleibt nach der Aktualisierung verweigert. Es gibt keinen Standardwert. |
| n | n bedeutet, der Nutzer hat eingewilligt und die Einwilligung gilt nach der Aktualisierung als erteilt. Es gibt keinen Standardwert. |
| u | u bedeutet standardmäßig erteilt und nach der Ablehnung durch den Nutzer verweigert. |
| v | v bedeutet standardmäßig erteilt und auch nach der Einwilligung des Nutzers erteilt. |

###### Beispiel

gcd: 11l1p1u1v5 bedeutet: Für ad_storage (Google Ads) ist kein Signal gesetzt; analytics storage steht automatisch auf verweigert; die Einwilligung in die Nutzung personenbezogener Daten für Google Ads wurde zunächst erteilt, vom Nutzer später aber widerrufen; und die Einwilligung in personalisierte Werbung (Retargeting) ist standardmäßig erteilt und wurde vom Nutzer bestätigt.

Hinweis: Die oben gezeigten Buchstaben können sich ändern. Google passt sie möglicherweise an, um zu verhindern, dass sich der Consent Mode allein über die URL entschlüsseln lässt. Am verlässlichsten prüfen Sie die korrekte Konfiguration mit dem Tag Assistant im Reiter Consent, wie oben beschrieben.

**Warum wirken die Daten möglicherweise ungenau?**

Nach den oben beschriebenen Schritten entsprechen Ihre Daten womöglich nicht Ihren Erwartungen. Dazu erreichen uns viele Anfragen, doch in diesem Bereich können wir leider nicht weiterhelfen.

Der Google Consent Mode ist im Kern eine API, über die unsere Anwendung Einwilligungsinformationen an den Google Tag Manager übermittelt. Wie ein Tag diese Daten auswertet, liegt außerhalb unseres Einflussbereichs. Wir können sicherstellen, dass unsere Anwendung die Einwilligungseinstellungen korrekt sendet und dass der Google Tag Manager sie korrekt empfängt. Wie die Tags diese Daten anschließend nutzen, wissen wir nicht.

Wir können weder erläutern, wie Google Analytics auf die Vorgaben des Consent Mode reagieren sollte, noch stellvertretend für Google sagen, welche Daten erfasst werden sollten. Das mag wenig hilfreich klingen, doch wir können die Datenerfassung in Google Analytics von unserer Seite aus nicht beeinflussen. Unsere Anwendung und die Google-Consent-Mode-Integration sind ausschließlich dafür zuständig, den Einwilligungsstatus im Google Tag Manager zu setzen und zu aktualisieren. Mehr zum Consent Mode und zum Verhalten der Tags finden Sie in der [Dokumentation zum Google Consent Mode](/en/article/google-consent-mode-v2-5l2iaq/).

Möchten Sie die Google-Consent-Mode-Integration deaktivieren, schalten Sie sie einfach in den Integrationen aus.

Mehr zum Google Consent Mode direkt von Google finden Sie [hier](https://developers.google.com/tag-platform/security/guides/consent?consentmode=advanced).