Curvas de retención

Cuánto aguanta cada cohorte.

Definición

Las curvas de retención dibujan, para cada cohorte, qué porcentaje sigue activo según su antigüedad. Todas comparten el eje de antigüedad y no el calendario, así que cohortes de fechas distintas se comparan en igualdad. Se lee buscando dónde se aplana cada curva, y se usa sobre todo en productos de suscripción.

Cohort Retention Curves
Datos
x · value · series
Buena para
Comparar cuánto aguanta cada cohorte y si las nuevas retienen mejor que las antiguas.
Evítala cuando
Cuando las cohortes no arrancan en el 100 %: la pieza no normaliza y las curvas no salen del mismo punto.
Se lee bien
Entre 6 y 100 elementos; dibuja hasta 1000
Datos que faltan
Dibuja el valor ausente como cero.
Accesibilidad
Lector de pantalla: resumen en texto · respeta «reducir movimiento»

Forma de los datos

Qué columnas pide

ColumnaTipoPara qué
x · opcionalnumberLa ANTIGÜEDAD, como número (0, 1, 2…), no como fecha. Sin ella la pieza devuelve cero filas.
value · opcionalnumberEl porcentaje retenido. Se dibuja tal cual: la pieza no normaliza al 100 % del periodo 0, así que una cohorte que no arranque en 100 sale como venga.
series · opcionalstringLa cohorte: una curva por valor distinto. Ausente = «Cohort n» POR ÍNDICE DE FILA, y entonces cada fila se vuelve su propia cohorte de un punto.

Tamaños

Recompuesta, no encogida

El motor vuelve a componer la pieza a cada ancho: los rótulos conservan su cuerpo y la figura gana alto si lo necesita.

Móvil · 408 × 491 px
Escritorio · 848 × 642 px

Cuándo usarla

Tres preguntas antes de elegirla

¿Son pocas cohortes?

Con muchas cohortes, la retención por cohortes las pone en filas coloreadas y se leen todas a la vez.

Sí: quédate con curvas de retención

No: usa Retención por cohortes

¿Mides personas que siguen y no ingresos?

Si lo que importa es cuánto ingreso conserva y amplía la base de clientes, la retención neta de ingresos lo descompone.

Sí: quédate con curvas de retención

No: usa Retención neta de ingresos

¿Tus datos son porcentajes retenidos por periodo?

Si lo que tienes es una probabilidad de supervivencia que baja a escalones con cada evento observado, como en un ensayo con brazo de tratamiento y de control, la curva de Kaplan-Meier la dibuja así.

Sí: quédate con curvas de retención

No: usa Curva de Kaplan-Meier

Código

La misma pieza, con tus datos

import { getPreset, renderComposition } from 'visx-render/node';

const spec = await getPreset('retentioncurve');
spec.data.rows = misFilas; // tus columnas
const { svg, warnings } = await renderComposition(spec);

También en React con Chart y prepareComposition. Guía para desarrolladores →

Dudas

¿El eje horizontal es una fecha?

No: es la antigüedad, en números (0, 1, 2…). Así cada cohorte se mide desde su propio arranque.

¿Qué pasa si no indico la cohorte?

Cada fila se convierte en una cohorte de un solo punto. Hace falta una columna que diga a qué cohorte pertenece cada fila.

¿Qué hace si faltan datos?

Dibuja el valor ausente como cero. Si un hueco no es un cero en tus datos, rellénalo o elimina la fila antes de dibujar.

¿Cómo se ve en el móvil?

El motor la recompone a 360 px de ancho —rótulos, leyenda y alto— en vez de encoger la versión de escritorio.

Relacionadas

Otras formas de responder «cómo cambia en el tiempo»

Guía para elegir: cómo cambia en el tiempo →