Google Tag Manager (GTM)

Observera: Om du vill leverera ConsentManager-koden via GTM kan endast den manuella blockeringskoden levereras med hjälp av en TagManager. Om du vill använda automatisk kodblockering måste du infoga CMP-koden direkt på din webbplats.

Observera: Systemet skickar information till window.dataLayer. GTM erbjuder möjligheten att byta namn på denna variabel till ett annat värde. Om så sker kommer data inte längre att tas emot av GTM. Se därför till att inte byta namn på variabeln till något annat än dataLayer.

Allmän information

För att kunna använda samtyckesinformation med Google Tag Manager (GTM) kommer CMP att skicka så kallade datalager till GTM. CMP kommer att skapa följande datalagsvariabler:

Variabel

Beskrivning

cmpRegulation

Sträng med namnet på förordningen (t.ex. GDPR, CCPA osv.)

cmpConsentString

Ställer in IAB:s samtyckessträng

cmpConsentVendors

Anger en kommaseparerad lista över leverantörs-ID:n som har fått samtycke, t.ex. ,3,7,s22,31,c88, (listan börjar och slutar med kommatecken)

cmpGoogleVendorsConsent

Samma som cmpConsentVendors men inkluderar Googles ATP-ID:n.

cmpConsentPurposes

Anger en kommaseparerad lista över syften som har fått samtycke, t.ex. ,1,2,s3,s4,s5, (listan börjar och slutar med kommatecken)

cmpCurrentStatus

Nuvarande namn på cmp-händelsestatus. Möjliga värden: unknown, loading, consent, legitimateInterest
. Obs: Ytterligare statusar kan läggas till från tid till annan

cmpLastStatus

Namn på senaste/föregående cmp-händelsestatus. Möjliga värden: okänt, laddar, laddad, samtycke, legitimt intresse, inaktiverad, dold, synlig, tcladdad, samtycke-laddad, användaråtgärd.
Obs: Ytterligare statusar kan läggas till från tid till annan
Obs: Detta inkluderar även ALLA TCF- och GPP-statusnamn, t.ex. sectionChange.*, cmpDisplayStatus.*, och så vidare

cmpLoadingStatus

Statusnamn för laddningssekvensen (stub, loading, loaded, error)

cmpDisplayStatus

Statusnamn för visningen av samtyckeslagret (synlig, dold, inaktiverad)

consentExists

En samtyckesstatus finns (true/false). Observera att detta är sant så snart samtyckeslagret visas och/eller i fall där inget samtycke krävs.

userChoiceExists

En samtyckesstatus finns som baseras på användarens val (sant/falskt), t.ex. att användaren klickade på Acceptera, Avvisa eller sparade de anpassade inställningarna.

Händelsen cmpEvent i kombination med ovanstående variabler kan sedan användas som en utlösare för tagghanteraren för att avgöra om/när koderna ska aktiveras.

Integration via GTM-mall

  1. Logga in på din Google Tag Manager och klicka på Taggar > Ny > Taggkonfiguration
  2. Välj Funktioner Community CMP-mallar > Consentmanager CMP i menyn Tagtyp



  3. Klicka på Lägg till i arbetsytan > Lägg till



  4. Hämta ditt CMP-ID, CDN och värd från ditt konto via Meny > CMP:er > Hämta koder för … webbplatser



  5. Ange ditt CMP-ID, CDN och värd i vår GTM-mall och spara.

    Ange utan protokollet "https://"!


    gtm_inputs.jpg

  6. Ställ in taggen med CMP-koden så att den aktiveras vid varje sidvisning:

 

Observera: På grund av Googles riktlinjer måste vi initialt aktivera Consent Mode. Detta kan vara förvirrande när kunder integrerar vår mall och t.ex. inte ser siffror från Google Analytics i realtid. Om du INTE vill använda Consent Mode, glöm inte att inaktivera funktionen i mallen.

 

Manuell integration

Om du inte vill använda GTM-mallen eller GTM-receptet (se ovan) kan du infoga CMP-koden manuellt i din TagManager. Kopiera därför den halvautomatiska/manuella blockeringskoden från Meny > CMP:er > Hämta kod för … Webbplats och klistra in den i din TagManager som en ny tagg. Ställ in taggen så att den aktiveras vid den tidigast möjliga händelsen (PageView eller tidigare). Ställ inte in något villkor/undantag för taggen.

