Saltar al contenido
dumaloor.dev_
~/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.