Go to main content
End-to-end analysis with UTM and campaign parameters - official lesson image on GinnyTech, created by AD

End-to-end analysis with UTM and campaign parameters

Design a robust UTM strategy to track end-to-end campaigns from click to revenue.

AD
Created byAndrii Dyshkantiuk
Lesson 61 / 236Level: AdvancedDuration: 22 minPrerequisites: 1

What you will learn

  • Understand the analytical problem and the decision-making context
  • Apply examples, metrics, and controls to real cases

End-to-end analysis with UTM and campaign parameters

Nel marketing digitale, un report vale per quanto racconta fedelmente il percorso dell’utente. Spesso però i dati UTM sono incoerenti: sorgenti duplicate, campagne rinominate a metà strada, parametri mancanti. Prima ancora di discutere di ROAS o di altri KPI serve una disciplina rigorosa per nominare, normalizzare e riconciliare il traffico, altrimenti ogni numero a valle eredita lo stesso disordine.

Il problema da cui partire

Il problema concreto è trasformare budget, canali, creatività e audience in decisioni misurabili, senza confondere volume, attribuzione e incrementalità. Molte analisi falliscono perché il dato di partenza non rappresenta davvero il comportamento che si vuole osservare. La domanda non è se il concetto sia interessante in astratto, ma quale decisione migliora applicandolo con dati affidabili e con una soglia di errore dichiarata in anticipo.

Come ragionare sull’analisi

Il ragionamento è sequenziale: si formula una domanda di business, la si traduce in un’ipotesi misurabile, si valuta la qualità del dato e solo alla fine si decide. Saltare un passaggio produce analisi eleganti ma fragili.

flowchart LR
    A[Domanda di business]
    B[Ipotesi misurabile]
    C[Dato affidabile]
    D[Analisi incrementale]
    E[Decisione di budget]
    A --> B
    B --> C
    C --> D
    D --> E
StepGuiding questionExpected output
FramingWhich decision needs to change?A concrete choice, not a curiosity
MeasureWhich signal represents the phenomenon?Metric, source, and granularity
ComparisonCompared to which baseline do I interpret the result?Benchmark or plausible counterfactual
ActionWhat do I do if the signal exceeds the threshold?Decision, owner, and next check

Rendere l’analisi formale

L’analisi end-to-end con UTM si lascia formalizzare come una relazione tra unità di analisi, segnale, baseline e decisione:

ElementOperational Definition
Unitcampaign, cohort, touchpoint, or customer segment
Signalmargine incrementale, CAC payback, conversion rate corretto, lift o retention
Baselineprevious period, holdout group, comparable market, or historical benchmark
Decisionspostare risorse, cambiare messaggio, fermare una tattica, scalare un esperimento
Riskconfusing correlation, data quality, and causal decision-making

Una misura è utile solo se riduce l’incertezza su una decisione specifica. Se non cambia una scelta è documentazione; se cambia una scelta senza controlli è rischio.

I cinque parametri UTM e la tassonomia

Perché i dati siano affidabili, i parametri UTM devono seguire una tassonomia centralizzata e standardizzata:

ParameterMeaningRequiredExampleDefault values
utm_sourcePiattaforma o sito origineYesgoogle, facebooklista chiusa
utm_mediumMarketing channelYescpc, social, emaillista chiusa
utm_campaignSpecific campaignYesblack_friday_2024formato tema_anno o quarter_iniziativa
utm_contentCreative variantNocta_button_Aper A/B test
utm_termKeyword (search ads)Nodata+analytics+coursesolo search

Implementation rules

La tassonomia va centralizzata in un documento condiviso che fissa i valori consentiti, e l’URL Builder deve essere obbligatorio con validazione automatica. Conviene standardizzare tutto in lowercase per evitare duplicazioni, non inserire mai dati personali nei parametri ed evitare gli spazi usando trattini o underscore.

Un esempio di validatore UTM in JavaScript:

const VALID_SOURCES = ['google', 'facebook', 'instagram', 'linkedin', 'twitter', 'tiktok'];
const VALID_MEDIUMS = ['cpc', 'social', 'email', 'display', 'affiliate', 'referral'];

function validateUTM(url) {
  const params = new URLSearchParams(new URL(url).search);
  const errors = [];
  if (!VALID_SOURCES.includes(params.get('utm_source'))) errors.push('Invalid utm_source');
  if (!VALID_MEDIUMS.includes(params.get('utm_medium'))) errors.push('Invalid utm_medium');
  if (!params.get('utm_campaign')) errors.push('utm_campaign is required');
  return errors;
}

Track the first UTM in the customer journey

Salvare nel data warehouse il primo UTM di ogni utente conta perché permette di attribuire correttamente il CAC e di capire il percorso di acquisizione, anche quando poi l’utente torna più volte via direct.

INSERT INTO customer_acquisition (customer_id, first_source, first_medium, first_campaign, first_touch_date)
SELECT user_pseudo_id AS customer_id,
       FIRST_VALUE(traffic_source.source) OVER (PARTITION BY user_pseudo_id ORDER BY event_timestamp) AS first_source,
       FIRST_VALUE(traffic_source.medium) OVER (PARTITION BY user_pseudo_id ORDER BY event_timestamp) AS first_medium,
       FIRST_VALUE(traffic_source.name) OVER (PARTITION BY user_pseudo_id ORDER BY event_timestamp) AS first_campaign,
       MIN(TIMESTAMP_MICROS(event_timestamp)) OVER (PARTITION BY user_pseudo_id) AS first_touch
