Bitte beachten Sie: Wenn Sie den ConsentManager-Code über GTM bereitstellen möchten, kann nur der manuelle Blockierungscode über einen TagManager bereitgestellt werden. Wenn Sie die automatische Code-Blockierung nutzen möchten, müssen Sie den CMP-Code direkt in Ihre Website einfügen.
Bitte beachten Sie: Das System überträgt Informationen an window.dataLayer. GTM bietet die Möglichkeit, diese Variable in einen anderen Wert umzubenennen. Ist dies der Fall, werden die Daten nicht mehr von GTM empfangen. Stellen Sie daher bitte sicher, die Variable nicht anders als dataLayer.
Allgemeine Informationen
Um Einwilligungsinformationen mit Google Tag Manager (GTM) zu nutzen, übermittelt die CMP sogenannte Datenebenen an GTM. Die CMP erstellt die folgenden Datenebenenvariablen:
|
Variable |
Beschreibung |
|
cmpRegulation |
Zeichenkette mit dem Namen der Verordnung (z. B. DSGVO, CCPA usw.) |
|
cmpConsentString |
Legt den IAB-Einwilligungsstring fest |
|
cmpConsentVendors |
Legt eine durch Kommas getrennte Liste der Anbieter-IDs fest, für die eine Einwilligung vorliegt, z. B. ,3,7,s22,31,c88, (die Liste beginnt und endet mit einem Komma) |
|
cmpGoogleVendorsConsent |
Entspricht cmpConsentVendors, enthält jedoch zusätzlich die Google-ATP-IDs. |
|
cmpConsentPurposes |
Legt eine durch Kommas getrennte Liste der Zwecke fest, für die eine Einwilligung erteilt wurde, z. B. ,1,2,s3,s4,s5, (die Liste beginnt und endet mit einem Komma) |
|
cmpCurrentStatus |
Name des aktuellen cmp-Ereignisstatus. Mögliche Werte: unknown, loading, consent, legitimateInterest |
|
cmpLastStatus |
Name des letzten/vorherigen cmp-Ereignisstatus. Mögliche Werte: unknown, loading, loaded, consent, legitimateInterest, disabled, hidden, visible, tcloaded, consent-loaded, useraction. |
|
cmpLoadingStatus |
Statusname der Ladesequenz (Stub, Ladevorgang, geladen, Fehler) |
|
cmpDisplayStatus |
Statusname der Anzeige der Einwilligungsschicht (sichtbar, ausgeblendet, deaktiviert) |
|
consentExists |
Es liegt ein Zustimmungsstatus vor (true/false). Bitte beachten Sie, dass dies true ist, sobald die Einwilligungsschicht angezeigt wird und/oder in Fällen, in denen keine Einwilligung erforderlich ist. |
|
userChoiceExists |
Es liegt ein Zustimmungsstatus vor, der auf der Entscheidung des Nutzers basiert (wahr/falsch), z. B. hat der Nutzer auf „Akzeptieren“ oder „Ablehnen“ geklickt oder die benutzerdefinierten Einstellungen gespeichert. |
Das Ereignis cmpEvent kann dann in Kombination mit den oben genannten Variablen als Auslöser für den Tag-Manager dienen, um zu wissen, ob und wann die Codes ausgelöst werden sollen.
Integration über GTM-Vorlage
- Melden Sie sich bei Ihrem Google Tag Manager an und klicken Sie auf „Tags“ > „Neu“ > „Tag-Konfiguration“
- Wählen Sie im Menü „Tag-Typ“ die Option „Features Community CMP Templates > Consentmanager CMP“


- Klicken Sie auf „Zum Arbeitsbereich hinzufügen“ > „Hinzufügen“

- Rufen Sie Ihre CMP-ID, Ihr CDN und Ihren Host in Ihrem Konto unter Menü > CMPs > Codes abrufen für … Websites ab.

- Fügen Sie Ihre CMP-ID, CDN und Host in unsere GTM-Vorlage ein und speichern Sie.
Fügen Sie ohne das Protokoll "https://"! ein

