Set 2021
Guida Base: come rilevare automaticamente il traffico dei bot in Google Universal Analytics e GA4
Fammi indovinare, la prima cosa che hai pensato quando hai letto il titolo di questa guida è stata:
“Ma Google Universal Analytics ha già una funzionalità nativa per escludere tutti gli hit da bot e spider noti”.
(Per “hit” si intende un’interazione sul tuo sito web che comporta l’invio di dati ad Analytics)
Uh, beh sì… in parte hai ragione.
Infatti nelle impostazioni (a livello di Vista) in Universal Analytics troviamo un flag che gestisce proprio questa funzione.
Eccolo qui:
Quello che forse non sai però è che questa funzionalità si basa sulle liste IAB (IAB/ABC International Spiders and Bots List).
Queste liste possono essere aggirate dai bot e dagli spider evitando questo tipo di filtri man mano che acquisiscono raffinatezza.
Perciò nonostante tu abbia attivato questa funzione è probabile che non tutto il traffico che stai tracciando sia “umano”.
Che fregatura 😀
“E quindi cosa posso fare?”
Oltre ad alcuni azioni “manuali” di ricerca che puoi fare sui report del tuo Google Analytics (e Google Analytics 4), in questa guida ti mostro come utilizzare un bel #Barbatrucco per rilevare in modo automatico e veloce possibile traffico Bot.
Tra le azioni “manuali” più comuni per individuare possibile traffico Bot ci sono:
- guardare il Bounce Rate del traffico sul sito web
- verificare la Città di provenienza del traffico
- verificare la versione del Browser da cui proviene il traffico.
Oltre a queste azioni, ti faccio vedere poi in dettaglio come puoi implementare il mio #Barbatrucco sul tuo Google Analytics utilizzando Google Tag Manager!
Pronto? Iniziamo! 😉
Come identificare traffico Bot al tuo sito web
Il #Barbatrucco per rendere automatica la rilevazione di traffico “non umano” è un po’ particolare e si basa su due dimensioni di Google Analytics:
- Risoluzione dello schermo (larghezza e altezza dello schermo in pixel)
- Dimensioni del browser (larghezza e altezza della finestra del browser)
Il concetto è semplice.
Normalmente quando un utente visita il tuo sito web, le dimensioni della finestra del browser sono uguali o più piccole rispetto alle dimensioni dello schermo del suo computer.
Quando le dimensioni della finestra del browser supera le dimensioni dello schermo, significa che c’è qualcosa di strano sotto.
Vediamo alcuni esempi di questa anomalia utilizzando due dimensioni integrate di Google Analytics: Screen Resolution (Risoluzione dello schermo) e Browser Size (Dimensioni del browser),
Possiamo notare che questi utenti hanno una risoluzione dello schermo di 800×600 e le dimensioni del browser di 1350×770, che superano la risoluzione dello schermo “standard” di oltre 500 pixel in orizzontale e oltre 150 pixel in verticale.
Questo di per se è già altamente irregolare, ma se approfondiamo ulteriormente possiamo notare altre stranezze.
La prima cosa che salta all’occhio è che il Bounce Rate per questi utenti è il 100%.
Questo è un segnale che qualcosa non quadra, infatti nell’attività dei Bot vediamo due estremi, o una frequenza di rimbalzo molto alta (100% come in questo caso) oppure molto bassa (quasi nessun rimbalzo).
Un’altra analisi che possiamo fare per comprendere meglio la natura di questi utenti è verificare la Città di provenienza.
Inserendo City come dimensione secondaria possiamo vedere che il 100% delle richieste arriva da Ashburn negli Stati Uniti (noto data center di Amazon Web Services)
Strano, vero? 🙂
Ma vediamo più nel dettaglio il sistema operativo e la versione del browser che utilizzano questi utenti
Un altro indizio che questo traffico ha qualcosa di sospetto è che tutti i visitatori presumibilmente si trovano su un desktop Windows e parte del traffico arriva da versione obsolete di Chrome.
Il presupposto è che di solito la versione del browser di un utente sia di solito molto recente per Chrome, a causa degli aggiornamenti automatici, cosa che invece non succede per i bot e per gli spider i quali sono di solito molto più riluttanti e incapaci a saltare sull’ultima versione più rapidamente.
Se sommiamo insieme tutti questi indizi abbiamo un’impressione abbastanza netta che quasi tutto il traffico che sfoggia una finestra del browser più grande delle dimensioni dello schermo è davvero robotico per natura.
Se ti stai chiedendo se possiamo trasformare quest’analisi manuale in un processo per segnalare come non “umano” questo traffico e quindi avere la possibilità di escluderlo dalle tue analisi, beh sei nel posto giusto!
Tutto quello di cui avremo bisogno è una dimensione personalizzata (custom dimension) libera in Google Analytics e il nostro caro Google Tag Manager.
Ecco come devi procedere per implementare il mio #Barbatrucco e rilevare in automatico il traffico Bot.
STEP 1 – CREA UNA DIMENSIONE PERSONALIZZATA IN GOOGLE ANALYTICS
Per prima cosa crea la nuova dimensione personalizzata nella quale passeremo se il traffico è un possibile bot o spider oppure del normale traffico.
In Google Analytics:
- Vai su Admin > Custom Definition > Custom Dimension
- Clicca sul pulsante rosso New Custom Dimension per creare una nuova dimensione personalizzata
- Name: Possible Bot
- Scope: User
- Clicca su Create per salvare la nuova dimensione e segnati l’indice di riferimento (ci servirà più tardi)
STEP 2 – CREA UNA VARIABILE CUSTOM JAVASCRIPT
Adesso creiamo una Variabile JavaScript che intercetti e valuti l’altezza dello schermo e del Browser.
In Google Tag Manager:
- Vai su Variables > New > Variable Configuration
- Variable Type: Custom JavaScript
- Inserisci questo script:
function() { var screenHeight = screen.height; var browserHeight = window.innerHeight; var delta = screenHeight - browserHeight; var possibleBot; if (delta < 0) { possibleBot = 'possible bot'; } else possibleBot = 'normal user'; return possibleBot; }
- Nomina la Variabile con un nome tipo “js – Possible Bot” e salva
N.B. Grazie a questa variabile, se la dimensione dell’altezza del browser supera quella dello schermo ci verrà restituito il valore “possible bot”, altrimenti ci restituirà “normal user”.
STEP 3 – MODIFICA LA VARIABLE DELLE IMPOSTAZIONI DI GOOGLE ANALYTICS
L’ultimo step è aggiungere la dimensione personalizzata alla variabile delle impostazioni di Google Analytics (GAS) che dovresti già aver configurato nel tuo GTM (in alternativa puoi aggiungere la custom dimension al Tag PageView di Google Anlaytics).
In questo modo tutti i Tag di Google Analytics che utilizzano la GAS passeranno anche la nuova dimensione che abbiamo creato, senza dover andare a modificare uno ad uno i Tag.
In Google Tag Manager:
- Apri la GASV > More Settings > Custom Dimension
- Aggiungi una nuova cliccando su “Add Custom Dimension“
- Index: Inserisci l’indice di riferimento di Google Analytics della dimensione (nel mio caso 3)
- Dimension Value: {{JS – Possible Bot}}
- Salva la GAS
Da questo momento in poi, una volta che inizierai a raccogliere dati potrai associare questa nuova dimensione personalizzata ad altre dimensioni.
In questo modo potrai utilizzare la tua nuova dimensione in segmenti oppure creare rapporti personalizzati per aiutarti a segnalare più rapidamente il traffico sospetto al tuo sito web.
Fantastico vero?
Adesso prova tu a implementare questa configurazione!
E in Google Analytics 4?
Bè la logica non cambia.
Potresti analizzare allo stesso modo i vari dati attraverso i report sul menù Exploration.
(Nel mio ultimo libro “Google Analytics 4 per chi inizia” ti mostro passo passo come configurare i tracciamenti degli eventi Consigliati, gli eventi Personalizzati e gli eventi Enhanced Measurement in GA4)
Dovrai usare una custom dimension (nella voce Custom Definitions) con scope “User” nominandola con un nome che vuoi (ad esempio, “Bot”) e inserirla nel Tag di configurazione di Google Analytics 4.
Vorresti una guida step by step anche di questo? Fammelo sapere nei commenti 😉
Inoltre, se hai bisogno di aiuto, non dimenticarti che puoi lasciare un commento qui sotto, sarò molto felice di aiutarti 🙂
Alla prossima guida e… buon Tag!
Altre Guide che potrebbero interessarti
- Migrazione da GA3 a GA4: come disabilitare la configurazione…
- Come prepararsi alla migrazione da GA3 a GA4: il Data Model
- Addio Google Universal Analytics: ecco quando smetterà di…
- Novità Google Analytics 4: i parametri UTM e URL, la Home…
- I segreti di GA4: best practice e soluzioni ai problemi di…
- Cos’è la Data Retention di GA4 e come gestirla nel modo…
Chiedi pure qui sotto, sarò pronto a risponderti!
Unisciti alla più grande community italiana dedicata alla Digital Analytics!
Iscrivendoti alla newsletter gratuita di Tag Manager Italia riceverai:
- guide (base/avanzate) passo passo
- news di approfondimento
- webinar gratuiti
- offerte esclusive
e altre risorse di 1°classe sul mondo della Digital Analytics!
- Caso studio: LUISAVIAROMA ottimizza il tracciamento dei dati Ecommerce e le performance Advertising grazie a GA4 e BigQuery
- Caso studio: Mondo Convenienza realizza +85% di vendite ecommerce e +100% di conversioni aggiuntive per le campagne Meta Ads grazie a GA4 e Server-Side Tracking
- Come creare un report in GA4 per analizzare il funnel di conversione di un sito web o ecommerce
- Seconda edizione del GA4 Summit: oltre 500 partecipanti per due giorni di formazione e confronti sul presente e futuro dell’Analytics per il Marketing e l’Advertising
- Attribuzioni errate in GA4: cause e soluzioni al problema
- Matteo Zambon su Come installare Google Analytics 4 (GA4) con Google Tag Manager
- Matteo Zambon su Guida Base: come tracciare l’E-commerce in GA4 con Google Tag Manager Server-Side
- Matteo Zambon su Guida Avanzata: come tracciare in GA4 l’Invio Contact Form 7 con Google Tag Manager
- Matteo Zambon su I segreti di GA4: best practice e soluzioni ai problemi di utilizzo e implementazione di Google Analytics 4
- Matteo Zambon su Guida Base: come rilevare automaticamente il traffico dei bot in Google Universal Analytics e GA4
Loretta
18 11 2024
Ciao Matteo,
in debug funziona tutto e la variabile passa il valore al parametro, mentre in GA4 il valore è blank.. secondo te quale potrebbe essere il problema? Grazie!
Matteo Zambon
18 12 2024
Ciao Loretta, hai usato una user properties? Prova a usare lo scope event così da averla appiccicata su ogni evento e fai le considerazioni a livello di evento.
Dovresti comunque trovartela. La domanda sciocca è: hai pubblicato?
Fammi sapere!
Marco
09 05 2022
L’ha anticipato “romeocharly”, anch’io interessato alla guida step by step, se non è contenuta nel corso FATTI IN QUATTRO..
Matteo Zambon
18 05 2022
Ok, mi segno di aggiungerla in questo articolo 🙂
romeocharly
18 04 2022
Ciao Matteo, grazie per tutto; come dicevi tu alla fine , mi interesserebbe una guida step by step per GA4. Grazie comunque.
Matteo Zambon
27 04 2022
La metto in cantiere 🙂
Franco
12 11 2021
Ciao Matteo, io aggiungerei anche una mini sezione alla fine di come una volta configurato il tutto vedere i dati su Data Studio per inserirlo nei report
Matteo Zambon
19 11 2021
Ciao Franco,
Grazie per il consiglio, lo prenderemo in considerazione per migliorare l’articolo!
A presto 🙂
Marco
15 10 2021
Come sempre guida Interessante, 2 domandine
1) i date derivanti da questa implementazione, li trovo nella lista come da esempio o riesco a visualizzarla anche negli eventi.
2) sono interesssato alla lista passo/passo GA4
Saluti
Matteo Zambon
21 10 2021
Ciao Marco e grazie del feedback!
Li puoi visualizzare nei report degli eventi aggiungendo la dimensione secondaria “Possible Bot”.
A breve farò anche la guida completa per GA4.
Buon Tag!