FROM `project.analytics.events_*`
WHERE event_name IN ('first_visit', 'session_start')
QUALIFY ROW_NUMBER() OVER (PARTITION BY user_pseudo_id ORDER BY event_timestamp) = 1;

UTM quality dashboard

Tenere d’occhio la quota di traffico con UTM mancanti o invalidi è essenziale. L’obiettivo è mantenere sotto il 5% il traffico senza UTM validi, perché ogni punto percentuale in più significa dati persi e decisioni prese al buio.

SELECT DATE_TRUNC('month', session_date) AS month,
       COUNT(*) AS total_sessions,
       SUM(CASE WHEN utm_source IS NULL OR utm_source = '(not set)' THEN 1 ELSE 0 END) AS missing_utm,
       ROUND(SUM(CASE WHEN utm_source IS NULL OR utm_source='(not set)' THEN 1 ELSE 0 END)*100.0/COUNT(*), 1) AS missing_pct
FROM sessions
GROUP BY month
ORDER BY month DESC;

Caso reale: la strategia UTM di N26

N26 ha scoperto che il 34% del traffico paid non era tracciabile. Ha costruito un Campaign URL Builder interno che obbliga a seguire la tassonomia e valida ogni URL. Dopo sei mesi il traffico non tracciabile è sceso sotto il 3% e l’accuratezza dell’attribuzione è migliorata del 40%.

Quality control

Prima di prendere decisioni a partire da un’analisi end-to-end con UTM, verifica completezza, duplicati, timezone, cambi di definizione e segmenti esclusi. Molte analisi falliscono perché il dato misura un comportamento diverso da quello che si crede di stare osservando.

Interpretation by segments

La media aggregata è solo un punto di partenza. Segmenta per canale, coorte, piano, paese, device e maturità utente. Quando i segmenti si muovono in direzioni opposte, la media può ingannare e portare a decisioni sbagliate.

Un caso pratico di budget

Un team growth deve decidere se aumentare il budget su un canale con CPA basso ma vendite marginali deboli. Separando segnale e rumore, e collegando metrica, modello mentale e decisione economica, costruisce una lettura su tre colonne:

EvidencePrudent interpretationDecision
Positive signal but not isolatedFenomeno esiste ma causa incertaLook for baseline or holdout
Segment with different responseAverage effect hides heterogeneityAnalyze cohorts or subgroups
Increasing operating costEvaluate on the marginApply economic thresholds

Esercitarsi sull’analisi

Si parte da cinque righe che fissano obiettivo, metrica primaria, baseline, rischio principale e azione prevista per una decisione reale collegata a questa analisi. Poi si costruisce una tabella con almeno tre segmenti o scenari, indicando per ciascuno il segnale, una possibile spiegazione alternativa e il controllo necessario.

Il livello più avanzato è un piano di validazione completo: ipotesi, dati, criteri di esclusione, soglia decisionale e controllo post-decisione, con l’esplicito di cosa ti farebbe cambiare idea. Come materiale conviene usare export campagne, costi media, eventi web e app, CRM, transazioni, survey brand e log del consenso; in mancanza di dati reali basta un dataset sintetico di 200-500 righe con almeno una colonna temporale, una di segmento, una metrica di outcome e una variabile di esposizione.

L’errore tipico da evitare

L’errore tipico è trattare questa analisi come una definizione da ricordare invece che come un protocollo decisionale. Presentare metriche senza baseline, grafici senza ipotesi o raccomandazioni senza il costo dell’errore porta a decisioni fragili. Chiediti sempre: “Se questo risultato fosse falso, quale decisione sbaglierei?”.

Domande per mettersi alla prova

Vale la pena fermarsi su quattro domande. Qual è la decisione concreta che questa analisi dovrebbe migliorare? Quale baseline rende interpretabile il risultato? Quale assunzione, se sbagliata, cambierebbe la conclusione? E quale controllo minimo useresti prima di presentare la raccomandazione?

Operational Summary

L’analisi end-to-end con UTM è utile quando collega concetto, dato e decisione. La si studia partendo da un problema reale, formalizzando il segnale, cercando una baseline credibile, costruendo un esempio e chiudendo con un controllo pratico. Solo a quel punto diventa competenza e non solo conoscenza.

Practice deep dive

Trattala come una prova di lavoro dentro una review marketing, con budget, canali, tracking e marginalità da riconciliare. Produci un memo che collega canale, metrica, segmento, costo e raccomandazione. Questo rende la conoscenza trasferibile, perché tiene distinti contesto, misura, azione e limite.

Per costruire l’esempio, parti da una domanda concreta, cioè quale scelta migliorerebbe applicando bene questa analisi, e scrivi tre righe: contesto, dato o modello usato e decisione dopo aver controllato i rischi.

Un checkpoint utile prima di chiudere il memo: scrivi la decisione che questa analisi dovrebbe migliorare con un verbo operativo, definisci il segnale principale insieme ad almeno un guardrail, aggiungi una baseline, esplicita il rischio più probabile e chiudi con un output consegnabile, che sia una dashboard, una query, un memo o un esperimento.

Avrai assimilato l’analisi quando riesci a spiegare il concetto senza gergo, ad applicarlo a un caso realistico e a difendere una raccomandazione con i suoi limiti e controlli. Se manca uno di questi, conviene tornare al modello di ragionamento e ridurre l’ambizione dell’esempio.