¿Puedo confiar en el algoritmo de Meta? Una auditoría de $383K.

Soy Samet Durgun, fractional Head of UA. Llevo el paid UA de apps de suscripción y juegos móviles, y aquí escribo lo que veo en las cuentas que manejo. Este artículo pertenece al tema Paid UA para apps de suscripción; más sobre mí.

Audité $383K de gasto de Meta tROAS país por país. El 7% había estado fallando en la métrica exacta que el algoritmo optimiza y fue difícil detectarlo.

En algún lugar dentro de una campaña que estaba cumpliendo su target de tROAS, un país había estado corriendo a 28% de All ROAS durante tres meses. Así que descubrir que el algoritmo claramente estaba flojeando fue un shock para mí. El target era 70%, ningún dashboard lo señaló, pero lo encontré porque fui a buscarlo.

Esta es la historia de esa auditoría, y el framework de puntuación que salió de ella.

El setup

Una subscription app en Meta. Cinco campañas tROAS divididas por plataforma y tier geográfico. Del 1 de marzo al 29 de mayo. $383K de gasto en más de 200 países con bastantes ad sets.

Un vocabulario rápido para que leamos los mismos números de la misma forma. tROAS significa que Meta puja hacia un target de ROAS total. Ese target es la descripción del trabajo del algoritmo. D0 ROAS es nuestra señal temprana. En esta app, la mayor parte del revenue inicial cae el día de la instalación, así que D0 te dice rápido si una cohorte tiene sentido. Cuando lo probé en otras 38 campañas de Meta, el ROAS de day 0 predijo el ROAS D28 mejor que el CPA.

Las campañas se juzgaban de la forma en que se juzga la mayoría de las campañas, por blended ROAS contra target. Ese número se veía en línea todo el trimestre.

Un número blended lo esconde todo

La campaña Tier1 iOS de ese periodo tenía un D0 blended de 26%. Adentro:

PaísD0 ROASAll ROASQué estaba pasando
Francia49%66%Fuerte, pero el All ROAS pasó de 57% a 40% durante el trimestre
EE. UU.23%62%Por debajo del target, y el que más gasta en la campaña con $49K
Alemania16%31%Por debajo del target durante tres meses seguidos. Sin avanzar

El D0 blended dice 26%. Los países adentro dicen otra cosa.

Tres situaciones completamente distintas. Un número blended. Y la parte difícil de aceptar es que el algoritmo no parecía darse cuenta.

Por qué el algoritmo podría no haber arreglado esto

tROAS responde a un único target blended, un promedio entre todos los países que targetea un ad set. Meta puede usar la ubicación al pujar, pero nada en el target le pide mantener cada país en 70%.

Así que un país malo se esconde dentro de una campaña que se ve bien en blended. Ese país corriendo a 28% de All ROAS mientras su campaña marcaba 70% estaba fallando en la métrica exacta que se le pidió al algoritmo optimizar. No un proxy. El target real. El D0 lo señaló temprano, el All ROAS lo confirmó, y el número a nivel de campaña nunca se inmutó.

Los países buenos subsidian a los malos. El blend se mantiene mediocre, y lo mediocre parece negocio como siempre.

Esto no es cuestionar al algoritmo. El algoritmo responde a un solo número blended, nunca a uno por país, así que cubrir los países manualmente te toca a ti. Para que quede constancia, otros desgloses posibles como edad o género se veían muy normales y esperados, así que esto me tomó por sorpresa.

El framework: dos métricas, tres colores, tres grupos

Usé este sistema de puntuación para separar lo que se mantiene de lo que se corta. Corre sobre un export de breakdown por país y toma cerca de treinta minutos al mes.

Paso 1: puntúa cada métrica de forma independiente

Cada país recibe dos calificaciones, una para D0 ROAS y otra para All ROAS, cada una calificada verde, amarillo, o rojo contra bandas construidas a partir del target de la campaña. Las bandas de esta app venían de su target de tROAS del 70%. El All ROAS verde empieza en el target, y las bandas de D0 vienen de lo que históricamente se corresponde con alcanzarlo. Toma prestada la estructura. Los números los derivas tú mismo, a partir de tu propio target y tu propia curva de D0 a All.

