News

29/09/2022

Cos'è e come funziona il Server Side Tracking

In questo articolo parleremo del Server Side Tracking per l'analisi del traffico web e della sua conformità al GDPR. Analizzeremo le differenze tra il tracciamento lato server e il tracciamento lato client che è utilizzato più comunemente. Vedremo come si fa ad implementare il Server Side Tracking su Matomo e su Google Analytics. Affronteremo in breve la Log Analysis come strumento di maggior precisione per l'identificazione del traffico.

Il Server Side Tracking consiste nel monitorare il traffico sul nostro sito web o applicativo lato server. Siamo abituati infatti ad utilizzare strumenti di analisi del traffico quali Google Analytics e Matomo che normalmente monitorano il traffico basandosi sul browser (lato client).

Il browser può essere impostato per bloccare i tracciamenti, ad esempio disabilitando Javascript oppure utilizzando estensioni come uBlock. In questi casi, la normale configurazione lato client di Matomo o Google Analytics non sarà in grado di tracciare la visita dell'utente.

Oltretutto, con le recenti novità sulla privacy, dall'introduzione del GDPR allo stop a Google Analytics da parte del Garante Privacy, sta emergendo sempre di più la necessità di soluzioni privacy compliant, basate sul tracking lato server e sull'analisi dei log.

Server Side Tracking: che cos'è?

Quando un utente naviga all'interno dei siti web in cui è installato un sistema di server side tracking, si collega a dei server i quali ricevono una richiesta HTTP e registrano una serie di informazioni sul visitatore, come l'indirizzo IP, il tipo di browser e la posizione approssimativa. Catalogando queste informazioni tramite un software di web analytics possiamo generare dei grafici di andamento del traffico, per capire quali sono le pagine più visitate, rispettando la privacy degli utenti.

Il vantaggio principale del monitoraggio da parte del server è che possiamo sapere con maggiore precisione quanto traffico generano i nostri contenuti.

Spesso il server side tracking viene effettuato tramite l'inserimento di un cosiddetto pixel, cioè si aggiunge una piccola immagine invisibile nella pagina. Quando questa viene scaricata, il server registra l'azione e associa ad essa le informazioni sull'utente.

Un altro esempio può essere quando il tracciamento avviene in modo invisibile. Potremmo creare uno script PHP che registra la visita dell'utente, senza necessità di usare il pixel appena menzionato. Ecco un semplice esempio che registra l'indirizzo IP dell'utente:

$indirizzoIP = $_SERVER['REMOTE_ADDR'];

Poiché non richiede l'uso di Javascript, qualsiasi utente può essere tracciato in questo modo.

Quello che è importante, alla fine, è quali dati memorizziamo e soprattutto come li trattiamo. Se vogliamo operare in modo etico e trasparente, possiamo farlo con gli strumenti giusti.

Server Side Tracking con Matomo

Di base Matomo effettua un tracciamento lato client in Javascript, quindi l'utente viene tracciato attraverso il proprio browser, il quale comunica con il server utilizzando il codice di monitoraggio. Il meccanismo è molto simile a quello di Google Analytics.

Il vantaggio di avere Matomo configurato sul nostro server è che ci permette di avere il controllo sul flusso dei dati e quindi ci garantisce una maggiore conformità al GDPR.

Il Server Side Tracking di Matomo funziona tramite l'uso di apposite librerie da installare nel server in cui è configurato il software di Matomo.

Possiamo ad esempio usare Matomo PHP Tracker se il back-end del nostro sito web utilizza PHP. In alternativa ci sono altri client scritti in Java, C#, C++, Python, NodeJS e altri framework Javascript.

Server Side Tagging con Google Analytics

Possiamo configurare il server side tagging su Google Tag Manager in modo da tracciare gli utenti lato server con Google Analytics, anziché lato client.

Questo potrebbe comunque creare delle problematiche in termini di privacy, ecco perché noi consigliamo soluzioni alternative.

A questo proposito, leggi anche il nostro articolo Matomo vs Google Analytics.

Log Analysis: che cos'è?

Per Log Analysis si intende l'analisi del registro degli accessi di un server. In pratica, ogni volta che un utente si collega ad un sito web, la sua visita viene memorizzata su un apposito registro, che di base è un normale file di testo, come in questo esempio:

127.0.0.1 - - [28/Jun/2022:10:27:32 +0200] "GET /url-pagina-web/ HTTP/2.0" 404 195

Il contenuto del file riporta una serie di righe che contengono: l'indirizzo IP dell'utente, la data e l'ora della visita (timestamp), l'indirizzo web che è stato aperto (URL), il protocollo, il codice di risposta da parte del server, e il peso della pagina visualizzata.

Queste righe verranno poi processate da un software che renderà il tutto più comprensibile tramite interfaccia grafica.

Il vantaggio principale è che possiamo avere la massima precisione su quante visite (hit) ricevono le nostre pagine, perché il visitatore non ha modo di impedire al server di registrare il suo accesso. Lo svantaggio, tuttavia, è che le interfacce di questi software sono spesso più difficili da utilizzare e comprendere, almeno rispetto ad esempio a Matomo o Google Analytics e inoltre offrono meno funzionalità.

La log analysis è quindi poco utilizzata da chi si occupa di marketing.

Log analysis con Awstats

