Mide las sesiones y la participación de los usuarios

Para obtener descripciones conceptuales de los alcances de usuario y sesión, incluido cómo Google Analytics define y limita estrictamente las sesiones por inactividad, consulta Dimensiones y métricas: Acerca de las sesiones de Analytics y la guía sobre los alcances de las dimensiones de la fuente de tráfico.

En esta guía, se abordan los desafíos específicos para desarrolladores y las prácticas recomendadas para administrar las configuraciones de sesión y el seguimiento pasivo.

Cómo combinar dimensiones a nivel de la página con métricas de sesión

Una de las diferencias más comunes en los informes se produce cuando combinas dimensiones centradas en la página (por ejemplo, ruta de la página y clase de pantalla) con la métrica Sesiones a nivel de la sesión.

Definiciones de sesión y vistas

  • Sesiones cuenta los períodos únicos durante los que se cargó una ruta de la página determinada al menos una vez.

  • Vistas (vistas de página) cuenta la cantidad total acumulada de veces que se cargó la ruta de la página.

Ejemplo

Considera una sola sesión con la siguiente ruta de navegación del usuario: /home/products/home → Salir

Si esta es la única sesión, un informe configurado con las métricas Ruta de la página y clase de pantalla y Sesiones o Vistas mostrará lo siguiente:

Ruta de la página Sesiones Vistas
/home 1 2
/products 1 1
Total (Google Analytics sin duplicados) 1 3

Si sumas las filas, obtendrás 2 sesiones, pero el total real de la propiedad se elimina para que no haya duplicados y quede 1.

Reglas de personalización

  • Sesiones con ruta de la página hace referencia a las sesiones únicas que visitan la ruta al menos una vez.
  • Sesiones con página de destino hace referencia a las sesiones únicas que comienzan en la ruta. Para ver el tráfico de destino, siempre usa Página de destino + cadena de consulta en lugar de Sesiones con ruta de la página.
  • Vistas siempre cuenta la frecuencia total de carga.

Prácticas recomendadas para desarrolladores y analistas

  • Mantén la coherencia de los alcances: No combines dimensiones de tráfico centradas en el usuario (por ejemplo, Grupo de canales predeterminado del primer usuario) con métricas centradas en la sesión (por ejemplo, Duración promedio de la sesión) si tu objetivo es comprender el rendimiento de la sesión.
  • Valida session_start en DebugView: Durante la fase de QA y verificación usa herramientas de depuración estándares, como Google Analytics DebugView, para confirmar que session_start se active correctamente cuando se inicia la sesión.

Prácticas recomendadas para administrar los tiempos de espera de la sesión

La duración predeterminada de una sesión de Google Analytics es de 30 minutos.

No recomendamos implementar código personalizado para hacer "ping" periódicamente a Google Analytics y evitar los tiempos de espera por inactividad. Si aumentas artificialmente las métricas de sesión, se distorsionan los datos del comportamiento del usuario. En su lugar, utiliza las funciones integradas de Google Analytics o segmenta eventos de participación significativos para ofrecer una solución más clara.

Por qué los pings genéricos de "mantener activo" no son una práctica recomendada

  • Métricas principales distorsionadas: Si un usuario se aleja de su pestaña, está realmente inactivo. Si fuerzas a que la sesión permanezca abierta, se crean "sesiones zombie" y se aumenta falsamente la Duración promedio de la sesión. Esto oculta el punto real en el que los usuarios pierden interés o abandonan tu sitio.
  • Impacto en las sesiones que generaron participación: Google Analytics define una sesión que generó participación como aquella que dura más de 10 segundos, incluye 2 o más vistas de página o activa un evento clave (anteriormente, evento de conversión). Si mantienes abierta una sesión de forma artificial, esta parecerá que generó participación, lo que aumentará tu tasa de participación.
  • Sobrecarga de datos y costos: Si activas constantemente eventos de ping en segundo plano en blanco, aumenta el ruido del recuento de eventos y los costos del almacén de datos si exportas datos de Google Analytics a BigQuery.