- Setzen Sie das Tag mit dem CMP-Code so, dass es bei jedem Seitenaufruf ausgelöst wird:

Bitte beachten Sie: Aufgrund der Google-Richtlinien müssen wir zunächst „Consent Mode“ aktivieren. Dies kann verwirrend sein, wenn Kunden unsere Vorlage integrieren und z. B. keine Live-Zahlen von Google Analytics sehen. Wenn Sie „Consent Mode“ NICHT verwenden möchten, vergessen Sie bitte nicht, die Funktion in der Vorlage zu deaktivieren.

Manuelle Integration
Wenn du die GTM-Vorlage oder das GTM-Rezept (siehe oben) nicht verwenden möchtest, kannst du den CMP-Code manuell in deinen TagManager einfügen. Kopiere dazu den halbautomatischen/manuellen Blockierungscode aus Menü > CMPs > Code abrufen für … Website und füge ihn als neues Tag in deinen TagManager ein. Stelle das Tag so ein, dass es beim frühestmöglichen Ereignis (PageView oder früher) ausgelöst wird. Lege keine Bedingung/keinen Ausschluss für das Tag fest.
GTM + Google Consent Mode
Um Consentmanager mit GTM und dem Google Consent Mode zu nutzen, lesen Sie bitte unseren speziellen Hilfebereich zum Google Consent Mode hier.
Aktualisieren Sie Ihre Tags und Bedingungen
Hinweis: Wenn der Google Consent Mode aktiviert ist, können Sie die integrierten Einwilligungsvariablen verwenden, um die Tags zu filtern. In den meisten Fällen ist dies einfacher als die Aktualisierung der Triggerbedingungen. Weitere Informationen zum Google Consent Mode finden Sie hier.
Um bestimmte Codes nur bei erteilter Einwilligung anzuzeigen, befolgen Sie bitte diese Schritte:
- Erstellen Sie Variablen in GTM: Gehen Sie in GTM zu „Variablen“ > „Neu“ und klicken Sie auf „Konfigurieren“:

- Wählen Sie den Variablentyp „Seitenvariablen“ > „Data-Layer-Variable“, erstellen Sie die benötigten Variablen – in der Regel benötigen Sie mindestens die Variable
cmpConsentVendors. Füge bei Bedarf weitere Variablen aus der obigen Tabelle hinzu:
- Wiederholen Sie die oben genannten Schritte für alle anderen Variablen, die Sie benötigen (in der Regel cmpGDPR, cmpConsentVendors, cmpConsentPurposes, …)
- Gehen Sie zu „Trigger“ > „Neu“ und klicken Sie auf „Konfigurieren“:

- Verwende den Ereignisnamen
cmpEventund fügen Sie benutzerdefinierte Ereignisse hinzu:
- Für jedes Ereignis ist mindestens eine Regel erforderlich:
cmpConsentVendors contains ...(odercmpConsentPurposes contains ...).
- Legen Sie die Ereignisregeln auf „
cmpConsentVendors contains ,x,“ fest, wobeixdie ID des Anbieters ist. Die IDs der Anbieter finden Sie unter dem Menüpunkt „Anbieter/Whitelist“:
Wichtig: Verwenden Sie immer nur einen Anbieter pro Trigger (... contains ,x,und nicht... contains ,x,y,z,). Wenn Sie mit mehreren Anbietern arbeiten, erstellen Sie mehrere Trigger und einen Trigger pro Anbieter.
Wichtig: Bitte verwenden Sie immer ein Komma vor und nach der Anbieter-ID (z. B.cmpConsentVendors contains ,x,und nichtcmpConsentVendors contains x) - Wiederholen Sie den obigen Schritt für jeden Anbieter und erstellen Sie für jeden Anbieter einen neuen Trigger.

- Wende den Trigger auf deine Tags an und stelle sicher, dass die Tags nicht beim pageView-Ereignis, sondern nur beim cmpEvent ausgelöst werden:



