Plugin Guide Blog Le mie licenze Parliamone

Come bloccare Google Analytics prima del consenso su WordPress

Cookie ConsentAggiornato il 4 ottobre 20265 min di lettura

Cookie Consent

Per bloccare Google Analytics prima del consenso su WordPress, il tag di Google non deve partire al caricamento della pagina. Parte solo dopo che il visitatore ha cliccato Accetta, o ha accettato la categoria Statistiche. Puoi farlo a mano nel tema, dentro Google Tag Manager oppure con un plugin per il consenso che trattiene il tag al posto tuo. In tutti e tre i casi, Google Consent Mode v2 comunica a Google cosa ha scelto il visitatore.

Il guaio è che quasi tutti i siti pensano di farlo già. Il banner c'è, ma il codice di Analytics sta nell'header e parte alla prima visualizzazione della pagina. Questa guida spiega prima come controllare, poi come rimediare.

Controlla se Analytics si carica prima del consenso

  1. Apri il sito in una finestra di navigazione privata.
  2. Apri gli strumenti per sviluppatori (F12), scegli la scheda Network (Rete) e ricarica.
  3. Senza toccare il banner, scrivi collect nel filtro. Una richiesta a google-analytics.com/g/collect o a region1.google-analytics.com vuol dire che una visualizzazione di pagina è già stata inviata.
  4. Ora scrivi gtag o gtm. Se compare googletagmanager.com/gtag/js o gtm.js, il tag di Google è caricato.
  5. In Application > Cookies (Applicazione > Cookie), cerca _ga e _ga_XXXX.

Se vedi una di queste cose prima di cliccare, Analytics funziona senza consenso. Su WordPress il codice arriva di solito da Site Kit by Google, da un'opzione del tema, da un plugin per header e footer o da una riga incollata in header.php. Prima di cambiare qualcosa, trova da dove arriva il tuo, così non ti ritrovi con due tag.

Consent Mode è il sistema con cui il tuo sito dice ai tag di Google cosa ha scelto il visitatore. Al caricamento della pagina imposti uno stato predefinito, di solito tutto negato, e lo aggiorni dopo la risposta del visitatore. La guida di Google a Consent Mode elenca i quattro segnali che contano:

  • analytics_storage: cookie di Analytics.
  • ad_storage: cookie pubblicitari.
  • ad_user_data: invio a Google dei dati dell'utente a fini pubblicitari.
  • ad_personalization: annunci personalizzati e remarketing.

Gli ultimi due sono la parte "v2". Google li richiede da marzo 2024 per il traffico dallo Spazio economico europeo: senza, Google Ads perde segmenti di pubblico e remarketing per quei visitatori.

Consent Mode funziona in due modi, e per il GDPR la differenza conta:

  • Base: il tag di Google non si carica affatto finché il visitatore non accetta. Prima del consenso a Google non arriva niente.
  • Avanzata: il tag si carica subito con tutto negato e invia dei "ping senza cookie" che Google usa per stimare i dati mancanti.

La modalità avanzata manda comunque richieste a Google, con l'indirizzo IP del visitatore, prima di qualsiasi scelta. Diverse autorità europee considerano anche questo un trasferimento che richiede il consenso. Se vuoi stare sul sicuro, usa la modalità base: blocca il tag e invia i segnali di Consent Mode quando può caricarsi.

Tre modi per bloccare Analytics su WordPress

1. A mano, nel tema

Stampa prima i valori predefiniti di Consent Mode, il più in alto possibile nel <head>, poi carica gtag.js solo dopo che il banner ha registrato un sì:

<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('consent', 'default', {
  analytics_storage: 'denied',
  ad_storage: 'denied',
  ad_user_data: 'denied',
  ad_personalization: 'denied',
  wait_for_update: 500
});
</script>

Quando il visitatore accetta, chiama gtag('consent', 'update', {analytics_storage: 'granted'}) e inserisci lo script gtag.js. Funziona, ma banner, cookie e registro li scrivi e li mantieni tu, e ogni nuovo tracciamento vuol dire nuovo codice.

