~/case-studies
BI · Festival
BI de ventas y ticketing en vivo para festival mediano
Decisiones diarias sobre spend y precios con datos cruzados de cuatro canales de venta y tres plataformas publicitarias.
duración · Iteración continua · MVP en 6 semanasequipo · 1 persona (full-stack)
El reto
- ▸Cuatro plataformas de ticketing distintas vendían el mismo evento, cada una con su propio API, formato y latencia.
- ▸Atribuir las ventas reales a campañas publicitarias en Meta, TikTok y GA4 era imposible sin instrumentación server-side.
- ▸Las decisiones de pricing y spend se tomaban a partir de hojas de cálculo que llegaban tarde, mal cuadradas y sin contexto.
- ▸Nadie del equipo financiero podía contestar a tiempo preguntas tipo: "¿cuánto vendimos por canal en este artista la semana pasada?"
La solución
- ▸Pipeline de sincronización en Node.js que normaliza cada API de ticketing en un modelo común (transactions, tickets, channels, attribution).
- ▸Implementación server-side de los píxeles publicitarios (CAPI) con conciliación contra la venta real, no contra el click.
- ▸Dashboard React con +decenas de módulos: ventas por canal, mapas geográficos de origen, comparativas interanuales, forecasting, P&L en vivo y basket analysis.
- ▸Reporting automático diario por email a la dirección con el resumen del día anterior y banderas de alerta.
Stack
ReactNestJSPostgreSQLRedisBullMQStripePixel/CAPI server-sideLeafletPM2
Impacto
- ▸Conciliación contable automatizada, sin discrepancias entre lo que reportan las ticketeras y lo que entra en banco.
- ▸Decisiones de spend publicitario basadas en la venta real, no en clicks. ROAS objetivo más fiable.
- ▸Reporting diario que llega a las 9 AM sin intervención humana. Quien lo abre toma decisiones, no recopila datos.
- ▸Detección temprana de eventos con riesgo de no llegar a aforo, con margen de semanas para corregir.
Aprendizajes
- ▸La parte difícil no es construir el dashboard, es normalizar los datos de las APIs cuando cada una pone los nombres en un sitio.
- ▸CAPI server-side es no negociable. Sin él, las plataformas publicitarias atribuyen lo que les conviene.
- ▸El dashboard que no se mira no sirve. Por eso el reporting diario por email es más importante que el dashboard mismo.