Guida Avanzata

Come gestire la Consent Mode v2 con Iubenda e Google Tag Manager

Grazie alle Consent Management Platform puoi gestire in modo semplice ed efficace i consensi al tracciamento degli utenti.

Ma se ti dicessi che con le popolari CMP come Iubenda, Cookiebot o OneTrust unite e adeguate alla nuova Consent Mode v2 (CM v2) puoi gestire i consensi degli utenti in modo granulare – ossia, i consensi concessi o negati per singola tipologia di trattamento del dato?

Infatti, come forse saprai tutte le principali CMP hanno già adeguato i propri sistemi di funzionamento alla nuova modalità di gestione consensi rilasciata da Google CM v2.

In altre parole, adeguare la tua Consent Management Platform e passare alla Consent Mode v2 non è facoltativo: è un passo obbligato se vuoi continuare a raccogliere più dati (e di maggior qualità), e a raccogliere le conversioni delle tue campagne Google Ads per lanciare campagne di remarketing efficaci.

In questa guida ti mostro come poter gestire in modo granulare e preciso i consensi degli utenti con la CMP Iubenda utilizzando Google Tag Manager, senza impazzire tra Variabili e Attivatori negativi e soprattutto in modo aggiornato alla nuova modalità di gestione dei consensi CM v2.

In questa guida vedremo:

  1. Quali sono le categorie di consenso gestite da Iubenda
  2. [Guida] Soluzione 1: implementare la Consent Mode v2 usando il template nativo di Iubenda
    • Step 1: Recupera lo script di configurazione di Iubenda
    • Step 2: Configura il tag del template di Iubenda in Google Tag Manager
    • Step 3: Configura l’Attivatore
    • Step 4: Verifica con il Debug di GTM se la configurazione funziona
  3. [Introduzione] Soluzione 2: implementare la Consent Mode v2 tramite HTML personalizzato

Iniziamo!

Quali sono le categorie di Iubenda

Nella sua gestione standard, Iubenda dispone di 5 categorie:

Strettamente necessari (id 1)

Finalità incluse:

  • Salvataggio e gestione di backup
  • Hosting ed infrastruttura backend
  • Gestione di landing page e pagine di invito
  • Servizi di piattaforma e hosting
  • Protezione dallo SPAM
  • Ottimizzazione e distribuzione del traffico
  • Monitoraggio dell’infrastruttura
  • Gestione dei pagamenti

Interazioni e funzionalità semplici (id 2)

Finalità incluse:

  • Contattare l’Utente
  • Interazione con le piattaforme di live chat
  • Gestione di conferenze web e telefonia online
  • Gestione delle richieste di supporto e contatto
  • Interazione con le piattaforme di supporto e di feedback
  • Gestione dei tag
  • Registrazione ed autenticazione

Esperienza migliorata (id 3).

Finalità incluse:

  • Commento dei contenuti
  • Interazione con piattaforme di raccolta dati e altre terze parti
  • Visualizzazione di contenuti da piattaforme esterne
  • Interazione con social network e piattaforme esterne
  • Interazione con le piattaforme per sondaggi online
  • Gestione dei feed RSS
  • Funzionalità sociali

Misurazione (id 4).

Finalità incluse:

  • Statistica
  • Beta testing
  • Test di performance di contenuti e funzionalità (A/B testing)
  • Heat mapping e registrazione sessioni
  • Gestione della raccolta dati e dei sondaggi online

Targeting e pubblicità (id 5).

Finalità incluse:

  • Pubblicità
  • Infrastruttura al servizio pubblicitario
  • Affiliazione commerciale
  • Gestione contatti e invio di messaggi
  • Remarketing e behavioral targeting

Oh, che bravi hanno proprio fatto un elenco chiaro e a prova di male interpretazioni. Quindi nel banner apparirà una cosa simile:

 

Ora che ci è tutto più chiaro iniziamo l’installazione con Google Tag Manager

 

