facebookRetention-1

El problema de calcular el n day retention

De todas las fases del ciclo de vida del usuario, la retención es probablemente la medida más importante para aplicaciones gratuitas y juegos free to play. La retención es de hecho un factor directo en el cálculo del life time value (LTV) de los usuarios adquiridos. Por ejemplo, las métricas de retención tempranas como el Día 3 de retención pueden servir como indicadores para evaluar la calidad de tráfico para las campañas de adquisición usuario ROI positivo. Además, la retención es también un fuerte indicador de la calidad general de la aplicación y su experiencia de usuario.

Sin embargo la retención ha sido para los desarrolladores de aplicaciones un problema. Todo el mundo habla de ello, pero parece que hay un consenso claro sobre una definición común de lo que realmente significa la retención ni cómo se calcula realmente ...

La verdad es que hay varias maneras de calcular este indicador, los cuales conducen a una variedad de resultados diferentes. A su vez, las personas suelen comparar manzanas con naranjas tan doens't tiene ningún sentido ...

No vamos hablar sobre qué definición es la correcta, pues esa pregunta puede que no tenga respuesta. En vez de eso miraremos de establecer una lista de los principales métodos de cálculo de retención, y echar un vistazo a las características de cada uno. No habrá un método mejor que el otro, simplemente son adecuados para diferentes objetivos analíticos y cuestiones de eficiencia.

Definición general

En términos generales, todas las métricas de retención se puede calcular de la siguiente manera:

\mathrm{nDayRetention}=\frac{Number\ of \ user\ retained\ on\ day\ n}{Number\ of\ users\ that\ installed\ the\ app\ on\ day\ 0}

El problema es que el numerador de la ecuación anterior puede tener varias definiciones. Vamos a ver cada una de ellas y el el problema que conlleva cada una de ellas. Vamos a comparar para cada uno de los siguientes métodos del ejemplo de la computación del 30 day retention.

Diferentes formas de calcular la retención

Vamos a ver los diferentes enfoques y ejemplos para entender cada uno de los tipos de retención. Para ello utilizaremos dos iconos importantes:

  • tickIndica como mínimo los días en los que el usuario necesita abrir la app para ser considerado retenido.
  • tickEjemplo de un día en el que, el usuario no se considera retenido a pesar de abrir la app.

1. Full n-day retention

  • Cálculo: se obtiene calculando la proporción de usuarios que vuelven cada día a la app hasta el día n. 
  • Cuando usarlo:  esta definición es muy restrictiva y no es usada demasiado por las empresas, pero da una idea bastante buena del nivel de engagement de la app.
  • Almacenamiento de datos: para calcularlo, se deben guardar todos los días que el usuario vuelve a la app. Si un usuario ha vuelto todos y cada uno de los días entre el día 0 y el día n, entonces se considera que el usuario ha sido retenido por n días.
  • Ejemplo con el 30-day: solamente los usuarios que se logean todos y cada uno de los días entre su fecha de registro y el día 30 se consideran retenidos para este modelo.
Full retention

Full retention

2. Classical n-day retention

  • Cálculo: se calcula como la proporción de usuarios que vuelven a la app exactamente en el día n.
  • Cuando usarlo: es la más sencilla de calcular analíticamente y una de las más usadas por las empresas. Da una idea general del engagement de la app.
  • Almacenamiento de datos: para calcularse,  la empresa debe guardar todos y cada uno de los días que el usuario vuelve a la app. Si el usuario ha vuelto exactamente en el día n, entonces se considera que el usuario se ha retenido por n días.
  • Ejemplo con el 30-day: sólo los usuarios que vuelvan exactamente en el día 30 se consideran retenidos. No importa el comportamiento de los usuarios en los 29 días precedentes o posteriores.
Classical Retention

Classical Retention

3. Not yet churned n-day retention

  • Cálculo es la proporción de usuarios que vuelven a la app en el día n o después de ese día.
  • Cuando usarlo: es de las definiciones más comunes en las apps de business intelligence como por ejemplo Flurry, y se basa en centrarse en el ratio de pérdida de usuarios en lugar de en los retenidos (i.e. usuarios que han abandonado totalmente la app sin expectativas de que vuelva). De hecho, con este enfoque, el n-day retention, no es más que 1- n-day churn rate
  • Almacenamiento de datos: para calcularlo, la empresa le basta con guardar la fecha de registro así como la del último login. De este modo, el n-day retention se calcula contando los usuarios cuya diferencia entre fecha de registro y de último login es superior o igual a n.
  • Ejemplo con el 30-day: solamente usuarios que vuelvan exactamente del día 30 en adelante (por ejemplo el día 60) se consideran retenidos para este modelo, sin contar lo que hicieran en los primeros 29 días.