Uno dei software opensource di log analysis più diffusi è Awstats, il quale permette di avere numeri molto realistici sul comportamento degli utenti quando si tratta di URL visitati, numero di visite, download effettuati ecc.

Log analysis con GoAccess

GoAccess è un altro software opensource che permette di analizzare gli accessi salvati nel registro del server e mostra i dati tramite interfaccia grafica.

Quando usare il tracciamento lato client?

Il tracking lato client funziona generalmente tramite il codice di monitoraggio Javascript, quella classica porzione di codice che dobbiamo aggiungere nel tag HEAD del nostro sito quando usiamo Google Analytics o Matomo.

Questo tipo di tracciamento funziona quando ci interessa avere un'idea approssimativa di come stia andando il traffico sul nostro sito web, accettando che alcuni utenti potrebbero bloccare il tracciamento.

Generalmente le piattaforme di questo tipo sono più semplici da utilizzare e offrono funzionalità avanzate per il remarketing. Sono quindi più adatte per le necessità degli uffici che si occupano di digital marketing e delle attività commerciali basate sull'andamento del sito web.

A volte però potremmo voler monitorare il traffico includendo eventuali utenti che bloccano il tracciamento lato client. Questo ovviamente non significa voler violare la loro privacy: possiamo fare tutto in conformità al GDPR usando gli strumenti giusti, come abbiamo visto con Matomo.

Pensiamo ad esempio ad un e-commerce o ad un applicativo in ambito sanitario che volessero monitorare in modo puntuale l'utilizzo della loro piattaforma per sapere quali sono le pagine o i file che gli utenti richiedono più spesso. In questi casi, il server side tracking è l'opzione migliore.

Perché il tracciamento lato client e lato server sono diversi?

Questo accade perché lato client ci sono molti fattori che possono influire sulle statistiche e sul traffico: un utente che rifiuta determinati cookie, oppure che disabilita Javascript, oppure che usa estensioni come gli ad-blocker, potrebbe non essere tracciato dagli strumenti che operano solo sul browser.

Infatti il tracking lato client funziona tramite codice di monitoraggio Javascript. In pratica, in un sito web che usa Google Analytics o Matomo, troveremo un pezzo di codice Javascript. Per fare un esempio, questo è il codice di monitoraggio Matomo del nostro sito web:

<script type="text/javascript">
var _paq = window._paq || [];
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
    var u="https://matomo.webforma.it/matomo/";
    _paq.push(['setTrackerUrl', u+'matomo.php']);
    _paq.push(['setSiteId', '1']);
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
    g.type='text/javascript'; g.async=true; g.defer=true;
    g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
})();
</script>

Mentre questo è un codice di monitoraggio di Google Analytics:

<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-XXXXXXX-1', 'auto');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
</script>

In entrambi i casi il codice viene eseguito sul browser dell'utente nel momento in cui viene caricata la pagina web.

A questo punto, il server di Matomo o Google riceve una richiesta (hit) con una serie di informazioni che vengono elaborate dal server (back-end) e poi vengono rese disponibili nella piattaforma (front-end) sottoforma di grafici, che saranno visionati da coloro che si occupano delle web analytics.

Per fare un esempio, il meccanismo fallisce se un utente usa l'estensione uBlock per il proprio browser in quanto le richieste a Google Analytics verranno bloccate e, per questo motivo, potremmo trovare dei dati incongruenti su piattaforme diverse (Awstats, Matomo, Google Analytics o altre).

Lo stesso accade quando l'utente rifiuta alcuni cookie analitici oppure quando disabilita l'uso di Javascript per vari motivi.

Negli ultimi anni, specialmente da quando hanno iniziato a sollevarsi casi di violazione della privacy da parte di aziende famose come Cambridge Analytica, oppure nel caso della multa a un sito web per l'uso di Google Fonts in modo non conforme al GDPR, è stato messo in luce come i dati degli utenti possano essere trattati in modo non conforme alla privacy. Questi avvenimenti hanno fatto acquisire consapevolezza agli utenti che hanno iniziato ad installare gli ad-blocker per evitare di essere tracciati e questo comporta una grossa perdita per gli investitori pubblicitari.

Le soluzioni però esistono e, come abbiamo visto, possiamo monitorare il traffico del nostro sito anche rispettando la privacy dei nostri utenti.

Leggi anche: Google Analytics in contrasto con la normativa GDPR?

Come configuro il tracciamento lato server nel mio sito web?

Se quello di cui hai bisogno è un tracciamento personalizzato, o comunque basato su strumenti di monitoraggio, avrai solitamente bisogno di:

Pubbliche amministrazioni

Per i siti della Pubblica Amministrazione ci sono due strade percorribili:

  • Utilizzare Web Analytics Italia, un servizio realizzato dallo Stato italiano e basato su Matomo. Per poter usufruire di tale servizio l'ente pubblico deve effettuare la registrazione tramite SPID, deve essere accreditato presso IndicePA e avere un codice IPA.
  • Installare Matomo direttamente sul proprio server. Questa opzione consente di avere un pieno controllo dei dati e dello strumento stesso.

Hai bisogno di informazioni?

Se hai dubbi su come procedere, contattaci e ti aiuteremo a scegliere la soluzione migliore per le tue esigenze.

Non perdere i prossimi aggiornamenti! Seguici su Linkedin e Facebook.