¿Es posible decirle a Google Analytics que haga algo cuando finaliza la sesión del usuario? (NO una sesión local, sino una sesión de Google Analytics).
De acuerdo con esto: https://support.google.com/analytics/answer/2731565?hl=en#zippy=%2Cin-this-article la sesión tiene un tiempo de espera de 30 minutos de inactividad, lo que significa que es algo que sucede en servidor de Google. ¿Puedo indicarle que rastree un evento después de que esta sesión haya terminado usando eventos personalizados de JavaScript?
Quiero realizar un seguimiento del progreso del usuario después de que el usuario haya abandonado el sitio web o haya finalizado la sesión. Quiero evitar inundar los análisis con un evento cada vez que el usuario avanza a la siguiente parte del cuestionario.
quiero algo como
on_analytics_session_end({ ga('send', { hitType: 'event', eventCategory: 'Progress', eventLabel: 'Quiz: ' + quizNumber, }); });No puedo encontrar nada que le permita conectarse a una sesión que finaliza.
Lo estás abordando al revés.
Primero, debe indicar si está en GA4 o GA UA. Por el uso de la función ga(), supongo que estamos usando UA aquí.
UA cambia de sesión en todo tipo de escenarios extraños como el cambio de IP (por ejemplo, cuando viaja mientras usa un teléfono) o cuando cambia su fuente/medio. O, a veces, incluso cuando cambia su resolución. Captar todo eso con JS sería bastante difícil, y ciertas cosas no se capturarán con seguridad. Por lo tanto, no enviar eventos con JS.
En teoría, podría ejecutar una función cronometrada que verificaría el tiempo de inactividad, y también puede anular onbeforeunload() para enviar un evento rápido si se cierra una pestaña o se navega desde ella, pero eso tiene poco que ver con el seguimiento del final de la sesión como lo define UA eso.
La forma adecuada de hacerlo es a través de la creación de embudos en GA que comenzarían desde el inicio del cuestionario y terminarían con el final del cuestionario, con todas las páginas intermedias enumeradas para el análisis. Eso le dará la caída en cada página. O simplemente use el informe de páginas de salida.
Si necesita realizar un análisis aún más profundo, generalmente nos alejamos de la interfaz GA exportando los datos a BQ y luego resolvemos sus tareas de análisis con SQL o ETL los datos de BQ, enriqueciéndolos y generando eventos falsos para indicar cada fin de sesión. He visto muchos ETL de datos de GA personalizados y enriquecimiento de datos, pero nunca vi a nadie que necesitara un evento generado para indicar el final de la sesión. Por lo general, la dimensión de ID de sesión resuelve muchas preguntas relacionadas con la sesión, especialmente en SQL, donde solo puede contar ID de sesión únicos donde/por/tener lo que sea, etc.