Modelo de datos
Visitantes, usuarios, actores, sesiones, conversiones y la lista completa de columnas que guarda cada evento.
Esta página define todos los términos que usa LaunchPulse y lista todas las columnas de un evento. Si algún número de la app no coincide con tu intuición, la definición probablemente está acá.
Conceptos base
| Concepto | Definición |
|---|---|
| Visitante | visitor_id, de la cookie _lp_vid. Anónimo, uno por navegador/dispositivo, duración de 30 días |
| Usuario | user_id, que defines con identify() usando tu id interno. El evento $identify se guarda, así que los recorridos se pueden reconstruir |
| Actor | user_id cuando existe, si no visitor_id. Es la unidad para conversión, activación, conteo de visitantes en alertas y conteos de “personas” |
| Sesión | session_id, que rota tras 30 minutos de inactividad y con reset() |
| Conversión | Una definición que se aplica al consultar: un nombre de evento (alias incluidos) O un $pageview cuya ruta empiece con la ruta que configuraste. Un actor convierte en su primer evento coincidente |
| Primer valor / activación | Un actor queda activado cuando dispara el evento de primer valor en o después del momento de su conversión |
| Tiempo hasta el valor | Mediana de segundos entre conversión y primer valor, entre los actores activados |
| Atribución | Primer contacto por defecto. Las fuentes se agrupan por first_source, congelado durante los 30 días de vida del visitante |
Visitante vs. actor — el que confunde a todos
Los “Visitantes” del panel cuentan visitor ids distintos. Pero los convertidos y los activados cuentan actores distintos.
Esa diferencia es intencional. Un visitor id es por navegador, así que la misma persona en su laptop y en su teléfono son dos visitantes. En cuanto inicia sesión y llamas a identify(), ambos colapsan en un solo actor. Contar conversiones por actor significa que quien se registra en el móvil y se activa en el escritorio es un convertido, no dos.
Consecuencia práctica: una tasa de conversión no es una división limpia entre dos números de la misma pantalla. Es actores convertidos sobre la población de visitantes relevante, y si mucha de tu gente usa varios dispositivos, los conteos de actores serán más bajos que los de visitantes por diseño.
La activación se mide sobre los convertidos
La tasa de activación es activados ÷ convertidos, no activados ÷ visitantes. Quien nunca convirtió no puede activarse, así que no está en el denominador.
Además, la activación requiere el evento de primer valor en o después del momento de la conversión. Si tu app dispara el primer valor antes de la conversión, ese actor nunca cuenta como activado. La vista de prueba del onboarding advierte exactamente sobre esa inversión — mira Salir en vivo.
El detalle completo está en Conversiones y activación.
Atribución
La atribución es de primer contacto por defecto: la fuente de un visitante es la que lo trajo la primera vez, congelada durante los 30 días de vida de la cookie. Eso es first_source, first_campaign, first_landing_page, y es lo que agrupa el reporte de Fuentes.
También se registran campos a nivel de sesión (session_source, session_medium, session_campaign, session_landing_page), así que puedes desglosar insights por la fuente de una sesión concreta en lugar de la original del visitante. Mira Fuentes.
Dos comportamientos que sorprenden
1. La configuración es retroactiva
Tu evento de conversión, tu evento de primer valor y tus alias nunca se escriben dentro de los eventos guardados. Se aplican cuando corre una consulta.
Eso significa que cambiar cualquiera de ellos reinterpreta todo tu historial al instante. Sin reinstalar, sin volver a etiquetar, sin migración de datos, sin esperar a que se acumulen datos nuevos. Renombras tu evento de conversión y los números del trimestre pasado se recalculan en la siguiente carga de página.
Por eso los alias corrigen errores de tipeo de forma retroactiva, y por eso es seguro cambiar de opinión sobre qué cuenta como activación un mes después. Mira Alias de eventos.
2. Las columnas vacías desaparecen
El almacén analítico elimina las columnas que están completamente vacías para un proyecto. Si nunca enviaste un valor para algo, esa columna no existe en tu proyecto.
Tres consecuencias con las que te vas a topar:
- Los ingresos muestran 0 si nunca enviaste ingresos. No es un error: la columna no está. Mira Seguimiento de ingresos.
- Un insight desglosado por una dimensión que nunca envías aparece como una tarjeta vacía. Desglosa por campaña UTM en un sitio que nunca recibió una etiqueta UTM y no hay nada que mostrar.
- La vista de detalle de eventos muestra un conjunto de columnas distinto por proyecto. Dos proyectos, dos listas de columnas.
Columnas de evento
Todas las columnas que verás en la vista de detalle de eventos y en la exportación CSV.
| Columna | Significado |
|---|---|
time | Marca de tiempo del evento |
received_at | Hora de recepción en el servidor, la autoritativa. Define el particionado |
client_time | Lo que reportó el navegador, acotado a [recepción − 5 min, recepción] |
event_id | Id único del evento |
project_id | Proyecto al que pertenece el evento |
event_name | Nombre del evento, p. ej. $pageview, signup |
visitor_id | Id anónimo por navegador, de _lp_vid |
session_id | Id de sesión, rota tras 30 min de inactividad o con reset() |
user_id | Tu id interno, definido con identify() |
ingest_source | browser o server |
hostname | Host desde el que llegó el evento |
path | Ruta de la página |
url | URL completa de la página |
referrer | URL de referencia |
utm_source | utm_source de la URL |
utm_medium | utm_medium de la URL |
utm_campaign | utm_campaign de la URL |
utm_content | utm_content de la URL |
utm_term | utm_term de la URL |
source | Fuente derivada para este evento |
medium | Medio derivado para este evento |
campaign | Campaña derivada para este evento |
session_source | Fuente atribuida a la sesión |
session_medium | Medio atribuido a la sesión |
session_campaign | Campaña atribuida a la sesión |
session_landing_page | Primera página de la sesión |
first_source | Fuente de primer contacto, congelada durante la vida del visitante |
first_campaign | Campaña de primer contacto |
first_landing_page | Primera página en la que aterrizó el visitante |
country | Código de país ISO-3166 alfa-2 |
device | Tipo de dispositivo |
browser | Navegador |
os | Sistema operativo |
revenue_micros | Ingreso × 1.000.000, como entero |
currency | Moneda del valor de ingreso |
properties | Tus propiedades personalizadas |
Notas sobre las que no se explican solas:
received_ates la autoridad. Es el momento en que el collector realmente recibió el evento, y es la base del particionado.client_timees una afirmación del navegador, así que se acota a la ventana [recepción − 5 minutos, recepción]: un dispositivo con el reloj muy desfasado no puede empujar eventos al futuro ni muy atrás en el pasado.revenue_microses un entero, no un decimal. $19.99 es19990000. La aritmética entera evita el arrastre de coma flotante al sumar ingresos.propertiesguarda lo que tú envíes. Mantén los datos personales fuera de ahí — mira Privacidad.
Estados del proyecto
| Estado | Comportamiento |
|---|---|
setup | Onboarding. Los eventos van solo al stream de depuración y nunca se guardan |
active | Los eventos se guardan |
paused | Los eventos se aceptan y se descartan |
| Borrado lógico | El proyecto desaparece de la app; los datos analíticos se conservan |
Semántica de los rangos
Cómo se construye cada rango de la app:
| Rango | Ventana | Agrupación |
|---|---|---|
today | Desde la medianoche UTC | Hora |
7d / 30d / 90d | N × 24 horas móviles | Día |
12mo | Desde el día 1 del mes, 11 meses atrás | Mes |
| Personalizado | Se ajusta a días UTC, tope de 12 meses | Día |
El selector Local/UTC afecta solo la visualización. La agrupación siempre se calcula en UTC. Cambiar a Local reetiqueta el eje; no recalcula qué eventos caen en qué bucket. En una zona horaria distinta de UTC esto hace que las etiquetas se vean corridas respecto de los límites de cada bucket: es lo esperado, no una falla.
Qué sigue
- Registro de eventos — explorar eventos crudos y exportar CSV.
- Conversiones y activación — configurar el embudo.
- Solución de problemas — cuando un número se ve mal.