GTM + Googles samtyckesläge

För att använda Consentmanager med GTM och Google Consent Mode, se vårt särskilda hjälpavsnitt om Google Consent Mode här.

Uppdatera dina taggar och villkor

Obs: Om Googles samtyckesläge är aktiverat kan du använda de inbyggda samtyckesvariablerna för att filtrera taggarna. I de flesta fall är detta enklare än att uppdatera utlösningsvillkoren. Mer information om Googles samtyckesläge finns här.

För att visa vissa koder endast om samtycke har givits, följ dessa steg:

  1. Skapa variabler i GTM: I GTM går du till Variabler > Ny och klickar på Konfigurera:

  2. Välj variabeltyp Sidvariabler > Datalagervariabel, skapa de variabler som behövs; vanligtvis behöver du åtminstone variabeln cmpConsentVendors. Lägg till fler variabler från tabellen ovan om det behövs:

  3. Upprepa stegen ovan för alla andra variabler som du behöver (vanligtvis cmpGDPR, cmpConsentVendors, cmpConsentPurposes, …)

  4. Gå till Triggers > New och klicka på konfigurera:



  5. Använd händelsenamn cmpEvent och lägg till anpassade händelser till den:

     

  6. För varje händelse krävs minst en regel:  cmpConsentVendors contains ...  (eller cmpConsentPurposes contains ... ).

  7. Ställ in händelsereglerna på cmpConsentVendors contains ,x, där x är leverantörens ID. ID:n för leverantörerna finns under menyn Leverantörer/Vitlista:


    Viktigt: Använd alltid endast en leverantör per utlösare (... contains ,x, och inte ... contains ,x,y,z,). Om du arbetar med flera leverantörer, skapa flera utlösare och en utlösare per leverantör.
    Viktigt: Använd alltid kommatecken före och efter leverantörs-ID:t (t.ex. cmpConsentVendors contains ,x, och inte cmpConsentVendors contains x)

     

  8. Upprepa ovanstående steg för varje leverantör och skapa en ny trigger för varje leverantör

  9. Använd triggern på dina taggar och se till att taggarna inte aktiveras med pageView-händelsen utan endast med cmpEvent:



    Exempel för Google Analytics:



    Viktigt: Se till att triggern är den enda triggern för varje tagg du använder. Kombinera inte triggern med andra triggern/händelser som "Alla sidor" eller "Vid sidladdning" och så vidare.

Exempel: Blockera Google Analytics med Google TagManager (GTM)

Här är några exempel på skärmdumpar som visar hur en inställning skulle se ut för att blockera Google Analytics om inget samtycke ges.

Trigger

Aktivera Google Analytics på alla sidor när samtycke ges:

Tag

Google Analytics-tagg med tilldelade utlösare (den andra utlösaren är valfri):

Hur blockerar man Google TagManager-koden om inget samtycke ges?

Observera: Om du inte vill blockera GTM i sig utan endast de taggar som aktiveras av GTM och när du använder automatisk blockering, se till att TagManager inte blockeras genom att infoga attributet data-cmp-ab="1" i TagManager-koden.

Om du inte bara vill blockera koderna i TagManager utan även TagManager själv kan du göra det genom att följa dessa steg:

Din GTM-kod kommer att se ungefär så här ut:

<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>

För att consentmanager.net CMP ska kunna blockera och endast aktivera koden vid samtycke måste du ändra koden på följande sätt: (se ändringar i <script ...> delen av koden)

<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>

Observera att den automatiska blockeringskoden kan hindra webbläsaren från att köra GTM-koden, men kanske inte kan hindra webbläsaren från att ladda ner GTM-källkoderna. Därför kan det hända att sökroboten varnar dig om att GTM laddas utan samtycke. Om du vill vara säker på att GTM inte laddas utan samtycke MÅSTE du ändra GTM-koden enligt beskrivningen ovan.

Hur förhindrar man att Google TagManager aktiveras flera gånger?