D0 te da la señal inicial que reviso. All ROAS te da la verdad, que es lo que la campaña está optimizando. Aquí All ROAS significa el ROAS de compra que reporta Meta dentro de la ventana de atribución de la campaña. Un país en 25% de D0 y 80% de All es un animal distinto a uno en 25% de D0 y 30% de All, y una sola métrica los mezclaría a los dos.

Paso 2: combina en tres grupos

El verde puntúa 2, el amarillo 1, el rojo 0. Suma ambas métricas.

Suma de ambas puntuaciones Grupo Qué hacer
3 o 4 Bien Mantener, no tocar
2 Vigilar Revisar mensualmente
1 o 0 Excluir El algoritmo no lo va a arreglar, porque el target blended sigue viéndose bien

Paso 3: añade la dimensión temporal

Los promedios esconden la dirección. Dos países pueden llevar el mismo veredicto trimestral y estar moviéndose en direcciones opuestas.

PH en la campaña worldwide bajó de 33% a 24% a 17% de D0, con All ROAS en 28% en un mes en que la campaña alcanzó 70%. GB cayó a 17% en abril y volvió a 29% en mayo, con el All ROAS rondando cerca del target todo el tiempo. Mismo veredicto agregado. Trayectorias opuestas. La vista mensual te dice cuál merece paciencia.

Paso 4: actúa en consecuencia

Excluye los que dieron rojo en las dos métricas y se mantuvieron en rojo durante tres meses con gasto significativo detrás. Con más de 200 países, algunos van a verse en rojo por azar, por eso espero tres meses. Fija un piso de gasto antes de juzgar cualquier cosa, porque un país con $80 detrás tiene un ROAS ruidoso, no un veredicto. Revisé la misma pregunta para anuncios, y en una cuenta el ROAS predijo mejor la semana siguiente desde 50 compras por anuncio. Pon a los amarillos en lista de vigilancia y revísalos mensualmente. Deja tranquilos a los Bien. Después de una exclusión, evalúa toda la campaña al mes siguiente por su ROAS blended y su volumen, porque el presupuesto se mueve a otros países.

Lo que salió a la luz

Nada de esto es visible a nivel de campaña.

El 46% del gasto se calificó Bien. El 47% se calificó Vigilar. Y el 7%, o $27,6K en 17 combinaciones de país y campaña, tuvo ambas métricas en rojo durante tres meses seguidos. Los tres más grandes: PH en la campaña worldwide ($7,1K al 21% de D0), MX en Android ($6,2K al 23%), DE en Tier1 ($2,1K al 16%).

Esos $27,6K se quedan estacionados donde están hasta que alguien los revisa manualmente. Ninguna alerta se dispara. Nada se pone en rojo en Ads Manager. La vista de campaña decía que todo estaba bien mientras esto pasaba. Si no tienes claro si tu target blended esconde un país así, el growth audit es donde lo reviso en una cuenta, y se puede reservar por separado, con cualquier nivel de gasto.

Excluir esos países tampoco te devuelve los $27,6K. El gasto se mueve a otros geos, y los costos y el volumen ahí se mueven con él.

Lo que me llevo

El algoritmo es bueno encontrando compradores. No es bueno abandonando geos que dejaron de convertir. Vi lo mismo con anuncios, donde Meta siguió escalando cinco anuncios que nunca alcanzaron el target de D0.

Todo el sistema cabe en cuatro líneas:

  • Dos métricas: D0 para la velocidad, All ROAS para la verdad.
  • Tres colores por métrica, puntuados contra tu propio target.
  • Tres grupos: mantener, revisar mensualmente, excluir.
  • Un recordatorio en el calendario. Mensual.

Si prefieres que un segundo par de ojos corra esta auditoría en tu cuenta, mi bandeja de entrada está abierta.