Categories: Guida Avanzata

Come eliminare Ghost Referral Spam da Analytics con Google Tag Manager

[Aggiornata il 27 Febbraio 2019]

Analizzando le statistiche del tuo sito ti sarà probabilmente capitato di visualizzare, tra i rapporti di Google Analytics, numerose visite da Referrer sospetti, con statistiche di comportamento molto strane come: frequenza di rimbalzo tendente al 100%, 1 pagina visitata per sessione e tempo sulla pagina tendente 0. È facile comprendere che sono dei comportamenti poco “umani”: si tratta infatti di Referral Spam.

In particolare, i Ghost Referrals (visite fantasma) sono tipologie di Referral Spam caratterizzate dal fatto che non visitano realmente un sito web ma vengono riportate ugualmente tra le visite nei tuoi rapporti di Analytics. Tipicamente questo tipo di Ghost Referral Spam viene generato attraverso il Measurement Protocol che è stato implementato con Universal Analytics.

Con la guida di oggi voglio proporti uno dei modi per eliminare dai rapporti di Analytics questa tipologia di traffico indesiderato. Dico uno dei modi perché ce ne sono anche di altri molto efficaci, solo leggermente più complicati da implementare. Alla fine di questa guida ti indicherò i link da cui ho preso spunto per realizzare questa soluzione.

Il metodo che andrò ad illustrare in questa guida consiste nell’installare un cookie nel browser degli utenti che visitano realmente il tuo sito, per poi filtrare la vista di Google Analytics solo per le sessioni che comprendono questo cookie.

Cosa ti serve:

Step 1 – Crea l’attivatore

Per prima cosa dovrai creare un Attivatore, per definire quando il Tag che andremo creare, e quindi il cookie, dovrà essere abilitato. Imposta l’attivatore come segue:

  • Attivatori > Nuovo > Configurazione attivatore.
  • Tipo di attivatore: Visualizzazione di pagina.
  • Questo attivatore si attiva su: Alcune visualizzazioni di pagina.
  • Attiva quando: Page Hostname è uguale a nomesito.com, dove ovviamente al posto di nomesito.com inserirai il dominio del tuo sito. In questo modo l’attivatore dice: “abilita solo se il visitatore proviene da una pagina esterna al sito”.
  • Nomina l’attivatore “Cookie” e salvalo.

Step 2 – Imposta il cookie tramite un tag

Dovrai poi creare un Cookie sul tuo sito web da trasferire a chi visita il sito: lo implementeremo con Google Tag Manager.

Per farlo crea un nuovo Tag.

  • Tag > Nuovo > Configurazione tag.
  • Tipo di tag: Tag HTML personalizzato.
  • Incolla il seguente script:
<script>
function createCookie(name,value,days) {
 if (days) {
  var date = new Date();
  date.setTime(date.getTime()+(days*24*60*60*1000));
  var expires = "; expires="+date.toGMTString();
 }
 else var expires = "";
 document.cookie = name+"="+value+expires+"; path=/";
}
createCookie("dev","notset",1000);
</script>
  • Attiva su: seleziona quindi l’attivatore appena creato “Cookie”.
  • Puoi nominare il Tag “setCookie – All pages”.

[Attenzione] ► Per essere sicuri che il Tag di generazione Cookie si attivi prima del Tag di Analytics è bene impostare la priorità andando su Impostazioni avanzate. Dovrai:

  • Inserire un valore numerico (es. 1000) a Priorità di attivazione tag.
  • Alla voce Sequenza tag attiva il flag Attiva un tag dopo l’attivazione di setCookie – All pages e selezionare il Tag di GA Analytics.

Ringrazio Marco Cilia di goanalytics.info per il consiglio nel post del gruppo di Facebook “Fatti di Tag Manager

Step 3 – Crea la variabile

Dovrai ora creare una variabile per trasferire il valore del Cookie.

  • Variabili > Variabili definite dall’utente > Nuova.
  • Tipo di variabile: Cookie proprietario.
  • Nome cookie: dev.
  • Nomina la variabile “dev Cookie” e salvala.