CMP aktiverar datalagret cmpEvent varje gång samtyckesinformationen uppdateras. Detta sker när sidan laddas och samtyckesinformation hittas i besökarens cookie, när samtyckeslagret visas och besökaren gör ett val eller när besökaren öppnar samtyckeslagret igen och ändrar inställningarna. I det sista fallet kan det hända att besökaren öppnar och stänger samtyckeslagret flera gånger. Varje gång lagret stängs kommer datalagret att aktiveras och Google TagManager kan visa vissa taggar eller aktivera Google Analytics-räkning. För att förhindra att taggar aktiveras flera gånger på en sida, följ dessa steg:

  1. Skapa en ny tagg för varje tagg som du vill förhindra att aktiveras igen. Använd en anpassad HTML-kod och infoga följande kod:

    <script> window.prevent_duplicate_googleanalytics = true; </script>

  2. Använd samma trigger för den här nya taggen som du använder för den ursprungliga taggen.

  3. Skapa en ny variabel av typen anpassad javascript och använd följande kod:
    function (){ return ("prevent_duplicate_googleanalytics" in window); }

  4. Lägg till ytterligare ett villkor till din befintliga trigger med hjälp av variabeln du skapade tidigare ("Variabel XXX är lika med false"):

Hur hanterar man dataLayer eller händelseordning?

I vissa fall ska taggar endast aktiveras när mer än en händelse har inträffat, t.ex. en viss åtgärd från användaren och samtycke har givits. För att kombinera en befintlig händelse med ConsentManager cmpEvent, följ dessa steg:

  1. Redigera taggen och ta bort den befintliga triggern från den.
  2. Klicka på ikonen för att tilldela en ny utlösare till taggen och skapa sedan en ny utlösare:

  3. Ge den nya triggern ett namn och välj triggertypen "Trigger Group":

  4. Lägg till din befintliga trigger och cmpEvent-trigger till triggergruppen:

  5. Ställ in utlösningsvillkoren på samma sätt som du gör med vanliga utlösare (t.ex. lägg till cmpGDPR equals 1 som villkor).
  6. Spara triggergruppen och tilldela den till taggen.

Pausa/skjuta upp dataLayer-händelser tills samtycke har givits: DataLayer Blocker

DataLayer Blocker pausar alla händelser som skickas till GTM tills användaren har gjort ett val.

Om en händelse inträffar lagrar dataLayer Blocker automatiskt denna händelse i ett internt minne och vidarebefordrar den inte till GTM. Detta gör att systemet kan säkerställa att händelserna kommer i rätt ordning (t.ex. samtyckeshändelser före PageView- eller e-handelshändelser). När användaren har gjort sitt val (t.ex. accepterat eller avvisat) vidarebefordrar dataLayer Blocker automatiskt alla lagrade händelser till GTM så att GTM kan börja bearbeta dem.

För att aktivera dataLayer Blocker, gå till Meny > CMP:er > Övriga inställningar och aktivera Aktivera dataLayer-blockering.

dataLayer Blocker + automatiska blockeringskoder

Om du använder de automatiska blockeringskoderna kan du aktivera dataLayer Blocker enligt beskrivningen. Inga ytterligare åtgärder behövs.

dataLayer Blocker + halvautomatiska blockeringskoder (manuella blockeringskoder)

Om du använder de halvautomatiska koderna (även kallade manuella blockeringskoder) måste du aktivera dataLayer Blocker enligt beskrivningen ovan och lägga till följande kod på din webbplats:

<script type="application/javascript" src="https://cdn.consentmanager.net/delivery/js/datalayerblocker.min.js"></script>

Lägg till koden ovan före all annan tredjepartskod på webbplatsen <head>. Ändra inte koden ovan och försök inte ladda koden asynkront eller uppskjutet.

Ytterligare konfiguration

Följande konfigurationsvariabler på klientsidan kan användas för att påverka beteendet hos dataLayer Blocker:

<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>

Dessutom kan du anropa webbplatsens URL med …?cmpnodatalayerblocker eller …#cmpnodatalayerblocker för att tillfälligt inaktivera dataLayer Blocker-funktionen (t.ex. under testning).

Webinar/handledning om GTM-implementering

Observera: För närvarande kan vi endast erbjuda denna instruktionsvideo på tyska. GTM-konfigurationen börjar ungefär vid minut 05:00–22:00. Om du inte använder Google Consent Mode kan du hoppa över resten av videon.

 

We do our best to keep this purely informative documentation up to date. However, if you notice that any of these guides need a little touch-up, let us know!