Not yet churned retention

Not yet churned retention

4. Return n-day retention

  • Cálculo es la proporción de usuarios que vuelven a la app al menos una vez en los primeros días des del momento de registro.
  • Cuando usarlo: esta definición nace en los juegos de gambling, donde la pérdida de usuarios en la primera sesión tiene a ser realmente elevada. Esto da una idea de cuantos usuarios no abandonan en su primera sesión, normalmente llamados retainers.
  • Almacenamiento de datos: para calcularlo, la empresa debe guardar exactamente todos y cada uno de los días que el usuario vuelve a la app. Si existe algún login en los primeros días, entonces se considera que el usuario ha sido retenido.
  • Ejemplo con el 30-day: solamente los usuarios que vuelvan al menos una vez en los primeros 30 días se consideran retenidos para este modelo. No importa el comportameinto más allá del día 30 ni cuantas veces vuelve el usuario en el periodo en cuestión.
Return retention

Return retention

5. Interval n-day retention

  • Cálculoes un caso especifico y más restrictivo de return retention. En este caso se define un intervalo de días con hitos clave como por ejemplo los días 1, 3, 7, 30, 60... Se define el día m como el límite inferior del intervalo y n como el límite superior del mismo. La métrica entonces mide la proporción de usuarios que vuelven a la app al menos una vez entre los días m y n.
  • Cuando usarlo: este método es útil para ver y entender el comportameinto y uso de la app, así como localizar ciertos patrones de usuario.
  • Almacenamiento de datos: para calcularlo, la empresa debe guardar para usuario los días exactos en que vuelve a la app. En este caso, si existe algún login entre los días m n, entonces se considera que ese usuario ha sido retenido.
  • Ejemplo con el 30-day: tomando por ejemplo n = 30 y m = 7, los usuarios que vuelven día 13 o 22 se consideran retenidos para este modelo Sin embargo, un usuario que vuelva el día 5 pero no regrese más allá de día 7 no se considerará retenido a diferencia del modelo anterior.
Interval retention

Interval retention

Conclusiones

Eficiencia (desde ambos lados de cálculo y de almacenamiento de datos) versus significatividad (restrictividad y relevancia). Todo viene a un punto en el que cada Data Scientist debe decir cuál prefiere. Este es mi punto de vista, pero el tuyo puede ser diferente. Cuéntanos lo que piensas!

Restrictivo Relevancia Almacenamiento Cálculo
Full 5 3 Alto Difícil
Classical 4 4 Alto Muy fácil
Not churned 3 5 Bajo Fácil
Return 2 1 Alto Normal
Interval 1 2 Alto Normal

Limitaciones

Cuando se requiere calcular en tiempo real, la más efectiva suele ser la definición de Not churned, que no requiere de almacenar datos de cada día, si no solamente los días que han pasado desde el registro hasta la última conexión. Por supuesto, este enfoque pierde gran cantidad de datos entre esas fechas. Por ejemplo, si el usuario no ha vuelto en los n primeros días, y de repente el equipo de marketing pone en marcha una gran campaña de reengagement en el día n sin duda alguna elevará el valor de retención para esta definición. Sin embargo no va a ser muy realista ..

También hay otro problema: mientras que los enfoques que necesitan almacenar datos de cualquier sesión del usuario no va a cambiar la retención del día n a medida que el tiempo pase, la definición Not churned  sufrirá cambios día a día. Por ejemplo, imaginemos que tenemos un 15% de retención a los 30 días de registro. Con el objetivo de aumentar este valor que hacemos una campaña de remarketing (por correo electrónico, notificaciones, anuncios, ...) a continuación:

  • La Full retention no se verá afectada casi nada por la campaña.
  • La Classical retention se verá afectada si la campaña se ejecuta en el día  o algunos días antes de esa fecha.
  • La Not churned retention se verá afectada siempre que se ejecute este tipo de campaña.
  • La Return retention se verá afectada si la campaña se lanza en los primeros n días desde la fecha de registro.
  • La Interval retention se verá afectada si la campaña se lanza entre los días  desde la fecha de registro.

Así, parece que este es un KPI  muy difícil de calcular ... En realidad, no está para nada estandarizado, y presenta diferentes resultados en función de, no sólo la forma en que se calcula, sino también cómo es afectado por otras acciones de marketing y reengagement.

Siempre hay que tener en mente que las métricas de retención dependen mucho del tipo y la categoría de app o juego que se esté analizando, y que los enfoques son múltiples. 

Así pues, la próxima vez que alguien hable de retención, no te olvides de preguntarlo, como gran experto que ahora ya eres: Si si, pero de qué retención estás hablando?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *