Prototipo validado · TFM 2026 · en colaboración con hipto

Detecta la fatiga creativa
3 días antes de que queme presupuesto

Fatigue Radar puntúa cada anuncio de Meta Ads con un Fatigue Score 0–1, prioriza las alertas que importan y las traduce a euros. Validado sobre datos reales de campañas de la vertical Energía.

Precisión en el top‑10 de alertas
80%
Impacto neto en 3 meses de test
+8.579 €
Proyección anual vs regla manual
≈80.000 €
Vida útil mediana de una creatividad
7 días
El problema

Cada creatividad tiene fecha de caducidad. Nadie la ve venir.

En Meta Ads toda creatividad se quema: el público la ve demasiadas veces, el CTR cae, el CPM sube y el coste por lead se dispara. Cuando el media buyer lo detecta, ya lleva días pagando por un anuncio agotado.

La alternativa habitual —una regla manual tipo «si el CTR cae un 15 %, alerta»— tampoco funciona: sobre‑reacciona. Pausa creatividades sanas, satura al equipo de avisos y convierte el ahorro en pérdida.

Y el margen de maniobra es corto: la mitad de las creatividades se fatiga en solo 7 días.

Detección tardía

La señal llega cuando la degradación ya es severa y el presupuesto está gastado.

Falsas alarmas en cadena

La regla manual emite 357 alertas en 3 meses con solo un 31 % de acierto.

Coste real: −32.808 €

Es el impacto neto de la regla manual en el periodo de test. Cada falsa alarma pausa un anuncio que funcionaba.

La solución

Un Fatigue Score predictivo, explicable y accionable

El modelo no persigue el CTR absoluto: aprende la degradación futura de cada anuncio y la convierte en un score de 0 a 1 que cualquier media buyer puede leer de un vistazo.

Predice el CTR futuro

Con 33 señales por anuncio y día —tendencias de CTR, frecuencia, CPM, gasto acumulado— estima el rendimiento de los próximos 2‑3 días. R² de 0,78 en test.

Mide la degradación

Compara la predicción con la media de los últimos 7 días del propio anuncio: cuánto va a caer respecto a su baseline, no respecto a la cuenta.

Emite la alerta

La degradación se normaliza a un Fatigue Score 0–1. Por encima del umbral —elegido por euros netos, no por métricas abstractas— salta una alerta explicada con SHAP.

Resultados del modelo

Validado en 3 meses de datos que nunca vio

Split temporal estricto: el test son los últimos 3 meses, posteriores a todo el entrenamiento. Intervalos de confianza por bootstrap.

80% Precision@10 8 de cada 10 alertas prioritarias son fatiga real
0,74 Spearman · Fatigue Score IC 95 % [0,71 – 0,77] · ordena bien el riesgo
0,55 R² · Fatigue Score IC 95 % [0,47 – 0,61]
0,78 R² · CTR futuro IC 95 % [0,74 – 0,82]
Impacto en negocio

El modelo gana dinero. La regla manual lo destruye.

Impacto neto = gasto evitado en anuncios fatigados − gasto de las falsas alarmas. Mismo periodo de test, misma vertical, horizonte de 3 días por alerta.

Fatigue Radar · umbral óptimo 0,45 +8.579 € 108 alertas · 13.070 € evitados · 4.490 € en falsas alarmas Precisión 0,68 · Recall 0,61
Fatigue Radar · umbral conservador 0,50 +7.004 € 84 alertas · 10.016 € evitados · 3.013 € en falsas alarmas Precisión 0,73 · Recall 0,51
Regla manual · CTR −15 % vs 7 días −32.808 € 357 alertas · 52.995 € malgastados en falsas alarmas Precisión 0,31 · Recall 0,92 — lo captura todo, lo daña todo
Curvas de ahorro neto acumulado día a día: el sistema de machine learning crece en positivo mientras la regla manual acumula pérdidas
Simulación día a día durante el test: el ahorro del sistema crece de forma sostenida; la regla manual acumula pérdidas desde la primera semana.

Extrapolando la simulación (62 días de test) a un año: ≈ 80.000 € de diferencia anual frente a la regla manual, en una sola vertical. Es una proyección, no una promesa — pero la dirección es inequívoca.

El producto

El recomendador ya está integrado en la web

No hace falta Streamlit ni instalar nada: abre el recomendador, elige un día del test set, ajusta el umbral y obtén ranking de alertas, detalle por anuncio con SHAP y acciones recomendadas. Usa las predicciones reales exportadas del pipeline LGBM Residual.

Abrir Fatigue Radar →

67 anuncios · 62 días de test · explicaciones SHAP · sin conexión live a Meta Ads

Fatigue Radar · Recomendador Test set · predicciones reales
  • 🔴 Rotar ya Video_Testimonio_A · FS 0,78 · −38 % CTR prev. · 123 € en riesgo
  • 🟠 Preparar sustituta Estatico_Precio_B · FS 0,62 · −24 % · 105 €
  • 🟡 Monitorizar Video_UGC_D · FS 0,38 · −9 % · 156 €

Pulsa para abrir el recomendador completo →

Ranking accionable

Semáforo sano / vigilar / riesgo / crítico. Lo urgente, arriba; lo sano, fuera de la vista.

Umbral en euros

La sensibilidad se calibra por impacto neto, y el equipo puede ajustarla según su capacidad de rotación.

Alertas explicadas

Cada alerta dice por qué: frecuencia, tendencia, antigüedad. SHAP traducido a lenguaje de negocio.

Impacto visible

Presupuesto protegido por alerta y ahorro acumulado frente a la regla manual.

Robustez

Un modelo diseñado para desconfiar de sí mismo

Antes de fiarnos de una métrica puntual, la sometimos a validación temporal, remuestreo y análisis de supervivencia.

Métricas del modelo en cinco ventanas temporales consecutivas de backtesting
Backtesting rolling‑origin: Spearman 0,75 ± 0,02 en 5 ventanas. El rendimiento no depende de haber elegido un periodo afortunado.
Intervalos de confianza bootstrap al 95 por ciento de las métricas de test
Intervalos de confianza bootstrap (95 %): las métricas se sostienen al remuestrear el test, no son un golpe de suerte.
Gráfico SHAP waterfall que descompone la predicción de la alerta principal en contribuciones por variable
SHAP local: cada alerta se descompone en las señales que la provocan. Nada de caja negra frente al equipo de negocio.
Curvas de supervivencia Kaplan-Meier del tiempo hasta la fatiga por tipo y ángulo creativo
Supervivencia Kaplan‑Meier: la mitad de las creatividades se fatiga en 7 días, y la vida útil varía según el ángulo creativo.
33features · target encoding, sin SMOTE
14.225observaciones anuncio × día
5modelos comparados + ablación de features
0decisiones tomadas mirando el test

¿Quieres verlo por dentro?

Código, notebooks y dashboard completo, con cada decisión metodológica documentada.

Tras re-ejecutar el pipeline, actualiza los datos con python scripts/build_radar_data.py