Vai al contenuto
SwankyForge
SwankyForge
Tutti i case study
Product analyticsSperimentazionePersonalizzazione6 mesi

Masters

Quattro strumenti di analytics davano numeri diversi sulle stesse cose. Ora c'è un unico set di cui tutti si fidano.

CTR delle offerte

6.4%

Offerte ordinate con controlli sperimentali

Prima

4.5%

Regole statiche, stessa offerta per tutti

In parole semplici

Di cosa si tratta.

Niente gergo in questa sezione. La descrizione tecnica è più in basso.

Cosa non funzionava

L'azienda lavorava su quattro piattaforme diverse che contavano gli utenti ciascuna a modo suo, così due dashboard potevano differire di un quinto e nessuno sapeva dire quale fosse giusta. Le decisioni di prodotto si discutevano invece di misurarle.

Cosa abbiamo costruito

Abbiamo concordato con product, growth e finance insieme un'unica definizione per ogni numero importante, abbiamo ricostruito il reporting su quelle definizioni e aggiunto i controlli necessari per testare correttamente le modifiche.

Cosa è cambiato

Un unico set di numeri condiviso, nove test in parallelo invece di due, e le discussioni sull'attribuzione fuori dall'ordine del giorno delle riunioni. La quota di persone che cliccano su un'offerta è passata dal 4,5% al 6,4%.

Architettura

Come si incastrano le parti.

Scorra le fasi. Tutto ciò che è contrassegnato come aggiunto è un componente che non esisteva prima di questo progetto.

VALIDAZIONEFEATURESERVINGSDK client4 PIATTAFORMEKafkaCONTRATTIClickHouseRAW + MARTmetriche dbtGOVERNATOLightGBMRANKING OFFERTEEsperimentiLIFT + BIAS
  1. SDK client

    4 piattaforme

    alimenta
    Kafkavalidazione
  2. Kafka

    contratti

    riceve da
    SDK clientvalidazione
    alimenta
    ClickHouse
  3. ClickHouse

    raw + mart

    riceve da
    Kafka
    alimenta
    metriche dbt
  4. metriche dbt

    governato

    L'abbiamo aggiunto noi
    riceve da
    ClickHouse
    alimenta
    LightGBMfeature
  5. LightGBM

    ranking offerte

    L'abbiamo aggiunto noi
    riceve da
    metriche dbtfeature
    alimenta
    Esperimentiserving
  6. Esperimenti

    lift + bias

    L'abbiamo aggiunto noi
    riceve da
    LightGBMserving
La descrizione

Come verrebbe costruito.

Dataset, approccio, metriche obiettivo e stack. Scritto per chi dovrà esaminarlo.

Product analyticsSperimentazionePersonalizzazione6 mesi

Masters

Analytics e personalizzazione unificate, così i team eseguono esperimenti affidabili e si muovono più rapidamente.

Problema

Quattro piattaforme emettevano schemi di eventi incompatibili, così nessuno riusciva a concordare su cosa fosse un utente trattenuto. Le decisioni di prodotto venivano prese su dashboard che differivano tra loro fino al 20%.

Dataset

righe
412M eventi
feature
86
fonti
iOS, Android, Web, CRM
finestra
24 mesi

Approccio

  1. 01Definita un'unica tassonomia degli eventi con contratti di tracking verificati in CI
  2. 02Tutte le fonti portate in streaming in un unico warehouse con identity stitching
  3. 03Costruite viste di coorte e di retention su un metrics layer governato
  4. 04Rilasciato un modello di ranking delle offerte dietro un framework di sperimentazione

Metriche

0.87
AUC del ranking
+0.11
6.4%
CTR delle offerte
+1.9pp
<1%
drift delle metriche
tra i team
340ms
query p95
-2.1s

Evidenza

fonte
Reference design
numeri
Illustrativo: valori tipici per questo design
misurazione
Non misurato. Valori tipici per un progetto di riferimento di questo tipo, non osservati su un sistema di un cliente.
referenza
Non disponibile per questo progetto
ultima revisione
2026-08-25

Impatto sul business

  • Un'unica definizione dei KPI condivisa tra product, growth e finance
  • Velocità di sperimentazione salita da 2 a 9 test in parallelo
  • Le dispute sull'attribuzione non sono più un tema ricorrente delle riunioni

Stack tecnologico

  • Python
  • ClickHouse
  • Apache Kafka
  • dbt
  • Airflow
  • FastAPI
  • LightGBM
  • Metabase

Prossimo passo

Le serve un sistema come questo?

Risponda a sei domande e le diremo se questa struttura si adatta al suo problema, anche quando non è così.