
Trigger analytics e automazione marketing
Identificare trigger comportamentali per attivare campagne marketing in tempo reale.
Cosa imparerai
- Identificare trigger comportamentali con query pre-acquisto e finestre temporali
- Assegnare un punteggio a ogni trigger combinando frequenza, uplift, urgenza e costo
- Misurare la conversione incrementale con holdout e finestre di esclusione
Collegamenti
Trigger analytics e automazione marketing
Questa lezione appartiene al binario ml-tabellare: i trigger si scoprono con query e si valutano con punteggi, non con l’intuito. L’automazione promette di parlare al cliente nel momento giusto; il nostro compito e capire quando quel momento esiste davvero.
Il messaggio giusto, al momento giusto
La trigger analytics decide quale evento comportamentale merita un messaggio immediato e quale produce solo pressione sul cliente. In fondo e una questione di disciplina: non tutto cio che accade merita una notifica.
Il percorso in sei passi
La sequenza va dalla definizione dell’evento al monitoraggio continuo, e ogni passaggio riduce il rischio di trasformare l’automazione in fastidio.
- Definisci evento, finestra temporale, priorita ed esclusioni prima di attivare.
- Stima frequenza del trigger e conversione incrementale con
holdout. - Assegna un punteggio con urgenza,
uplifte costo di invio. - Imposta finestra di esclusione e limite di pressione per utente.
- Invia con dispatcher tracciabile e metrica incrementale dichiarata.
- Monitora tasso di attivazione, falsi positivi e affaticamento e disattiva se il guadagno svanisce.
Tipi di trigger e campagne
I trigger cambiano per segnale, tempestivita e campagna attivata. La tabella raccoglie i tipi piu comuni con finestre operative.
| Trigger | Segnale | Tempestivita | Campagna |
|---|---|---|---|
| Comportamentale | Carrello abbandonato oltre 1 ora | Entro 2 ore | Email reminder con prodotti nel carrello |
| Temporale | 7 giorni dal signup senza attivazione | Entro 24 ore | In-app con tutorial guidato |
| Di valore | LTV predetto sopra soglia VIP | Entro 48 ore | Invito a programma fedelta |
| Di rischio | Probabilita di abbandono oltre 0.7 | Entro 4 ore | Contatto del customer success team |
| Di opportunita | 3 acquisti in 7 giorni | Entro 24 ore | Upsell ad abbonamento annuale |
| Di milestone | 100esimo ordine | Entro 24 ore | Email celebrativa con codice fedelta |
| Di abbandono | Nessun accesso da 14 giorni | Entro 24 ore | Push e email di riattivazione |
Verdetto: dai priorita a carrello abbandonato e segnali ad alta intenzione con finestra breve, perche urgenza e uplift superano il costo di invio.
Trovare candidati con query pre acquisto
Il primo passo cerca quali azioni precedono l’acquisto in modo consistente nelle 24 ore precedenti. La query sotto conta gli utenti per ultimo evento prima dell’acquisto e i minuti medi alla conversione.
WITH purchases AS (
SELECT user_id, MIN(event_time) AS purchase_time
FROM events WHERE event_type = 'purchase'
GROUP BY user_id
),
pre_purchase AS (
SELECT e.user_id, e.event_type, e.event_time,
p.purchase_time,
ROW_NUMBER() OVER (PARTITION BY e.user_id, e.event_type ORDER BY e.event_time DESC) AS rn
FROM events e
JOIN purchases p ON e.user_id = p.user_id
WHERE e.event_time BETWEEN p.purchase_time - INTERVAL '24 hours' AND p.purchase_time
AND e.event_type != 'purchase'
)
SELECT event_type, COUNT(DISTINCT user_id) AS triggered_users,
ROUND(AVG(TIMESTAMP_DIFF(purchase_time, event_time, MINUTE)), 0) AS avg_minutes_to_purchase
FROM pre_purchase WHERE rn = 1
GROUP BY event_type
ORDER BY triggered_users DESC;
Se la visualizzazione ripetuta di un prodotto precede l’acquisto nel 28 per cento dei casi entro 2 ore, il segnale merita un trigger con offerta a intenzione calda.
Dare un punteggio ai candidati
Ogni candidato va valutato su frequenza, uplift, finestra e costo. La funzione sotto combina le quattro dimensioni in un solo numero confrontabile.
def score_trigger(frequency, uplift_vs_baseline, time_window_hours, action_cost):
"""
frequency: % utenti che attivano il trigger in un mese
uplift: aumento conversione rispetto a baseline
time_window: ore entro cui scade l'opportunità
action_cost: € per inviare la campagna
"""
urgency = 1 / max(time_window_hours, 1)
return (frequency * uplift * urgency) / max(action_cost, 0.01)
# Esempio comparativo
triggers = [
("cart_abandoned", 0.15, 3.5, 2, 0.05), # score: 10.5
("7d_no_activation", 0.25, 1.8, 24, 0.02), # score: 0.94
("viewed_3x_30min", 0.08, 4.2, 0.5, 0.08), # score: 8.4
]
for name, freq, uplift, window, cost in triggers:
print(f"{name}: {score_trigger(freq, uplift, window, cost):.1f}")
Nel confronto carrello abbandonato e visualizzazione intensa ottengono il punteggio piu alto per combinazione di urgenza e uplift.
Pipeline real-time e controllo
Il rilevamento passa da stream di eventi a dispatcher verso lo strumento di campagna.
Event Stream (Kafka) → Stream Processor (Flink/ksqlDB) → Trigger Detection → Action Dispatcher → Campaign Tool (Braze)
-- ksqlDB: detect trigger in tempo reale
CREATE STREAM cart_abandoned AS
SELECT user_id, cart_value, items
FROM events
WHERE event_type = 'add_to_cart'
AND TIMESTAMP_DIFF(CURRENT_TIMESTAMP, event_time, MINUTE) > 60
AND user_id NOT IN (
SELECT user_id FROM events
WHERE event_type = 'purchase'
AND event_time > ADD_TO_CART_TIME
);
In produzione sorveglia tasso di attivazione, falsi positivi senza conversione, affaticamento dopo invii ripetuti e minuti mediani dal trigger all’invio.
L’errore del click attribuito
L’errore piu comune e confondere click attribuito con effetto incrementale. Molti utenti avrebbero comprato comunque entro un’ora senza messaggio. Prima di aumentare frequenza o incentivi servono holdout, finestra di esclusione e metrica incrementale, altrimenti l’automazione diventa pressione.
Il caso Netflix
Netflix usa trigger comportamentali documentati per engagement. Il reminder di continuazione invia un link diretto se una serie viene interrotta a meta e non riprende entro 3 giorni. L’avviso di nuova stagione parte via push per serie completate e la homepage si riorganizza quando un utente guarda 3 titoli true crime in una settimana. Dopo 2 settimane senza accessi parte un riepilogo delle novita perse. La societa dichiara che i trigger automatici generano il 75 per cento dell’engagement contro il 25 per cento della navigazione spontanea.
Domande per chiudere la lezione
- Quale holdout dimostra che un trigger crea conversione incrementale?
- Quale finestra di esclusione evita pressione eccessiva sullo stesso utente?
- Quale punteggio confronta frequenza, uplift, urgenza e costo di invio?
- Quando disattiveresti un trigger che genera ancora click?
Bloccato su questo argomento o vuoi applicarlo al tuo caso? Prenota una call di 15 minuti con un analista esperto.
Percorso collegato
Lezioni da leggere insieme
Questi collegamenti portano la lezione dentro il resto del corso: basi da riprendere, passaggi successivi e connessioni tematiche tra moduli.