Implementare la Consent Mode v2 con il template nativo di Iubenda

Per semplificarti la vita, Iubenda ha creato un template pronto all’uso grazie al quale puoi implementare la Consent Mode v2 senza impazzire con gli Attivatori, e senza sporcarsi troppo le mani con il codice.

Per configurarlo correttamente segui questi step.

 

Step 1 – Recupera lo script di configurazione di Iubenda

Ti basta entrare nel tuo profilo Iubenda e generare lo script attraverso la voce “Cookie Solution, fare le impostazioni del banner e scrollare più in basso.

Dovresti trovare una text area dove poter copiare il codice proprio come l’immagine qui sotto:

 

 

Nel dettaglio il codice sarà una cosa simile a questa

<script type="text/javascript">
var _iub = _iub || [];
_iub.csConfiguration = {
      "consentOnContinuedBrowsing":false,
      "whitelabel":false,
      "lang":"it",
      "siteId":XXXXXXXX,
      "countryDetection":true,
      "perPurposeConsent":true,
      "cookiePolicyId":YYYYYYYYY,
      "cookiePolicyUrl":"demo.tagmanageitalia.it/esempio/", 
      "banner":{ 
             "acceptButtonDisplay":true,
             "customizeButtonDisplay":true,
             "position":"float-top-center",
             "rejectButtonDisplay":true 
             }
      };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>

Ovviamente i parametri in rosso sono dinamici e variano a seconda di come hai configurato la cookie solution su Iubenda e il sito di destinazione (nel mio caso demo.tagmanageritalia.it). Nel mio caso il codice di cookiePolicyId è 20508754 (te lo dico perché lo rivedrai dopo) negli screenshot.

Potresti inoltre avere dei parametri in aggiunta o averne meno. Insomma tutto dipende da quello che configuri.

Ecco un altro esempio:

<script type="text/javascript">
var _iub = _iub || [];
_iub.csConfiguration = {
     "lang": "it",
     "siteId": XXXXXX, 
     "cookiePolicyId": YYYYYY,
     "banner": {
               "position": "float-top-center",
               "acceptButtonDisplay": true,
               "customizeButtonDisplay": true
               },
     };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>

Come vedi i valori in rosso rimangono 🙂

 

Step 2: Configura il tag del template di Iubenda in Google Tag Manager

  • entra nel tuo contenitore Google Tag Manager
  • clicca sulla voce Tags dal menu a sinistra
  • clicca su New > Tag Configuration > Discover more tag types in the Community Template Gallery
  • clicca sull’icona a lente d’ingrandimento per cercare e poi selezionare il template di GTM “Iubenda Privacy Controls and Cookie Solution”
  • clicca su Add to workspace

 

 

Perfetto, hai appena importato il template di Iubenda per la configurazione della Consent Mode v2.

Come vedi, da qui puoi impostare facilmente il valore di default delle varie categorie di consenso degli utenti (su Denied o su Granted).

Nel menu a tendina How to embed CS, seleziona Automatically via GTM template.

Nel riquadro subito sotto, incolla il codice generato da Iubenda, come ti ho spiegato nello Step 1 di questa guida.

NB: aggiungi manualmente questa parte di codice , indispensabile per gestire la Consent Mode v2 direttamente dal template (esattamente così come è scritta): “googleConsentMode”: “template”.

Lascia tutte le altre opzioni invariate.

Se hai fatto tutto correttamente, il risultato dovrebbe essere qualcosa del genere:

 

 

(Ricordati di inserire i tuoi SiteId e cookiePolicyId, come ti ho spiegato nello Step 1 di questa guida).

Non salvare ancora la configurazione del Tag. Prima devi configurare l’Attivatore.

 

Step 3: Configura l’Attivatore