Cuándo registrar la participación pasiva (y cómo hacerlo)

Existen situaciones legítimas en las que un usuario participa activamente en el contenido, pero no activa eventos de interacción estándares de Google Analytics (como clics o cambios de página). En estos casos, en lugar de un ping keep-alive genérico, captura eventos de progreso significativos iniciados por el usuario:

  • Contenido de video de formato largo: Un usuario que mira un video insertado de 45 minutos permanecerá pasivo durante más de 30 minutos y correrá el riesgo de que venza la sesión.
  • Artículos detallados: Un usuario puede pasar 40 minutos leyendo una guía técnica y desplazarse lentamente, pero no activar ninguna acción de navegación.
  • Aplicaciones web interactivas: Los usuarios que supervisan feeds en vivo, cotizaciones de acciones o paneles de datos consumen información de forma pasiva sin hacer clic.

Si el usuario minimiza la ventana del navegador o cambia de pestaña, los pings en segundo plano deben detenerse.

Ejemplo de código: Ping de evento con reconocimiento de visibilidad

En el siguiente patrón de JavaScript, se muestra cómo hacer un seguimiento de la participación pasiva y respetar la visibilidad de las pestañas. Ajusta el intervalo de seguimiento y el valor del parámetro (por ejemplo, 5 minutos o 300,000 ms) según tu caso de uso específico, como la duración típica de tus videos o artículos de formato largo:

const TRACKING_INTERVAL_MILLIS = 5 * 60 * 1000;

let engagementInterval;

function startEngagementTracking() {
  // Prevent duplicate intervals if tab becomes visible
  if (engagementInterval) return;

  engagementInterval = setInterval(() => {
    gtag('event', 'passive_engagement', {
      'engagement_time_msec': TRACKING_INTERVAL_MILLIS
    });
  }, TRACKING_INTERVAL_MILLIS);
}

function stopEngagementTracking() {
  if (engagementInterval) {
    clearInterval(engagementInterval);
    engagementInterval = null;
  }
}

// Start tracking initially if the page is visible
if (!document.hidden) {
  startEngagementTracking();
}

// Stop tracking when tab is hidden, resume when visible
document.addEventListener('visibilitychange', () => {
  if (document.hidden) {
    stopEngagementTracking();
  } else {
    startEngagementTracking();
  }
});

Medición optimizada de Google Analytics en comparación con el seguimiento personalizado

Google Analytics incluye la Medición optimizada, que controla automáticamente algunas situaciones de seguimiento pasivo de forma predeterminada, aunque tiene limitaciones específicas.

Tipo de interacción ¿La controla la medición optimizada? Requisitos o elementos de acción
Videos insertados de YouTube Activa automáticamente los hitos video_start, video_complete y video_progress en 10%, 25%, 50% y 75% (requiere que se habilite la compatibilidad con la API de JS).
Videos que no son de YouTube (HTML5, Vimeo) No Requiere implementación personalizada. Activa eventos de forma programática con gtag.js o administra activadores con Google Tag Manager (GTM).
Desplazamiento de página estándar Parcial Activa un solo evento scroll solo cuando el usuario llega al 90% de una página.
Progreso de lectura incremental No Inhabilita el seguimiento de desplazamiento predeterminado de Google Analytics e implementa umbrales de desplazamiento personalizados (por ejemplo, 25%, 50%, 75%) de forma programática o en GTM.

La alternativa más clara: Ajusta el límite de tiempo de espera de la sesión de Google Analytics

Si tu sitio web se centra naturalmente en contenido de formato largo, cursos de video o uso continuo de la app, no necesitas insertar hacks de secuencias de comandos personalizados. Puedes ajustar el umbral predeterminado de 30 minutos dentro de la interfaz de Google Analytics hasta un máximo de 7 horas y 55 minutos. Para obtener instrucciones, consulta Cómo ajustar el tiempo de espera de la sesión.