Contrato de evento
Campos que espera la consulta
| Campo | Tipo | Por que existe |
|---|---|---|
| timestamp_utc | Timestamp | Cuándo ocurrió el evento del producto. |
| user_id | Utf8 | Identificador de usuario estable. |
| event_name | Utf8 | Nombre del hito snake_case estable. |
| source | Utf8 | Fuente de adquisición o campaña. |
Copiar la consulta
WITH user_funnel AS (
SELECT
user_id,
MIN(CASE WHEN event_name = 'signup_completed'
THEN timestamp_utc END) AS signed_up_at,
MIN(CASE WHEN event_name = 'onboarding_completed'
THEN timestamp_utc END) AS onboarded_at,
MIN(CASE WHEN event_name = 'integration_connected'
THEN timestamp_utc END) AS integrated_at,
MIN(CASE WHEN event_name = 'first_value_completed'
THEN timestamp_utc END) AS activated_at
FROM product_events
WHERE timestamp_utc >= now() - INTERVAL '30 days'
GROUP BY user_id
),
stage_counts AS (
SELECT 1 AS step_order, 'Signed up' AS step, COUNT(*) AS users
FROM user_funnel
WHERE signed_up_at IS NOT NULL
UNION ALL
SELECT 2, 'Onboarded', COUNT(*)
FROM user_funnel
WHERE onboarded_at >= signed_up_at
UNION ALL
SELECT 3, 'Integrated', COUNT(*)
FROM user_funnel
WHERE integrated_at >= onboarded_at
UNION ALL
SELECT 4, 'Activated', COUNT(*)
FROM user_funnel
WHERE activated_at >= integrated_at
)
SELECT
step_order,
step,
users,
100.0 * users
/ NULLIF(MAX(CASE WHEN step_order = 1 THEN users END) OVER (), 0)
AS conversion_from_signup_pct,
100.0 * users
/ NULLIF(LAG(users) OVER (ORDER BY step_order), 0)
AS conversion_from_previous_pct
FROM stage_counts
ORDER BY step_order;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
Embudo de registro para activación
La mayor pérdida absoluta se produce antes de que se complete la incorporación, mientras que la integración sigue siendo el cuello de botella posterior más fuerte.
| step_order | step | users | conversion_from_signup_pct | conversion_from_previous_pct |
|---|---|---|---|---|
| 1 | Signed up | 8 | 100 | — |
| 2 | Onboarded | 6 | 75 | 75 |
| 3 | Integrated | 4 | 50 | 66,67 |
| 4 | Activated | 3 | 37,5 | 75 |
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 CTE user_funnel colapsa eventos repetidos en la primera marca de tiempo para cada hito.
- 2Las comparaciones de marcas de tiempo imponen el orden previsto, por lo que un evento fuera de secuencia no puede inflar un paso posterior.
- 3La consulta informa tanto la conversión desde el registro como la conversión desde el paso anterior, lo que hace visibles juntos el rendimiento total y la mayor pérdida de transición.
- 4Los nombres de los eventos deben representar hitos completados, no visitas a páginas o clics en botones que no demuestren que el usuario logró el paso.
Casos extremos para decidir
- Utilice una ventana de cohorte basada en el tiempo de registro y deje suficiente tiempo para que se activen los registros recientes.
- Los eventos que llegan tarde pueden hacer retroceder temporalmente a los usuarios en un embudo calculado recientemente.
- Segmente por fuente de adquisición solo después de que el embudo total tenga suficiente volumen.
Panel recomendado
- Barras de embudo: usuarios por paso
- Gráfico de líneas: tasa de activación por semana de registro
- Tabla: conversión por fuente, plan o persona
Guía de alerta
Utilice una alerta de baja urgencia cuando la activación de un grupo de registro maduro caiga materialmente por debajo de su línea de base reciente.
Leer configuración de alertaPon la receta a trabajar
Instrumentación y guías relacionadas.
Definir los datos de origen
Esquemas de eventos para este análisis.
user_signed_up
Un evento de asiento de cuenta duradero con contexto de adquisición y plan. Mantenga la identidad seudónima y capture la atribución de marketing solo después de una revisión de privacidad.
Revisar esquemaproduct_milestone_completed
Un sobre de hitos genérico para resultados estables del producto, como conectar una fuente, ejecutar una primera consulta o publicar un panel.
Revisar esquemaContinuar el análisis
Calcular la retención de cohorte semanal
Agrupe a los usuarios por primera semana de actividad y mida el porcentaje que regresa en semanas posteriores.
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.