Contrato de evento
Campos que espera la consulta
| Campo | Tipo | Por que existe |
|---|---|---|
| timestamp_utc | Timestamp | Cuándo ocurrió la actividad. |
| user_id | Utf8 | Identificador de usuario estable. |
| event_name | Utf8 | Nombre del evento del producto. |
Copiar la consulta
WITH first_activity AS (
SELECT
user_id,
date_trunc('week', MIN(timestamp_utc)) AS cohort_week
FROM product_events
WHERE event_name = 'first_value_completed'
GROUP BY user_id
),
weekly_activity AS (
SELECT DISTINCT
user_id,
date_trunc('week', timestamp_utc) AS activity_week
FROM product_events
WHERE event_name = 'core_feature_used'
),
cohort_activity AS (
SELECT
f.cohort_week,
(date_part('epoch', a.activity_week)
- date_part('epoch', f.cohort_week)) / 604800 AS week_number,
COUNT(DISTINCT a.user_id) AS retained_users
FROM first_activity f
JOIN weekly_activity a ON f.user_id = a.user_id
WHERE a.activity_week >= f.cohort_week
GROUP BY
f.cohort_week,
(date_part('epoch', a.activity_week)
- date_part('epoch', f.cohort_week)) / 604800
),
cohort_sizes AS (
SELECT cohort_week, COUNT(*) AS cohort_size
FROM first_activity
GROUP BY cohort_week
)
SELECT
c.cohort_week,
c.week_number,
c.retained_users,
s.cohort_size,
100.0 * c.retained_users / NULLIF(s.cohort_size, 0) AS retention_pct
FROM cohort_activity c
JOIN cohort_sizes s ON c.cohort_week = s.cohort_week
WHERE c.week_number BETWEEN 0 AND 12
ORDER BY c.cohort_week, c.week_number;Esta consulta de solo lectura se planifica y ejecuta en una tabla escrita vacía con Apache DataFusion 45.2.0. El resultado de la muestra determinista es sintético y se revisa por separado; valide tipos de campos, umbrales y definiciones comerciales con sus propios datos. Lea la metodología de prueba.
Resultado de la consulta
Retención semanal por cohorte de activación
La cohorte de mayor edad retuvo a la mitad de sus usuarios en la primera semana; la cohorte más nueva aún no está lo suficientemente madura para una comparación de la primera semana.
Semana 0
100%
cohorte 2026-07-20
Semana 1
50%
cohorte 2026-07-20
Semana 0
100%
cohorte 2026-07-27
| cohort_week | week_number | retained_users | cohort_size | retention_pct |
|---|---|---|---|---|
| 2026-07-20 | 0 | 4 | 4 | 100 |
| 2026-07-20 | 1 | 2 | 4 | 50 |
| 2026-07-27 | 0 | 3 | 3 | 100 |
Salida de ejemplo sintético. Ejecute la consulta con su propio esquema de eventos y umbrales antes de utilizarla para decisiones operativas.
Reproducir el ejemplo
Descargar el accesorio público
El paquete JSON incluye el contrato de evento escrito, reproducible filas de entrada, SQL exacto, resultado esperado, notas de revisión y versión del motor. El CSV contiene el resultado mostrado.
Cómo funciona el SQL
- 1El primer CTE define la cohorte de cada usuario desde la semana en que completaron por primera vez el hito de valor.
- 2La actividad semanal se deduplica, por lo que varios eventos en una semana cuentan como un usuario retenido.
- 3La diferencia de marca de tiempo se convierte de días a un desplazamiento semanal que se puede comparar entre cohortes.
Casos extremos para decidir
- Excluya semanas futuras incompletas al comparar cohortes de diferentes edades.
- Defina el comportamiento de retorno de una actividad significativa en lugar de cualquier vista de página.
- Es posible que los límites de la semana UTC no coincidan con la zona horaria comercial; documentar el límite elegido.
Panel recomendado
- Tabla estilo mapa de calor: cohort_week de week_number
- Gráfico de líneas: retention_pct por week_number dividido por cohort_week
- Estadística: retención de la semana cuatro de la cohorte madura
Guía de alerta
La retención generalmente se revisa como una tendencia en lugar de paginarse. Marque cohortes maduras cuando la retención de la semana uno o la semana cuatro caiga fuera del rango esperado.
Leer configuración de alertaPon la receta a trabajar
Instrumentación y guías relacionadas.
Continuar el análisis
Cree un embudo de registro para activación en SQL
Calcule la conversión de usuarios únicos mediante el registro, la incorporación, la integración y los hitos de primer valor.
Receta abiertaEncuentre funciones utilizadas antes de la actualización
Únase a eventos destacados para actualizar eventos y clasificar comportamientos que ocurren antes de la conversión paga.
Receta abiertaCalcule DAU, WAU y adherencia del producto
Mida juntos a los usuarios activos diarios y semanales y calcule la adherencia de DAU a WAU a partir de una definición de actividad coherente.
Receta abiertaEjecútelo en eventos reales.
Crea una tabla, adapta los campos y guarda el resultado.
Comience gratis, envíe eventos estructurados y utilice el resultado de la consulta como un gráfico, un widget de panel compartido o una entrada de alerta.