Per configurare l’Attivatore fai così:

  • sempre all’interno della configurazione del tag, scorri in basso e clicca sulla sezione Triggering
  • clicca sul Trigger Consent Inizialization – All Pages (se non lo trovi dall’elenco, ti basta cliccare sull’icona “+” e selezionarlo dalla finestra che ti si aprirà)
  • Clicca su Save.

Fatto, hai configurato correttamente il tag del template di Iubenda per la CM v2.

NB: ricordati di gestire i tipi di consenso necessari per l’attivazione dei vari Tag nella sezione “Consent Settings” (come ti spiego nella guida sulla Consent Mode v2 linkata all’inizio di questa guida).

Se hai fatto a regola d’arte tutto quello che ti ho spiegato, non ti resta che verificare che tutto funzioni correttamente.

 

Step 4: Verifica la configurazione con il Debug di Google Tag Manager

Per verificare che la configurazione del template Iubenda per la Consent Mode v2 funzioni correttamente:

  • clicca sul pulsante Preview nella schermata principale del tuo GTM per entrare nella modalità Anteprima di Google Tag Manager
  • clicca sulla tab Consent
  • dovresti visualizzare lo stato di consenso di default (che hai impostato nel template di Iubenda) per ognuno dei parametri della Consent Mode v2.

 

 

Ipotizzando di aver impostato gli stati di default tutti su Denied, nessun Tag si attiverà senza aver dato il consenso esplicito attraverso il cookie banner di Iubenda.

Se invece accetti, cliccando su Consent in modalità Anteprima nel tuo GTM, visualizzerai lo stato di Update per ogni singola categoria di consenso.

I Tag si attiveranno o meno a seconda di come li hai gestiti singolarmente in “Consent Settings” (se hai dei dubbi, ti ricordo ancora una volta di fare riferimento alla guida sulla Consent Mode v2 che ti ho linkato all’inizio di questa guida).

Se è tutto a posto, clicca sul pulsante blu Submit per pubblicare la configurazione.

Fantastico!

Con questa configurazione potrai gestire correttamente la Consent Mode v2 tramite il template di Iubenda in GTM.

 

[Introduzione] Soluzione 2: implementare la Consent Mode v2 tramite HTML personalizzato

Come per tutte le cose semplici, ci sono però dei limiti da considerare.

Il limite principale di questa configurazione è che non gestisce le callback.

Partiamo con la spiegazione difficile: le callback sono delle funzioni molto usate nella programmazione, ad esempio per gestire operazioni asincrone, permettendo a un programma di continuare l’esecuzione di altre attività mentre attende che un certo processo venga completato.

Nel contesto della gestione dei consensi granulari aiutano a garantire che determinate azioni vengano eseguite solo dopo che l’utente ha espresso il proprio consenso, ad esempio come il caricamento di script di tracciamento o la configurazione di cookie.

In pratica, permettono al tuo codice di dire: “Ok, vai avanti con le tue operazioni, e quando hai finito, chiama questa funzione“.

In altre parole, immagina di dover inviare una lettera molto importante (la tua operazione asincrona), ma non puoi aspettare vicino alla cassetta della posta per vedere quando viene ritirata.

Così, chiedi a un amico fidato (la tua callback) di tenere d’occhio la cassetta e di dirti quando la lettera è stata consegnata.

Mentre il tuo amico si occupa di questo, tu vai avanti con le tue attività, sapendo che verrai informato non appena l’operazione sarà completata.

La callback, quindi, è come quel tuo amico fidato che si fa carico di avvisarti, permettendoti di procedere con altre cose senza preoccupazioni.

Bene, nel caso specifico della gestione dei consensi degli utenti, le callback danno la possibilità di usare altri script una volta che un utente ha fatto una specifica scelta di consenso.

Ad esempio, nel momento in cui un utente presta il consenso, una callback può dire a Google Tag Manager: “hey, ora puoi sbloccare l’evento impostato per l’attivazione di GA4”.

