Go to main content
Performance marketing analytics - official lesson image on GinnyTech, created by AD

Performance marketing analytics

Measuring digital marketing campaign performance: metrics, attribution, and optimization.

AD
Created byAndrii Dyshkantiuk
Lesson 43 / 236Level: AdvancedDuration: 22 min

What you will learn

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

Links

Direct entry into the module.

Performance marketing analytics

Il performance marketing sembra il regno della misurabilità e della scalabilità, ma la realtà è più sfumata. Una campagna può apparire efficiente se guardi solo al CPA medio, eppure il risultato peggiora appena aumenti la frequenza, sale la competizione d’asta o entrano ordini a basso margine. La sfida vera è distinguere quando un canale genera crescita sana e quando si limita a comprare conversioni sempre più care.

Real-world problem

Chi deve decidere se scalare, ridurre o ridistribuire il budget affronta un problema concreto: separare il volume di conversioni dalla qualità del cliente, dalla marginalità e dall’incrementalità. La metrica di piattaforma è solo il punto di partenza. Serve un’analisi che colleghi CPA, margine e qualità della conversione per decidere con cognizione di causa.

Conceptual model

Il processo decisionale parte dalla domanda di business e si traduce in un’ipotesi misurabile. Quell’ipotesi ha bisogno di dati affidabili per essere analizzata in modo incrementale, e solo allora porta a una decisione di budget consapevole.

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

Rigorous formalization

La disciplina si descrive come una relazione tra quattro elementi. L’unità di analisi può essere una campagna, una coorte, un touchpoint o un segmento cliente. Il segnale è ciò che misuri davvero: margine incrementale, CAC payback, conversion rate corretto, lift o retention generata. La baseline è il termine di paragone, che sia il periodo precedente, un gruppo holdout, un mercato comparabile o un benchmark storico. La decisione è l’azione che ne consegue, dallo spostare risorse al cambiare messaggio, fermare una tattica o scalare un esperimento.

La regola pratica è che una misura serve a qualcosa solo se riduce l’incertezza su una decisione precisa. Senza quel collegamento, l’analisi rischia di essere semplice documentazione o, peggio, una fonte di errori.

Fundamental Metrics

MetricFormulaWhat it is for
CPA (Cost Per Acquisition)Spend ÷ ConversionsMisura l’efficienza pura
ROAS (Return on Ad Spend)Revenue from ads ÷ Ad spendIndica il ritorno sull’investimento
CTR (Click-Through Rate)Clicks ÷ ImpressionsValuta la rilevanza dell’annuncio
CVR (Conversion Rate)Conversions ÷ ClicksMisura l’efficacia della landing page
CPC (Cost Per Click)Spend ÷ ClicksIndica il costo del traffico
Impression ShareImpressions received ÷ Impressions availableShare of voice

The average CPA mistake

Il CPA medio nasconde variazioni importanti tra segmenti, quindi conviene scomporlo per campagna, keyword, dispositivo, regione e orario. Un CPA medio di 50puoˋnascondere30 può nascondere 30 su mobile e 120$ su desktop. Tagliare il desktop e investire sul mobile può raddoppiare l’efficienza senza spendere un euro in più.

Optimization: it’s not about cutting what costs

Eliminare le keyword con CPA alto senza guardare al valore del cliente è un errore. Serve un CPA target differenziato in base all’LTV stimato. Per il segmento ad alto LTV puoi spingerti fino a 500,perquellomediofinoa200, per quello medio fino a 200, per quello basso fino a 50$.

Approfondimento operativo: leggere l’analisi come sistema

L’analisi non è un esercizio isolato, fa parte di un sistema decisionale più ampio che comprende dati, vincoli tecnici, incentivi e qualità dell’esecuzione. L’errore comune è fermarsi al calcolo delle metriche senza collegarle a decisioni reali. Un buon flusso di lavoro definisce il problema in linguaggio business, individua l’unità di analisi corretta, verifica la qualità e la pertinenza dei dati, costruisce una metrica interpretabile, segmenta per evitare medie fuorvianti e infine trasforma il risultato in una raccomandazione verificabile.

Example or case study

Netflix non si limita a misurare click o visualizzazioni. Guarda segnali di qualità come il completamento degli episodi, il tempo di ricerca, l’abbandono precoce e il ritorno dell’utente. Così evita di ottimizzare metriche superficiali che a lungo termine erodono il valore. Allo stesso modo, il performance marketing deve agganciare le metriche a risultati concreti e decisioni operative.

SQL example: building a control view