2. Dentro Google Tag Manager

Se tutti i tuoi tag stanno in un contenitore GTM, puoi impostare lì i valori predefiniti di Consent Mode e aggiungere una condizione di consenso a ogni tag. Due avvertenze. Il contenitore stesso, gtm.js, si carica comunque prima del consenso, quindi contatta comunque Google. E GTM controlla solo quello che c'è dentro: un pixel aggiunto da un plugin o un video YouTube in una pagina restano fuori dalla sua portata.

3. Con un plugin per il consenso che blocca

Un plugin può trovare il tag di Google nella pagina e spegnerlo finché il visitatore non accetta, chiunque ce l'abbia messo. Dei tre modi è l'unico che copre anche il Meta Pixel, i video incorporati, le mappe e i servizi che hai dimenticato. Verifica che il plugin blocchi prima del consenso e non si limiti a "informare": il test con la finestra privata descritto sopra te lo dice in un minuto.

Cookie Consent segue la terza strada. Prima che la pagina lasci il tuo server, trova il tag di Google (e una cinquantina di altri servizi) e lo spegne. Quando il visitatore accetta Statistiche, riaccende il tag nel browser, senza ricaricare la pagina.

  • I valori predefiniti di Consent Mode v2 vengono stampati in cima alla pagina, prima di qualsiasi tag di Google, con tutti i segnali negati e un breve wait_for_update, così i visitatori di ritorno che avevano già accettato vengono contati correttamente.
  • Statistiche concede analytics_storage; Marketing concede ad_storage, ad_user_data e ad_personalization.
  • Tag Manager è bloccato fino al consenso in modo predefinito. Se gestisci già il consenso dentro il tuo contenitore, puoi lasciarlo caricare e affidarti ai segnali.
  • Global Privacy Control: i visitatori il cui browser invia questo segnale vengono trattati come un rifiuto del marketing.
La scheda Terze parti di Cookie Consent in WordPress dopo una scansione del sito, con Google Analytics e Google Tag Manager tra i servizi Blocked until consent (pannello in inglese)
La scansione del sito mostra quali servizi sono bloccati fino al consenso e quali non vengono riconosciuti.

Tutto questo è nella versione gratuita. La guida Impostazioni spiega le opzioni per Google, e Terze parti, scansione e regole tue mostra come scovare i tracciamenti che non sapevi di avere.

Dopo la correzione: cosa cambia nei numeri

Aspettati meno visite in Google Analytics. Chi rifiuta, o se ne va senza rispondere, non viene più contato. Il calo varia molto in base al pubblico e all'aspetto del banner, quindi confronta l'andamento nel tempo invece dei numeri grezzi di prima e dopo. I log del server e le vendite restano il riferimento vero.

Se i numeri non calano per niente, rifai il test in una finestra privata: forse qualcosa si carica ancora prima del consenso.

Domande frequenti

Consent Mode v2 basta per essere in regola con il GDPR?

No. Consent Mode trasmette soltanto la scelta del visitatore ai tag di Google. Servono comunque un banner che chieda il consenso, una registrazione del consenso e, per stare sul sicuro, tag che non si caricano affatto prima di un sì.

Che differenza c'è tra Consent Mode base e avanzata?

In modalità base il tag di Google non si carica finché il visitatore non accetta. In modalità avanzata si carica subito con il consenso negato e invia a Google dei ping senza cookie, che contengono comunque l'indirizzo IP del visitatore.

Bloccare Analytics fa perdere le conversioni di Google Ads?

Le conversioni dei visitatori che accettano il marketing vengono tracciate come prima. Per chi rifiuta, Google usa la modellazione se sono presenti i segnali di Consent Mode v2. Senza i segnali v2, Google Ads perde segmenti di pubblico e remarketing per i visitatori dello Spazio economico europeo.

Perché il traffico in Analytics è calato dopo aver installato il cookie banner?

Perché chi rifiuta o ignora il banner non viene più contato. Il calo dimostra che il banner funziona. Confronta l'andamento nell'arco di settimane invece dei numeri grezzi di prima e dopo.