[AGGIORNATO 01 Agosto 2022]
Attenzione: in seguito al provvedimento del Garante Privacy italiano che ha dichiarato illecita l’implementazione di Google Universal Analytics (GA3) su un sito web, è necessario eliminare il prima possibile la proprietà di GA3 dai propri progetti web e passare subito a GA4.
Se non hai dimestichezza con GA4 e desideri imparare a padroneggiare nel modo corretto questo strumento, nel mio libro su GA4 “Google Analytics 4 per chi inizia” ti guido passo passo per imparare a utilizzarlo in maniera semplice e pratica.
–
Probabilmente avrai notato che utilizzando l’IP Anonymize su Google Analytics, improvvisamente i dati relativi ai Paesi e alle Città presenti nei report di Google Analytics hanno iniziato ad essere sballati o semplicemente meno precisi.
Bene, devi sapere che questo è proprio a causa dell’anonimizzazione dell’IP perché fisicamente Google Analytics non possiede più il dato preciso. Doh, che brutta cosa ‘sta GDPR.
Ok, ti ho spiegato come recuperare comunque l’indirizzo IP grazie Google Tag Manager nonostante l’anonymize, ma resta il fatto che su Google Analytics non avrai più il dato preciso (e ti ricordo che secondo le TOS di GA non è possibile salvare dati sensibili).
“Ehi Matteo, ma che c’entra l’IP con l’identificazione della città?”
Oh, ma certo che c’entra. C’entra come la panna su una tazza di cioccolato caldo!
Devi sapere che grazie all’indirizzo IP è possibile risalire da dove proviene la visita. Quindi quando ti colleghi ad internet e il tuo provider di connettività (quello che ti dà l’ADSL o la fibra per capirci) ti assegna un indirizzo IP di navigazione, di solito da una “cabina” più vicina a te. Quindi, dal tuo PC o Smartphone stai comunicando a tutti che stai navigando da quell’IP che si trova in quel punto perché la “cabina” è fisicamente là.
In realtà per il mobile (brutto maledetto) l’IP continua a cambiare a seconda di dove si trova ma con una precisione non esattamente così fantastica. Io, per esempio, ora sono a Vicenza ma dal mio Smartphone sono con IP che risiede a Rho (che non sta in un’altra regione).
La soluzione potrebbe essere la richiesta di usare la geolocalizzazione dei browser (che ti restituisce la latitudine e longitudine), ma ci vuole l’autorizzazione da parte dell’utente (hai presente il messaggio in alto sulla barra che ti chiede “il sito vorrebbe sapere dove ti trovi”? Ecco, quella roba lì).
Se per il tuo business il riconoscimento della località è un punto fondamentale allora puoi stare tranquillo, perché in questa guida ti spiegherò come recuperare la città attraverso un servizio esterno.
Piccolo appunto: questa guida ha preso spunto dall’articolo di Simo Ahava (trovi il link in fondo). Sia chiaro non ho copiato, ma creato un’alternativa 😉
La prima cosa da fare è creare un account sul servizio di ipgeolocation.io
Il servizio è disponibile con diversi tipologie di abbonamento, che differiscono tra loro per il limite di chiamate a disposizione. In base al traffico totale del tuo sito potrai scegliere quello che si adatta meglio alle tue esigenze. La versione base “Developer” gratuita ha un limite di 1000 chiamate al giorno, anche se il suo utilizzo dichiarato è “per fini non commerciali”.
Crea in pochi minuti il tuo account per ottenere la tua API KEY con cui poter fare le richieste da Google Tag Manager.
Una volta che avrai concluso la registrazione, all’interno del tuo profilo avrai la chiave che ti è stata assegnata.
Accedi al contenitore di Google Tag Manager dove vuoi implementare questa guida.
Per prima cosa crea una variabile che conterrà la tua API KEY.
Incolla il seguente script in un nuovo tag. Puoi personalizzarlo in base alle tue esigenze seguendo la documentazione.
<script> //by Tag Manager Italia var getJSON = function(url, callback) { var xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.responseType = 'json'; xhr.onload = function() { var status = xhr.status; if (status == 200) { callback(null, xhr.response); } else { callback(status); } }; xhr.send(); }; //If you want other parameters refer to the documentation: https://ipgeolocation.io/documentation/ip-geolocation-api.html //In this case we request only the City parameter getJSON('https://api.ipgeolocation.io/ipgeo?apiKey={{IP Geolocation Key}}&fields=city', function(err, data) { if (err != null) { console.error(err); } else { var dlName = google_tag_manager[{{Container ID}}].dataLayer.name; window[dlName] = window[dlName] || []; //In the dataLayer push add the values you need window[dlName].push({ 'event': 'geolocation.get', 'geolocation.ip': data.ip, 'geolocation.city': data.city }) } }); </script>
C’è anche una libreria JavaScript a disposizione, ma con una semplice chiamata GET otteniamo lo stesso risultato, meglio no? Ok, forse la capisce solo un tecnico ‘sta cosa 😛
Dai che ci siamo quasi. Verifica che tutto funzioni con il debugger di Google Tag Manager.
Se funziona tutto, guardando il contenuto del dataLayer, dovresti avere l’evento geolocation.get con il dato della città da dove stai lavorando.
Se tutto funziona, crea una variabile con Tag Manager.
Con questa variabile potrai, ad esempio:
E tu come stai pensando di implementare questa guida? Fammelo sapere nei commenti!
LUISAVIAROMA è uno dei principali fashion e-tailer di lusso al mondo, con oltre 5 milioni…
All’interno del vasto e competitivo mercato della Grande Distribuzione Organizzata (GDO), Mondo Convenienza rappresenta uno…
Se ti occupi di marketing o advertising, saprai che i funnel rappresentano il percorso che…
È stato un nuovo record per il GA4Summit: oltre 500 professionisti e professioniste del web…
Negli ultimi mesi hai notato in Google Analytics 4 un calo improvviso e inspiegabile nelle…
Se ti trovi su questa guida è perché hai compreso che solo attraverso la Data…
View Comments
Ciao, premettendo che ho inserito l'ip anonimyzed, adesso ho bisogno di creare un grafico con i dati demografici sulla località(paese e città). Avrei utilizzato il dato che è già presente in analytics pero da come ho capito inserendo l'ip anonimyzed i dati demografici già presenti sono sballati. Ho fatto tutto quello che mi diceva la guida, ho creato il html personalizzato con l'attivatore e la sua variabile. Avendo poi creato la variabile di livello di dati, poi mi dici che posso usare questa variabile per inviare la città a Google Analytics, attraverso una Dimensione Personalizzata o tramite un evento, ma come si fa? Riesco comunque a creare un grafico tipo quello che prendevo direttamente da analytics?
Ciao Umverto, per la dimensione personalizzata, ecco lo step 2 di questa guida. Mettilo però scope (ambito in italiano) di tipo hit.
https://www.tagmanageritalia.it/come-abilitare-lo-user-id-in-universal-analytics-con-google-tag-manager/
Se vuoi il report stile mappa devi usare un data studio usando la dimensione personalizzata :)
A presto!