Un livello dati è un oggetto strutturato gestito da un sito web o un'applicazione che contiene informazioni sulla pagina corrente, sull'utente e sugli eventi che si verificano, in un formato documentato leggibile dagli strumenti di misurazione. Invece di far sì che ogni tag di analisi o pubblicitario estragga valori dal markup della pagina, tutti gli utenti leggono da un'unica fonte, appositamente popolata.
Il suo valore risiede nella durabilità. Le configurazioni di tracciamento che estraggono valori da selettori CSS, nomi di classi o testo visibile sono legate a dettagli di presentazione che cambiano ogni volta che il sito viene riprogettato, modificato o ristrutturato, e quando si guastano, di solito lo fanno silenziosamente. Un livello dati disaccoppia la misurazione dalla presentazione: il front-end può cambiare completamente e, finché il contratto del livello dati viene rispettato, il tracciamento continua a funzionare. Questo trasforma il tracciamento da un fragile livello sovrapposto a un'interfaccia gestita in modo affidabile.
La sua natura contrattuale è l'aspetto fondamentale. Una specifica del livello dati definisce quali variabili esistono, cosa contengono, quali tipi rappresentano, quando vengono popolate e quali eventi vengono inviati con quali parametri. Trattata come un'interfaccia tra l'applicazione e lo stack di misurazione, diventa una responsabilità condivisa: gli sviluppatori la implementano durante la creazione delle funzionalità e l'analisi la utilizza senza bisogno di comprendere il front-end. Trattata come un ripensamento, diventa incoerente, con lo stesso concetto denominato in tre modi diversi nei template e popolato in punti diversi del ciclo di vita della pagina.
La tempistica è l'errore tecnico più comune. I valori inviati dopo che i tag sono già stati attivati producono dati vuoti o predefiniti, motivo per cui il livello dati dovrebbe essere inizializzato nel documento prima dello snippet del tag manager, con gli eventi successivi inviati man mano che si verificano. Le applicazioni a pagina singola richiedono particolare attenzione, poiché le modifiche alla pagina virtuale non attivano i normali eventi di caricamento della pagina e la navigazione basata sulla cronologia deve inviare esplicitamente gli eventi equivalenti con il contesto corretto.
La progettazione dello schema determina l'utilità dei dati risultanti. Un livello dati ben progettato cattura le entità su cui l'azienda effettivamente ragiona, inclusi gli identificativi del prodotto, le categorie, i prezzi, la valuta, il tipo di utente, lo stato dell'account e gli identificativi che collegano una sessione al record cliente più ampio. Un livello dati mal progettato cattura ciò che era conveniente al momento, producendo analisi che non possono rispondere alle domande poste dall'azienda senza ulteriori interventi di ingegneria ogni volta.
La documentazione è ciò che permette a un livello dati di sopravvivere al ricambio del personale ed è l'elemento che più spesso manca. Una specifica che elenchi ogni variabile ed evento, con il relativo tipo, le condizioni di attivazione, un valore di esempio e la persona o il team responsabile, è un piccolo artefatto dal valore sproporzionato: consente ai nuovi sviluppatori di implementare correttamente il tracciamento senza dover decodificare pagine esistenti, fornisce agli analisti un riferimento per l'interpretazione dei dati e costituisce la base per la validazione automatizzata. Verificare che l'implementazione corrisponda alla specifica, idealmente come parte della pipeline di distribuzione, è ciò che impedisce che la documentazione descriva un'interfaccia che il sito non rispetta più.
Le considerazioni sulla privacy si applicano direttamente, poiché il livello dati è spesso il luogo in cui i dati personali diventano disponibili per la prima volta ai tag di terze parti. Gli identificatori personali non dovrebbero essere inseriti in esso senza una chiara base giuridica e un meccanismo che rispetti lo stato del consenso, e dovrebbero essere utilizzati identificatori hash o pseudonimi laddove sia richiesto un join. In pratica lo schema è definito da analisi dei dati in collaborazione con i team che lo implementeranno e mantenendolo come parte della definizione di fatto sviluppo del prodotto è ciò che impedisce che la misurazione si degradi silenziosamente a ogni rilascio.