Per analizzare il performance marketing in modo sistematico puoi creare una vista che aggrega gli eventi per settimana, segmento e dispositivo, calcolando metriche chiave come il tasso di conversione e l’attività degli utenti. La query seguente è un esempio generico.

WITH base_events AS (
  SELECT
    user_id,
    account_id,
    event_type,
    event_time,
    DATE_TRUNC('week', event_time) AS week,
    source,
    device_type
  FROM events
  WHERE event_time >= CURRENT_DATE - INTERVAL '180 days'
    AND user_id IS NOT NULL
),
weekly_user_metrics AS (
  SELECT
    week,
    user_id,
    COALESCE(source, 'unknown') AS source,
    COALESCE(device_type, 'unknown') AS device_type,
    COUNT(*) AS total_events,
    COUNT(DISTINCT DATE(event_time)) AS active_days,
    COUNT(DISTINCT event_type) AS event_diversity,
    MAX(CASE WHEN event_type IN ('purchase', 'subscribe', 'activation') THEN 1 ELSE 0 END) AS reached_key_outcome
  FROM base_events
  GROUP BY week, user_id, source, device_type
)
SELECT
  week,
  source,
  device_type,
  COUNT(DISTINCT user_id) AS users,
  ROUND(AVG(active_days), 2) AS avg_active_days,
  ROUND(AVG(event_diversity), 2) AS avg_event_diversity,
  ROUND(AVG(reached_key_outcome) * 100, 2) AS key_outcome_rate
FROM weekly_user_metrics
GROUP BY week, source, device_type
ORDER BY week, source, device_type;

Da questa base puoi osservare trend, segmenti e differenze tra canali, e partire da lì per ipotesi più precise.

Python example: checking stability and anomalies

Una metrica utile deve essere stabile e sensibile insieme. Per non reagire a oscillazioni casuali puoi individuare le anomalie statistiche settimana su settimana.

import pandas as pd

df = df.sort_values(['segment', 'week']).copy()
df['previous_rate'] = df.groupby('segment')['key_outcome_rate'].shift(1)
df['wow_change_pp'] = df['key_outcome_rate'] - df['previous_rate']
df['rolling_mean'] = df.groupby('segment')['key_outcome_rate'].transform(lambda s: s.rolling(4, min_periods=2).mean())
df['rolling_std'] = df.groupby('segment')['key_outcome_rate'].transform(lambda s: s.rolling(4, min_periods=2).std())
df['z_score'] = (df['key_outcome_rate'] - df['rolling_mean']) / df['rolling_std']

anomalies = df[df['z_score'].abs() >= 2].sort_values('z_score')
print(anomalies[['week', 'segment', 'key_outcome_rate', 'wow_change_pp', 'z_score']])

Questo metodo segnala le variazioni che meritano un approfondimento ed evita le reazioni impulsive.

Errori tipici da evitare

Tre errori ricorrono spesso. Il primo è usare dati troppo aggregati che nascondono pattern opposti. Il secondo è non verificare la qualità dei dati, lasciando passare duplicati, tracking incompleto e timezone sbagliate. Il terzo è confondere correlazione e causalità. Ogni analisi dovrebbe includere almeno tre controlli: una definizione esplicita della metrica, un confronto per segmento e una verifica contro baseline o gruppo di controllo.

Lab / exercise

Basic level

Scrivi la decisione che questa lezione dovrebbe migliorare, la metrica principale e il rischio da controllare.

Intermediate level

Costruisci una tabella con baseline, segnale, interpretazione prudente e azione consigliata.

Research-grade level

Trasforma l’esercizio in un memo decisionale con assunzioni, limiti, criterio di stop e controllo successivo.

Recommended datasets and materials

Usa un export reale, un dataset sintetico o una dashboard già esistente. Il materiale deve contenere una domanda, una metrica e una scelta da prendere.

Typical mistake to avoid

L’errore più comune è trattare il risultato come una verità generale invece che come evidenza condizionata. Prima di agire, controlla baseline, assunzioni e costo dell’errore.

Quiz or checkpoint

  1. Quale decisione concreta migliora questa analisi?
  2. Which baseline makes the result interpretable?
  3. Which assumption, if wrong, would change the conclusion?
  4. Quale controllo minimo eseguiresti prima di raccomandare un’azione?

Il performance marketing analytics serve a prendere decisioni sotto incertezza. Conoscere le metriche non basta: vanno collegate a problemi concreti, a dati di qualità, alla segmentazione e ad azioni verificabili. Solo così l’analisi diventa competenza operativa invece che decorazione.