Beispiel für Google Analytics:
Wichtig: Stelle sicher, dass der Trigger der einzige Trigger für jedes von dir verwendete Tag ist. Kombiniere Trigger nicht mit anderen Triggern/Ereignissen wie „Alle Seiten“ oder „Beim Laden der Seite“ usw.
Beispiel: Google Analytics mit Google Tag Manager (GTM) blockieren
Hier sind einige Beispiel-Screenshots, wie eine Konfiguration aussehen würde, um Google Analytics zu blockieren, wenn keine Einwilligung erteilt wurde.
Trigger
Lösen Sie Google Analytics auf allen Seiten aus, sobald die Einwilligung erteilt wurde:

Tag
Google Analytics-Tag mit zugewiesenen Triggern (zweiter Trigger ist optional):

Wie blockiert man den Google Tag Manager-Code, wenn keine Einwilligung erteilt wurde?
Bitte beachten Sie: Wenn Sie nicht GTM selbst, sondern nur die von GTM ausgelösten Tags blockieren möchten und die automatische Blockierung verwenden, stellen Sie bitte sicher, dass der TagManager nicht blockiert wird, indem Sie das Attribut data-cmp-ab="1" in den TagManager-Code einfügen.
Wenn Sie nicht nur die Codes innerhalb des TagManagers, sondern auch den TagManager selbst blockieren möchten, können Sie dies mit den folgenden Schritten tun:
Ihr GTM-Code wird in etwa so aussehen:
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-ABCDEF');</script>
Damit der CMP von consentmanager.net den Code blockieren und erst nach Einwilligung aktivieren kann, müssen Sie den Code wie folgt ändern: (siehe Änderungen im <script ...> Teil des Codes)
<script data-cmp-vendor="s905" type="text/plain" class="cmplazyload" >(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-ABCDEF');</script>
Bitte beachten Sie, dass der automatische Blockierungscode zwar die Ausführung des GTM-Codes durch den Browser verhindern kann, aber möglicherweise nicht verhindern kann, dass der Browser die GTM-Quellcodes herunterlädt. Daher kann es sein, dass der Crawler Sie darauf hinweist, dass GTM ohne Einwilligung geladen wird. Wenn Sie sichergehen wollen, dass GTM nicht ohne Einwilligung geladen wird, MÜSSEN Sie den GTM-Code wie oben beschrieben ändern.
Wie kann man verhindern, dass Google TagManager mehrfach ausgelöst wird?
Das CMP löst jedes Mal den cmpEvent-Datalayer aus, wenn die Einwilligungsinformationen aktualisiert werden. Dies geschieht, wenn die Seite geladen wird und Einwilligungsinformationen im Cookie des Besuchers gefunden werden, wenn die Einwilligungsschicht angezeigt wird und der Besucher eine Auswahl trifft oder wenn der Besucher die Einwilligungsschicht erneut aufruft und die Einstellungen ändert. Im letzten Fall kann es vorkommen, dass der Besucher den Einwilligungslayer mehrmals öffnet und schließt. Jedes Mal, wenn der Layer geschlossen wird, wird der Datalayer ausgelöst, und der Google Tag Manager zeigt möglicherweise einige Tags an oder löst die Zählung von Google Analytics aus. Um zu verhindern, dass Tags auf einer Seite mehrfach ausgelöst werden, befolgen Sie bitte diese Schritte:
- Erstellen Sie für jedes Tag, dessen erneutes Auslösen Sie verhindern möchten, ein neues Tag. Verwenden Sie einen benutzerdefinierten HTML-Code und fügen Sie den folgenden Code ein:
<script> window.prevent_duplicate_googleanalytics = true; </script> - Verwenden Sie für dieses neue Tag denselben Trigger wie für das ursprüngliche Tag.

- Erstellen Sie eine neue Variable vom Typ „Custom JavaScript“ und verwenden Sie den folgenden Code:
function (){ return ("prevent_duplicate_googleanalytics" in window); }
- Füge deinem bestehenden Trigger eine weitere Bedingung hinzu, indem du die zuvor erstellte Variable verwendest („Variable XXX ist gleich false“):

Wie geht man mit dataLayer oder der Reihenfolge der Ereignisse um?
In einigen Fällen sollten Tags nur ausgelöst werden, wenn mehr als ein Ereignis eingetreten ist, z. B. eine bestimmte Aktion des Nutzers und die Erteilung der Einwilligung. Um ein bestehendes Ereignis mit dem ConsentManager cmpEvent, befolge bitte diese Schritte:
- Bearbeiten Sie das Tag und entfernen Sie den vorhandenen Trigger daraus.
- Klicken Sie auf das Symbol, um dem Tag einen neuen Trigger zuzuweisen, und erstellen Sie dann einen neuen Trigger:

- Geben Sie dem neuen Trigger einen Namen und wählen Sie den Triggertyp „Triggergruppe“:

- Fügen Sie Ihren bestehenden Trigger und den cmpEvent-Trigger zur Triggergruppe hinzu:

- Lege die Auslösebedingungen genauso fest wie bei normalen Auslösern (z. B. füge
cmpGDPR equals 1als Bedingung). - Speichere die Triggergruppe und weise sie dem Tag zu.
Pausieren/Aufschieben von dataLayer-Ereignissen, bis die Einwilligung erteilt wurde: Der dataLayer Blocker
Der dataLayer Blocker pausiert alle an GTM gesendeten Ereignisse, bis der Nutzer eine Auswahl getroffen hat.
Wenn ein Ereignis eintritt, speichert der dataLayer Blocker dieses Ereignis automatisch in einem internen Speicher und leitet es nicht an GTM weiter. Dadurch kann das System sicherstellen, dass die Ereignisse in der richtigen Reihenfolge eingehen (z. B. Einwilligungsereignisse vor PageView- oder E-Commerce-Ereignissen). Wenn der Nutzer seine Entscheidung getroffen hat (z. B. akzeptiert oder abgelehnt), leitet der dataLayer Blocker automatisch alle gespeicherten Ereignisse an GTM weiter, damit GTM mit deren Verarbeitung beginnen kann.
Um den dataLayer-Blocker zu aktivieren, navigieren Sie bitte zu Menü > CMPs > Weitere Einstellungen und aktivieren Sie „dataLayer-Blockierung aktivieren“.

dataLayer Blocker + Automatische Blockierungscodes
Wenn Sie die automatischen Blockierungscodes verwenden, können Sie den dataLayer-Blocker wie beschrieben aktivieren. Es sind keine weiteren Schritte erforderlich.
dataLayer-Blocker + halbautomatische Blockiercodes (manuelle Blockiercodes)
Wenn Sie die halbautomatischen Codes (auch als manuelle Blockierungscodes bekannt) verwenden, müssen Sie den dataLayer-Blocker wie oben beschrieben aktivieren und den folgenden Code zu Ihrer Website hinzufügen:
<script type="application/javascript" src="https://cdn.consentmanager.net/delivery/js/datalayerblocker.min.js"></script>
Fügen Sie den obigen Code vor jedem anderen Code von Drittanbietern auf der Website ein <head>. Ändere den obigen Code nicht und versuche nicht, den Code asynchron oder verzögert zu laden.
Zusätzliche Konfiguration
Die folgenden clientseitigen Konfigurationsvariablen können verwendet werden, um das Verhalten des dataLayer Blockers zu beeinflussen:
<script>
window.cmp_datalayername = "dataLayer2";
// Set before the code load to change the name of the dataLayer variable
window.cmp_datalayerprotectoverride = true;
// Set before the code load to enable override protection (dataLayer variable cannot be reset by other codes)
window.cmp_datalayerallowlist = ['event:abc','myname:*'];
// Set before the code load to expend allowList of events that get passed through before user choise is made
</script>
Außerdem kannst du die Website-URL mit …?cmpnodatalayerblocker oder …#cmpnodatalayerblocker aufrufen, um die dataLayer-Blocker-Funktion vorübergehend zu deaktivieren (z. B. während des Testens).
Webinar/Tutorial zur GTM-Implementierung
Bitte beachten Sie: Derzeit können wir dieses Tutorial-Video nur auf Deutsch anbieten. Die GTM-Einrichtung beginnt etwa bei Minute 05:00 – 22:00. Wenn Sie den Google Consent Mode nicht verwenden, können Sie den Rest des Videos überspringen.