Passa al contenuto principale

Integrazione con Google Consent Mode

La Consent Mode V2 è un'integrazione che consente di massimizzare il controllo e la trasparenza sulla gestione dei consensi degli utenti nel tuo spazio web: finché l'utente non avrà dato il consenso, i suoi dati non verranno salvati.

ATTENZIONE: Per qualsiasi problema riscontrato durante l'integrazione di Google Consent Mode con la CMP, è importante contattare prima il nostro team di supporto tecnico alla mail support@avacysolution.com. Solo se necessario, verrà coinvolto il supporto di Google.

Per ulteriori informazioni visita il seguente link sulla documentazione Google

Cerchi il percorso completo, dall'attivazione alla verifica? Parti da Avacy per Google Consent Mode e IAB TCF.

Per utilizzare la Google Consent Mode è essenziale comprendere la differenza di comportamento e configurazione tra le due modalità:

  • Basic Consent Mode: I tag di Google vengono bloccati nel caricamento finché l'utente non interagisce con il banner di consenso. Nessun dato viene inviato a Google prima del consenso. Se il consenso viene negato, i tag non vengono mai attivati.
  • Advanced Consent Mode: I tag di Google vengono caricati immediatamente (ad es. all'inizializzazione della pagina). Prima che l'utente fornisca il consenso, i tag funzionano in una modalità "limitata": non leggono/scrivono cookie ma inviano ping senza cookie contenenti lo stato del consenso ed eventi non identificativi. Ciò consente a Google di modellare le conversioni per recuperare i dati persi.
    • Nota di configurazione: Per i tag di Google Ads, è possibile rimuovere ulteriormente gli identificatori di clic sugli annunci (come il GCLID) da questi ping assicurandosi che ads_data_redaction sia impostato su true.

NOTA: La modalità avanzata comporta la trasmissione di dati (ping) prima del consenso esplicito, sebbene non vengano impostati cookie. Si consiglia di consultare il proprio ufficio legale in merito alla specifica giurisdizione.

Step preliminari: Attivazione panoramica del consenso​

Dalla dashboard di Google Tag Manager cliccare su Amministrazione e poi Impostazioni del contenitore

Alt text

Da qui smarcare la spunta Attiva panoramica del consenso.

Alt text

Nuovi spazi web (banner v3). La Google Consent Mode è già attiva. Non devi attivare nulla. Per controllare, apri la dashboard dello spazio web, vai in Cookie Banner e poi in Impostazioni avanzate. La tendina Supporto alla Google Consent Mode mostra Attiva.

Se la tendina mostra Disattiva, seleziona Attiva e pubblica il banner con Salva e pubblica Cookie Banner.

Banner v2 (pannello legacy). Nella sezione Cookie Banner, in Impostazioni avanzate, trova Supporto alla Google Consent Mode e seleziona Attiva.

Con la Consent Mode attiva, il pannello delle preferenze del cookie banner mostra una nuova sezione. Contiene le finalità per la gestione degli indicatori di consenso di Google.

Alt text

Le finalità sul cookie banner di Avacy sono associate agli indicatori di consenso nel seguente modo:

Le definizioni degli indicatori riportano il testo della documentazione ufficiale di Google: Consent Mode.

Indicatore di consenso GTMFinalità su cookie bannerDefinizione di Google
ad_storageGestione cookie o identificatori di dispositivi pubblicitariConsente l'archiviazione, ad esempio di cookie (web) o identificatori di dispositivi (app), correlata alla pubblicità.
ad_personalizationRicezione pubblicità personalizzataImposta il consenso per la pubblicità personalizzata.
ad_user_dataCondivisione dati con Google per proprie finalità pubblicitarieImposta il consenso per l'invio dei dati utente a Google per scopi pubblicitari online.
analytics_storageAttivazione funzionalità di Google AnalyticsConsente l'archiviazione, ad esempio di cookie (web) o identificatori di dispositivi (app), correlata all'analisi, ad esempio la durata della visita.
functionality_storageMemorizzazione impostazioni tecnicheConsente l'archiviazione che supporta la funzionalità del sito web o dell'app, ad esempio le impostazioni della lingua.
personalization_storagePersonalizzazione dei contenutiConsente l'archiviazione correlata alla personalizzazione, ad esempio i consigli sui video.
security_storageTracciamento per finalità di sicurezzaConsente l'archiviazione correlata alla sicurezza, ad esempio la funzionalità di autenticazione, prevenzione delle frodi e altre misure di protezione degli utenti.

Se usi IAB TCF insieme alla Google Consent Mode, puoi far leggere a Google i consensi dalla stringa IAB TCF.

Dove si trova. Nella dashboard di Avacy apri il banner v3, vai in Impostazioni avanzate e trova la tendina Google Consent Mode. Sotto c'è l'interruttore Consenti a Google di leggere i consensi dalla stringa IAB TCF.

Cosa fa. Quando l'interruttore è acceso, il banner imposta enableAdvertiserConsentMode: true nei dati TCF (TCData). I tag di Google ricavano allora ad_storage, ad_user_data e ad_personalization dalla stringa IAB TCF. analytics_storage arriva sempre da Consent Mode. Consent Mode e TCF possono essere attivi insieme.

Valore predefinito. L'interruttore è acceso di default. Se lo spegni, il banner non imposta il flag e Google usa solo i segnali di Consent Mode.

Senza fornitori IAB. Se non ci sono fornitori IAB configurati, l'interruttore è acceso e non modificabile, con la nota Senza fornitori IAB il flag resta spento. In questo caso il banner non imposta il flag. Senza fornitori IAB, le finalità TCF non descrivono una scelta verso Google. Se IAB TCF non è configurato, la nota dice Disponibile dopo aver configurato i fornitori IAB TCF.

Come verificarlo. Apri la console del browser su una pagina con il banner ed esegui:

__tcfapi('getTCData', 2, (d) => console.log(d.enableAdvertiserConsentMode));

Stampa true se il flag è impostato. Se non lo è, il valore è undefined.

Per approfondire, vedi la guida di Google su stringhe TCF e Consent Mode.

Step preliminari: Installazione del template Avacy CMP​

Installa il template "Avacy CMP" dalla Galleria e crea il suo tag sull'attivatore Consent Initialization - All Pages: segui la guida Integrazione tramite Google Tag Manager.

Con GTM i compiti sono divisi così:

  • il template manda il default di Consent Mode, con i valori scelti nel tag;
  • il banner manda gli aggiornamenti (gtag('consent', 'update', …)) quando l'utente sceglie e a ogni pagina con un consenso già salvato.

Configurazione​

Opzione A: configurazione della modalità di consenso di base (consigliata per un blocco rigoroso)​

Una volta fatto questo, ritorna nel container e, nella lista dei tag, clicca in alto a destra sull'icona dello scudo.

Alt text

Sarà visibile una panoramica dei tag di cui non è ancora stato configurato il consenso tramite Google Consent Mode e quelli che, invece, sono stati configurati correttamente.

Alcuni tag sono configurati con gli indicatori di consenso integrato (generalmente i tag Google es: Google Analytics) e modificano autonomamente i servizi di tracciamento e le relative modalità in base a tali indicatori. Gli altri tag, invece, non hanno gli indicatori di consenso integrato, per integrare la Consent Mode bisogna impostare gli indicatori di consenso aggiuntivi.

Alt text

Prendiamo come esempio l'integrazione di un Pixel Facebook.

Una volta aggiunto il tag all'interno del container, clicca sul tag per aprire i dettagli, clicca sull'icona della matita della sezione Configurazione Tag e scorri verso le Impostazioni Avanzate. Clicca poi su Impostazioni relative al consenso e seleziona l'opzione È necessario un consenso aggiuntivo per l'attivazione del tag.

Alt text

Come nella foto, impostare manualmente uno o più indicatori di consenso supportati da Google descritti nella tabella precedente.

Nella sezione Attivatori, creare un nuovo attivatore di tipo "Evento personalizzato" e impostare come nome evento avacy_consent_update.

Alt text

Collegare successivamente questo attivatore al Facebook Pixel nella sezione "Attivazione" del tag.

Ripetere la procedura per ogni tag a cui si vuole applicare la Google Consent Mode.

Testing​

A questo punto, seguendo l'esempio del Facebook Pixel precedente, il tag dovrebbe attivarsi solo se viene prestato il consenso alla finalità relativa all'indicatore ad_storage, in altre parole, se si accetta quella determinata funzionalità dal cookie banner della piattaforma web.

Alt text

Spuntiamo la finalità relativa all'indicatore ad_storage per lanciare i tag su cui abbiamo impostato quell'indicatore di consenso​

Possiamo verificare dall'anteprima del container che, spuntando la finalità Gestione cookie o identificatori di dispositivi pubblicitari nel cookie banner, l'evento avacy_consent_update venga effettivamente lanciato tramite la dataLayer API. A questo punto i tag che hanno come attivatore tale evento, capiranno autonomamente se devono essere lanciati oppure no sulla base degli indicatori di consenso che abbiamo specificato per essi.

In questo caso, avendo impostato l'indicatore ad_storage per il Pixel Facebook, possiamo verificare dal debugger come, al lancio dell'evento, il tag venga effettivamente attivato.

Alt text

Analogamente, nella tab Consent del debugger possiamo verificare come gli indicatori di consenso siano cambiati in base alle preferenze espresse.

Alt text

Come controprova, possiamo attivare tutte le finalità a piacimento, tranne quelle necessarie all'attivazione del Pixel, e verificare che resti effettivamente bloccato.

Alt text

Torniamo quindi nel debugger e verifichiamo che gli indicatori di consenso siano impostati di conseguenza:

Alt text

Verifichiamo infine che il Pixel Facebook resti disattivato poiché non è stato fornito l'indicatore di consenso necessario.

Alt text

Se il risultato è quello atteso, il blocco preventivo per il pixel è stato impostato con successo.

Esempio: bloccare un tag Google (GA4 e Google Ads)​

In modalità Basic anche i tag Google restano bloccati, finché l'utente non sceglie. I passaggi sono gli stessi del Pixel Facebook. Cambiano solo gli indicatori di consenso.

  1. Apri il tag (ad esempio il tag Google di GA4, o un tag Google Ads).
  2. In Impostazioni Avanzate, apri Impostazioni relative al consenso e seleziona È necessario un consenso aggiuntivo per l'attivazione del tag.
  3. Aggiungi gli indicatori di consenso che servono al tag:
    • GA4: analytics_storage.
    • Google Ads: ad_storage, ad_user_data e ad_personalization.
  4. In Attivazione, togli gli attivatori che scattano al caricamento della pagina (come "Inizializzazione" o "Tutte le pagine"). Aggiungi l'attivatore di tipo "Evento personalizzato" con nome evento avacy_consent_update.
  5. Ripeti per ogni tag Google che vuoi bloccare.

Ora il tag aspetta. Parte quando arriva l'evento avacy_consent_update e gli indicatori che hai scelto sono concessi. Se l'utente li rifiuta, il tag non parte mai.

Il banner Avacy manda questo evento nel dataLayer subito dopo ogni aggiornamento della Consent Mode. Lo manda anche nelle pagine di chi ha già scelto. L'evento non porta altri dati: è { event: 'avacy_consent_update' }. L'aggiornamento con i valori del consenso arriva subito prima.

Per verificare, segui i passaggi della sezione Testing qui sopra, con il tuo tag Google al posto del Pixel. Nel debugger il tag deve restare tra i "Tag non attivati" finché non c'è il consenso.

Opzione B: Configurazione della Modalità Avanzata (Solo per i Tag Google)​

Nella modalità Avanzata, i tag di Google (GA4, Google Ads, Floodlight) devono caricarsi immediatamente per inviare i ping di consenso.

Usa attivatori standard come "Inizializzazione" (Initialization) o "Tutte le pagine" (All Pages). Non utilizzare l'attivatore avacy_consent_update per questi tag.

Assicurati che i "Controlli del consenso integrati" (Built-in Consent Checks) siano attivi sul Google Tag (solitamente sono attivi per impostazione predefinita).

Risultato: I tag di Google si attiveranno immediatamente. Se il consenso viene negato, GTM li limita automaticamente ai soli ping senza cookie. Se il consenso viene concesso, elaborano i dati normalmente.

NOTA: Per i tag non Google (come il Pixel di Facebook), continua a usare l'Opzione A (Base), poiché questi non supportano i ping di consenso di Google e dovrebbero probabilmente rimanere bloccati fino alla concessione del consenso.

Passare da Basic ad Advanced e viceversa​

La modalità non è un interruttore della dashboard Avacy. Dipende da cosa fa la pagina con i tag Google:

  • Advanced: i tag Google si caricano subito. Non sono marcati e non sono bloccati.
  • Basic: i tag Google sono bloccati. Si caricano solo dopo il consenso dell'utente.

Il passaggio può richiedere modifiche al codice della pagina o del container. È previsto: la modifica riguarda i tag, non solo il banner. Dopo ogni modifica, pubblica il banner o il container e verifica di nuovo.

Da Advanced a Basic​

Blocca i tag Google. Scegli il modo adatto alla tua installazione.

  • Con Google Tag Manager. Per ogni tag Google, imposta È necessario un consenso aggiuntivo per l'attivazione del tag con gli indicatori che gli servono. Sostituisci i suoi attivatori con l'evento avacy_consent_update. I passaggi sono nell'Opzione A.
  • Con gtag.js. Marca gli script Google perché Avacy li blocchi. Vedi Basic con gtag.js.

Un altro modo è spegnere la Consent Mode nel banner. In Cookie Banner > Impostazioni avanzate, seleziona Disattiva nella tendina Supporto alla Google Consent Mode. Poi pubblica il banner. Con questa scelta il banner non manda più i segnali della Consent Mode a Google. I tag Google sono allora bloccati come ogni altro fornitore, con il blocco preventivo.

Con Google Tag Manager, il default della Consent Mode lo imposta il template Avacy CMP, non il banner. Se spegni la Consent Mode nel banner, controlla i valori di Default consent del template: il banner non manderà nessun aggiornamento dopo di essi.

Da Basic ad Advanced​

  1. Togli il blocco dai tag Google. Con GTM, elimina il consenso aggiuntivo e rimetti un attivatore come "Inizializzazione" o "Tutte le pagine". Con gtag.js, togli la marcatura dagli script Google.
  2. Controlla che la Consent Mode sia attiva: Cookie Banner > Impostazioni avanzate > Supporto alla Google Consent Mode deve mostrare Attiva.
  3. Pubblica il banner, o il container GTM.

Su uno spazio web v3, pubblicare i fornitori non riaccende la Consent Mode. La tendina tiene il valore che hai scelto.

NOTA: La modalità Advanced invia ping senza cookie prima della scelta. Vedi la nota in Basic vs Advanced.

Usare gtag.js senza Google Tag Manager​

Se il tag Google è nel codice della pagina e non in un container GTM, Avacy gestisce comunque la Consent Mode. Devi prima installare lo snippet Avacy: vedi Integrazione tramite codice HTML.

Advanced con gtag.js​

Non servono altri passaggi.

  1. Metti lo snippet Avacy il più in alto possibile nel <head>, prima del tag Google.
  2. Lascia il tag Google com'è, senza marcarlo.
<head>
<!-- 1. Snippet Avacy, per primo -->
<script src="..."></script>

<!-- 2. Tag Google, come al solito -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>
</head>

Con la Consent Mode attiva, lo snippet manda il default della Consent Mode prima del tag Google. Il default è denied per tutti gli indicatori di consenso, con wait_for_update a 500 ms. Quando l'utente sceglie, il banner manda l'aggiornamento.

Non aggiungere un tuo gtag('consent', 'default', ...). Se la pagina ne ha già uno, Avacy lo lascia e non manda il suo.

Basic con gtag.js​

Marca gli script Google, perché non partano finché l'utente non dà il consenso. Ogni script riceve tre modifiche:

  • type="text/avacy-blocked", così il browser non lo esegue (va bene ogni type che il browser non esegue);
  • data-avacy-requires, con la finalità della Consent Mode che lo script richiede;
  • per uno script esterno, data-avacy-src con l'indirizzo vero, e nessun src.
<!-- script esterno: gtag.js -->
<script type="text/avacy-blocked"
data-avacy-src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"
data-avacy-requires="gcm:purpose:4"></script>

<!-- script inline: configurazione -->
<script type="text/avacy-blocked"
data-avacy-requires="gcm:purpose:4">
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXXXXX');
</script>

Il numero dopo gcm:purpose: è l'id della finalità nel banner:

IdIndicatore di consenso
1ad_storage
2ad_user_data
3ad_personalization
4analytics_storage

Per GA4 usa gcm:purpose:4. Per Google Ads usa gcm:purpose:1,2,3. Con più id, l'utente deve concederli tutti.

Quando l'utente sceglie, il banner manda prima l'aggiornamento della Consent Mode. Poi sblocca gli script il cui consenso è concesso. Se l'utente rifiuta, gli script restano bloccati.

Valgono due condizioni:

  • Gli script marcati vengono sbloccati solo se lo snippet Avacy è nella pagina.
  • Il componente che sblocca gli script si accende quando almeno un fornitore dello spazio web ha un URL di blocco preventivo ed è pubblicato. Senza, gli script marcati restano bloccati. Per impostare l'URL vai in Lista Fornitori, seleziona un fornitore e clicca su Altre azioni, poi su modifica URL blocco preventivo. Vedi Configura il blocco preventivo tramite SaaS e plugin WordPress.

La marcatura del blocco preventivo manuale con data-managed="as-oil", descritta in Configura il blocco preventivo manualmente, viene ancora letta e tradotta dal banner. Non può indicare una finalità della Consent Mode: indica un fornitore o finalità IAB. Per uno script Google usa data-avacy-requires come sopra.

Per verificare, apri la pagina senza scegliere: gli script Google non devono comparire nel pannello Network. Accetta la finalità di analisi: gli script si caricano.