Puoi ora verificare la corretta creazione del cookie con lo strumento di Debug del browser (con Google Chrome basta cliccare in qualsiasi pagina del tuo sito con il tasto destro > Ispeziona elemento > Scheda Resources).

Nella colonna di sinistra, clicca sulla voce Cookies, come puoi vedere c’è un nuovo cookie “dev” con valore “notset”.

Step 4 – Crea una dimensione personalizzata

Entra ora nel tuo account di Google Analytics, nella scheda Amministrazione.

Nella seconda colonna, Proprietà, clicca su Definizioni personalizzate e quindi Dimensioni personalizzate.

Crea una nuova dimensione personalizzata:
Nome: “dev”;
Ambito: “Utente”.

Salva la dimensione personalizzata. Visualizzerai ora il valore della dimensione, che ti servirà nel prossimo step.

Step 5 – Integra il tag di Google Analytics

Entra ora nel Tag con il quale hai implementato Google Analytics, se non lo hai fatto segui questa guida.

Dovrai solamente modificare una voce del Tag:

  • Clicca su Altre impostazioni > Dimensioni personalizzate.
  • Indice: il valore della dimensione visualizzato nello step precedente, se non hai altre dimensioni personalizzate dovrebbe essere “1”.
  • Valore di Dimensione: {{dev Cookie}} cioè la variabile che hai creato.
  • Salva il tag modificato e pubblica il tutto cliccando sul pulsante blu “Invia”.

Step 6 – Imposta il filtro di Google Analytics

Ora non ti resta che configurare il filtro della vista di Google Analytics, per fare in modo che Analytics includa solamente il traffico in cui la Dimensione personalizzata è impostata con il valore da te specificato, cioè traffico che ha realmente visitato il tuo sito.

Entra quindi nel tuo account Analytics, nella scheda Amministrazione.

Nella terza colonna, relativa alla Vista, seleziona la vista in cui vuoi eliminare i Referral Spam. Ti consiglio di crearne una nuova da modificare, in modo da poter poi confrontare i dati con la visita senza filtri.

  • Clicca su Filtri > Crea nuovo filtro.
  • Nome: “Includi dati Cookie”.
  • Tipo di Filtro: “Personalizzato”.
  • Seleziona Includi.
  • Campo filtro: “dev”.
  • Pattern filtro: “notset”.

Nota: è best practice mantenere sempre una vista priva di filtri. Il consiglio è quello di copiare la vista attuale e applicare il filtro su quella.

Step 7 – Testa il funzionamento con Hit Builder

Per testare il corretto funzionamento del filtro anti-spam ti consiglio di utilizzare lo strumento Hit Builder. Con questo tool potrai simulare una visita da un referral spam.

Collegati al sito e dai l’autorizzazione ad accedere ai tuoi dati.

Imposta quindi i parametri come vedi qui:

alla voce tid inserisci il tuo codice di analytics, mentre la voce cid verrà creata automaticamente cliccando la freccetta circolare sulla destra.

Clicca il pulsante blu “Validate hit”. Se i dati inseriti sono corretti, dovresti vedere questo:

Ora che l’Hit è valido, cliccando Send hit to Google Analytics verrà inviata una “falsa visita” al tuo sito. Controlla il traffico in tempo reale per vedere se visualizzi l’hit.

Applicando il filtro nella nuova vista di Analytics gli hit spammer non dovrebbero essere visualizzati.

Link utili:

Matteo Zambon