Per ovviare al problema della mancata gestione delle callback con il template Consent Mode v2 di Iubenda, la soluzione che ti consiglio è usare un Tag HTML personalizzato in combinazione con il template Consent Mode (Google tags) di Simo Ahava.

 

 

Lo trovi nella galleria dei template di GTM (dove hai importato quello di Iubenda), e serve a impostare il valore di Default e di Update dei consensi indipendentemente dalla CMP che stai usando.

Approfondire ulteriormente il funzionamento di questo template va oltre lo scopo e lo spazio di questa guida, ma se vuoi andare fino in fondo e stai cercando da tempo un corso completo, semplice e pratico per essere al 100% autonomo nel configurare la Consent Mode v2 tramite Iubenda e Google Tag Manager

Allora questo videocorso fa al caso tuo 😊

Cosa ne pensi? Ti è stata utile questa guida? Scrivimelo nei commenti!

Buon Tag 😉

Link utili:

Matteo Zambon

View Comments

  • Ciao Matteo, ho seguito tutta la procedura che hai indicato, soltanto che prima di visualizzare il banner di iubenda vedo sono già installati i cookie _ga e _ga_XXXXXX.
    Come posso fare per installarli in base al consenso che dò tramite il banner?
    Ti ringrazio per l'aiuto e per l'attenzione.

    Ciao

    • Ciao Paolo, i cookie con la Consent Mode vengono sempre installati :) Se hai fatto correttamente vedrai che al cambio pagina i valori cambieranno.

      Quindi è un "falso mito" il fatto che non esistono cookie con la Consent Mode, semplicemente vengono anonimizzati.

      Se vuoi maggiori dettagli sulla Consent Mode ti consiglio questo corso: https://club.tagmanageritalia.it/corso-clear-consent/

      A presto!

  • Ciao Matteo, una domanda,
    queste considerazioni sono ancora attuali? Visto che dalla pubblicazione dell'articolo sono passati 3 anni e magari nel mentre sono state apportate delle modifiche e/o semplicifazioni.

    Grazie,

    Kida Mancini

  • Ciao Matteo,

    ad oggi, 16-06-2023, la guida è ancora valida o bisogna modificare qualcosa?

    Attendo gentile riscontro e grazie di tutto!

    Saluti,

    Gianmarco

    • Ciao Gianmarco a livello di installazione è ancora valida. C'è da gestire la Consent Mode in parallelo.

      Matteo

  • Ciao Matteo, ho un dubbio che vedo è stato già espresso tra i commenti. Come dovrei fare con script caricati da plugin? Faccio un esempio banale: l'integrazione di Google Recaptcha V3 di molti plugin per form fa in automatico caricare Roboto da google fonts. Di esempi come questi ce ne sono tanti, possibile non ci sia soluzione?

    Sulla tua guida per l'integrazione di Coookiebot un altro utente ha linkato questa pagina di cookiebot (che in realtà ha incontrato subito il tuo scetticismo) dove si parlava di una possibilità di unire i due mondi, quantomeno con cookie bot https://support.cookiebot.com/hc/en-us/articles/360009192739-Google-Tag-Manager-and-Automatic-cookie-blocking

    Grazie!

    • Ciao Manuel, la cosa che puoi fare è inserire dei data attribute nei vari elementi HTML. Il consiglio è chiedere direttamente a chi ha creato i plugin di inserire questa opzione (il data attribute può cambiare da CMP a CMP).

      In alternativa puoi valutare di inserire il blocco automatico installando lo script fuori da GTM (occhio che spesso blocca lo stesso GTM).

      Fammi sapere se ti ho risposto :)

  • Ciao, con l'aggiornamento alla versione 1.41.0 mi dà diversi problemi. Non pusha più i dataLayer e i tag con consenso aggiuntivo sembrano scattare da debug ma non creano cookie / beacon / ecc.
    Da cosa può essere dovuto?

    • Ciao, dovresti chiedere all'assistenza di Iubenda e verificare che non ci siano conflitti JavaScript con il sito dove è installato Iubenda.

      Fammi sapere

  • Ciao Matteo, grazie mille per la guida, ma sto riscontrando un piccolo problemino. Voglio inserire un plugin di live chat solo in due pagine (al checkout) e cosi ho messo che il tag si attiva quando Page URL contiene checkout e poi ho messo l'attivatore e l'eccezione come da guida. Con debug funziona tutto correttamente, il problema sorge quando accedo al sito per la prima volta, appare il banner iubenda e clicco su "accetta tutto". Ho notato che il tag viene attivato e la live chat parte, anche se non sono nella pagina checkout. Poi, se ricarico la pagina, il banner non appare e la live chat scompare e appare effettivamente solo sulla pagina di checkout, come dovrebbe essere. Lo stesso succede con tutte le pagine del sito, come se il click sul pulsante "accetta tutto" faccia partire quel tag.
    Grazie!

    • Ciao Marco, ciao verifica il trigger della chat dal debug perché se si attiva il tag significa che il trigger collegato ha tutte le condizioni corrette per essere attivato.

      Fammi sapere

    • Ciao Marco, verifica se effettivamente il cookie di iubenda ha quel codice, lo puoi verificare dal developer tools del browser.
      Inoltre finché il cookie non è creato la variabile sarà ovviamente undefined :)

  • Ciao Matteo ho seguito la tua guida ma i tag mi si attivano 2 volte al containet loaded e all'evento iubenda associato. Non mi sembra di aver saltato passaggi

    • Ciò si verifica quando effettuo una sessione in debug avendo già accettato i cookie. Se invece o cancello i cookie o la effettuo da incognito lì si che mi parte solo 1 volta correttamente

  • Ciao! Ma per la gestione multilingua di iubenda è disponibile un'aggiornamento di questa guida? In particolare per gestire la variabile relativa al cookie proprietario "_iub_cs-XXX" che cambia per ogni lingua (perchè l'id della cookie policy è diverso per ogni lingua). Quindi, per sparare a GA4 gli eventi, mi trovo in difficoltà nel verificare che la variabile contenga ""4":true", dal momento che le variabili sono più di una. Come suggerisci di fare?
    Grazie.

  • Ciao Matteo,
    purtroppo sono nella condizione di poter integrare solo Iubenda per decisioni interne, ma grazie alla tua guida tutto funziona regolarmente lato consensi. :)

    Facendo un test con Google Consent Mode + Iubenda (al fine di poter gestire il tag di configurazione GA4 con le built-in native), non riesco più a visualizzare nel dL il push relativo allo script da inserire manualmente prima di GTM.
    Ovviamente in debug non ho più gli eventi di consenso che tornano visibili solo se implemento tutti gli attivatori, il cookie iubenda di prima parte e il cookie banner con tutte le chiamate callback.

    In sostanza, è normale questa non perfetta integrazione della consent mode + Iubenda? Nell'impossibilità di gestione ibrida con consent mode, ma optando per una gestione classica con gli attivatori negativi, il tag di configurazione GA4 va inserito sotto il consenso "Misurazione"?

    Grazie

Recent Posts

ANALYTIX TALK: il Podcast di Marketing e Digital Analytics

Hai mai desiderato un luogo dove i commenti sulle ultime novità, i metodi delle migliori…

2 mesi ago

Tutto sulla Consent Mode e come gestire la Consent Mode v2: guida completa

Se la GDPR ti sta a cuore e se ti occupi di advertising, allora questo…

3 mesi ago

Come migrare gli eventi da Google Universal Analytics (GA3) Google Analytics 4 (GA4)

[Aggiornata il 6 Febbraio 2024] Quante volte avrai sentito la classica frase “Siamo a Luglio,…

4 mesi ago

Alternativa Google Optimize: usa Google Tag Manager per A/B Test

Ora che anche il caro Google Optimize ci ha lasciati, quella che troverai in questa…

4 mesi ago