◔ Analytics e misurazione

Verificare il tracciamento prima del rilascio: una procedura QA

Una procedura per controllare eventi e conversioni prima di ogni rilascio: ambienti di test, casi di prova, strumenti del browser e avvisi automatici.

Il tracciamento si rompe in silenzio. Una pagina che non si carica genera segnalazioni immediate; un evento di conversione che smette di partire può passare inosservato per settimane, finché qualcuno non nota un calo nei report e scopre che i dati di un intero mese sono inutilizzabili. Per questo il controllo della misura va trattato come qualsiasi altro controllo di qualità: con una procedura, prima di ogni rilascio.

Perché si rompe

Le cause più frequenti sono banali:

  • un componente riscritto che non pubblica più l'evento;
  • un modulo che passa dall'invio classico a una chiamata asincrona, e l'evento legato al cambio di pagina non scatta più;
  • un URL modificato, mentre una regola cercava il vecchio indirizzo;
  • un nuovo banner dei cookie che blocca anche gli script necessari al funzionamento;
  • una proprietà rinominata in un punto ma non negli altri.

Nessuna di queste è un errore raro: capitano nella normale evoluzione di un sito.

Ambienti separati

Il primo requisito è non sporcare i dati reali durante le prove. L'ambiente di test deve inviare gli eventi a una destinazione diversa da quella di produzione, oppure marcarli in modo che si possano escludere. In questo modo si può provare un acquisto dieci volte senza gonfiare il fatturato registrato.

Una lista di casi di test

Per ogni evento importante del piano di misurazione scrivi un caso di test con azione, risultato atteso e proprietà da controllare. Un esempio:

Azione Evento atteso Proprietà da verificare
Aprire una pagina di servizio page_view page_type = servizio, lingua corretta
Inviare il modulo di contatto valido form_submit form_id, nessun dato personale
Inviare il modulo con un campo errato nessun form_submit evento di errore, se previsto
Scaricare il listino file_download nome file
Cliccare il numero di telefono contact_click metodo = telefono

Il terzo caso è importante quanto gli altri: verificare che un evento non parta quando non deve evita conversioni false.

Gli strumenti del browser

Per il controllo manuale bastano gli strumenti di sviluppo del browser:

  1. nella scheda di rete, filtrare per l'indirizzo dello strumento di raccolta e osservare ogni richiesta inviata;
  2. controllare i parametri della richiesta: nome dell'evento, proprietà, valori;
  3. nella console, ispezionare il contenuto del data layer dopo ogni azione;
  4. ripetere con la cache svuotata e in una finestra privata, per simulare un nuovo visitatore.

Molti strumenti di analytics offrono anche una modalità di debug che mostra gli eventi in tempo reale. È utile, ma non sostituisce la scheda di rete: ciò che conta è quello che parte davvero dal browser.

Il consenso

Il controllo va ripetuto almeno in due condizioni: con consenso dato e con consenso negato. In particolare verifica che, senza consenso, gli strumenti che lo richiedono non inviino nulla e non impostino cookie. È un controllo di correttezza della misura, ma anche di rispetto delle scelte dei visitatori.

Dispositivi e browser

Un evento che funziona su desktop può non funzionare su mobile, per esempio perché il menu ha un componente diverso. Non serve testare ogni combinazione: bastano i due o tre browser e dispositivi più usati dal tuo pubblico, che puoi ricavare dagli stessi analytics.

Automatizzare il nucleo

I controlli manuali sono preziosi ma si saltano facilmente quando si ha fretta. Gli eventi di conversione principali meritano un test automatico: uno script con un browser automatizzato esegue l'azione, intercetta le richieste di rete e verifica che l'evento atteso sia partito con le proprietà giuste. Inserito nella pipeline di rilascio, blocca il deploy quando qualcosa manca.

Dopo il rilascio

Anche con tutti i controlli, qualcosa può sfuggire. Nei giorni successivi al rilascio:

  • confronta i volumi degli eventi chiave con lo stesso giorno della settimana precedente;
  • controlla che le conversioni registrate tornino con le fonti interne, come le email ricevute o gli ordini nel gestionale;
  • imposta avvisi automatici se un evento importante scende a zero o sotto una soglia ragionevole.

Nel mio lavoro l'avviso «zero conversioni nelle ultime ventiquattro ore» è quello che ha salvato più dati: semplice, quasi mai falso, e immediato.

Annotare

Ogni rilascio che tocca il tracciamento va annotato con data e descrizione. Se tra tre mesi un grafico mostra un gradino, l'annotazione spiega subito se si tratta di un cambiamento reale o di un effetto della misura.

In sintesi

  • Il tracciamento si rompe in silenzio: va verificato prima di ogni rilascio.
  • Usa un ambiente di test che non sporchi i dati di produzione.
  • Scrivi casi di test per ogni evento, inclusi quelli che non devono partire.
  • Controlla le richieste di rete, con e senza consenso, sui dispositivi principali.
  • Automatizza i test delle conversioni e imposta avvisi sui cali dopo il rilascio.
MM
Marco Marzaduri

Marco Marzaduri si occupa di cybersecurity, informatica forense e sviluppo web. Laureato in informatica, unisce il rigore dell'analisi tecnica all'attenzione per le persone che usano la tecnologia.

Leggi anche