View Comments

  • Ciao Matteo,

    sono alle prese con questa bella scoperta. Purtroppo però, dopo aver fatto diversi tentativi continuo a non capire se funziona o meno. Non mi compare il cookie "dev" che dovrebbe comparire nell'inspect al punto 3. Puoi aiutarmi in qualche modo? Grazie!

    Ciao,
    Giacomo

  • Ciao, ho 2 domande

    1) nell'esempio, nell'attivatore come condizione metti page hostname uguale a un sottodominio. Perché non il dominio?
    Io sto provando a fare questa configurazione per una property che comprende vari sottodomini + il dominio principale. E' sufficiente mettere il dominio come page hostname?

    2) questo sito riceve molto traffico da redirect da altri domini (non sottodomini, domini diversi di società assorbite dal gruppo). E' un problema?

    • Ciao Alessandro

      1) Perchè semplicemente il sito di esempio nel mio caso era un subdomain. Se non hai un sottodominio usa pure il domonio di secondo livello, quindi la risposta è sì.
      2) Se ricevi tanti direct significa che sono stati esclusi dal referral nella proprietà di GA (o hai gestito il cross domain). No, non credo sia un problema. Tutto sta come vuoi analizzare i dati :)

      A presto e buon Tag!

  • Ciao Matteo,
    ho seguito la tua guida per eliminare i referral spam ma ho riscontrato un unico problema.
    Nonostante abbia settato la "Priorità di attivazione tag" e la "Sequenza TAG" in maniera corretta, la prima volta che l'utente arriva su una pagina del sito il cookie viene correttamente creato ma non vedo la hit in Google Analytics. Dalla seconda pagina visualizzata la hit compare in Google Analytics.
    Hai qualche suggerimento?

    Grazie :)

  • Ciao Matteo, non so se ti ricordi di me: torno a disturbarti anche in questo tutorial :)
    Guardando le statistiche mi sono accorto che in alcuni giorni la vista senza spam non presenta delle visite proveniente da Google (quindi che sicuramente non sono referral spam), invece regolarmente presenti nella vista non filtrata. Temendo qualche malfunzionamento del cookie ho fatto delle prove con la funzione tempo reale di Analytics e mi sono accorto che se faccio una visita al sito il browser prende correttamente il cookie "dev" "notset", ma analytics questa visita non la conteggia e appare solo se visito una nuova pagina. Praticamente sembra che prima che il browser prenda il tag, analytics abbia già iniziato il tracciamento, quindi senza considerare il cookie. La cosa strana è che la cosa non succede sempre, infatti in alcuni giorni nella vista senza spam ritrovo regolarmente visite (anche rimbalzi, quindi con una sola pagina visitata) presenti anche nella vista non filtrata. Da cosa può dipendere il problema?
    Spero di aver spiegato in modo esauriente il problema. Grazie in anticipo.

    • Ciao Matteo, capisco che non è semplice così a distanza. In realtà come ti dicevo ho anche provato a eliminare l'eccezione noHitGa pensando che il problema potesse dipendere da quello, senza risolvere. Quindi non può essere un conflitto fra le due eccezioni.
      Grazie per la tua pazienza.

    • Ciao Matteo, sto mettendo alla prova la tua pazienza...

      Allora, il noHitGa si è reso necessario a causa del problema che avevo esposto nella guida su come nascondere l'IP dinamico (lo so sono pieno di problemi :-) ):

      "Ciao Matteo, torno a disturbarti anche se mi starai odiando…
      Ho seguito l’altra tua guida per eliminare lo spam (https://www.tagmanageritalia.it/come-eliminare-ghost-referral-spam-da-analytics-con-google-tag-manager/) e una volta pubblicate le modifiche mi sono accorto che il cookie NoHit non funzionava più. Il browser aveva il cookie, il debug di tag manager lo trovava correttamente come impostato “1” (insieme all’altro “dev” con valore “notset”) ma attivava sempre il tag analytics. Ho eliminato il tag dev, la relativa variabile e attivatore e il cookie “cHTML – Cookie – NoVisit” ha ripreso a funzionare correttamente. C’è qualche incompatibilità?"

      In uno dei commenti successivi avevo indicato la soluzione che avevo trovato (inserire l'eccezione per evitare l'attivazione di Analytics quando è presente il cookie NoHitGA), anche se ancora adesso non capisco perché mi capitasse quel problema.
      In realtà era venuto anche a me il dubbio e ho già fatto la prova togliendo quell'eccezione, ma il problema rimane. Ho anche tolto lo "/" finale nell'attivatore come mi hai consigliato tu adesso, purtroppo anche qui senza effetto.
      Spero di aver spiegato bene la situazione.

      • Ciao Fabio :)
        Dovrei smanettarci un po' sul tuo caso per poter dare la soluzione. Probabilmente le due eccezioni in qualche modo vanno in conflitto :\

      • Ciao Fabio,

        prova a togliere lo slash finale nell'attivatore. A questo punto mi viene il dubbio: cos'è quel noHitGa che hai messo come eccezione nell'attivatore?

    • Ciao Matteo,
      ti rispondo in ritardo perché a un certo punto il mio commento era sparito e pensavo non l'avessi letto. Ti allego lo screen delle impostazioni del tag “setCookie-All pages” https://drive.google.com/open?id=15PYoCD27XrZW6wQvJvf0c25JCofiCi7P
      Nel frattempo ho fatto anche altre prove impostando a 2000 la priorità di attivazione del tag, ma non funziona: al primo accesso la visita non viene vista nella vista senza spam, cambiando pagina o aggiornando quella in corso invece la visita compare.
      Grazie sempre per il tuo aiuto.

      • Ciao Fabio,

        dalla schermata che hai allegato non vedo errori palesi.

        Può essere che l'errore sia nella configurazione dell'attivatore.

    • Ciao Fabio!

      Hai controllato che il Tag "setCookie-All pages" si attivi prima del Tag di Google Analytics?
      Nella guida spiego come fare :)

      Fammi sapere!

  • ciao matteo
    ho seguito la guida ed implementato correttamente la funzione sul sito. (da debug il cookie viene settato correttamente).
    Ho un problema.
    Ho una campagna attiva su adwords, e mi capita che le visiti sul sito che traccio con analytics sono inferiori ai click che ottengo con la campagna. Come mai?

    • Ciao Gennaro!
      Allora innanzitutto crea una vista dove non ci sia il filtro, così siamo davvero sicuri di non escludere traffico buono. L'avviso che ricevi in realtà potrebbe essere causato da diversi fattori.
      Uno per esempio è il redirect 301 ad una pagina diversa e nel farlo non passa il valore gclid di adwords (che serve ad analytics a riconoscere che è una visita di adwords).

      Fammi sapere, a presto!

      Matteo

  • Ciao, ho copiato la vista e sulla copia ho applicato il filtro. Ora mi chiedo una cosa, sulla copia sulla quale ho applicato il filtro non vedo i ghost referral che invece noto sulla vista originale. Quindi, a quale vista devo fare affidamento? Cioè se faccio affidamento alla vista originale viene meno tutto il procedimento. O sbaglio? Grazie, spero di essere stato chiaro

    • Ciao Gianluca, si esatto la vista priva di filtri ti serve per avere comunque una vista con tutti i dati.

      Consiglio: hai provato a verificare in tempo reale se ricevi hit con la configurazione del ghost spam?

  • Ciao, ho seguito la vostra guida però ho notato che collegandomi al sito, controllando la panoramica in tempo reale su analytics, gli utenti attivi sul sito sono sempre pari a zero. Come potrei risolvere? Grazie

    • Ciao, grazie per la risposta. Non capisco la nota allo step 6 o come mi suggerisci tu, mantenere una vista su GA priva di filtri. Come posso farlo? Grazie

      • Ciao Gianluca, vai su GA nella parte amministrazione ► e sulla terza colonna vista ne crei una nuova senza alcun filtro

    • Allora hai mantenuto una vista su GA priva di questo filtro? In quella tutto funziona?
      Sicuro di aver impostato tutto correttamente?
      Fammi sapere!

Recent Posts

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…

2 mesi ago

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…

2 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,…

3 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