Cómo calcular métricas básicas de Google Analytics 4 con BigQuery

Cómo calcular métricas básicas de Google Analytics 4 con BigQuery

Hay tres métricas básicas de Google Analytics 4 que es muy sencillo extraer con BigQuery. En este post vas a ver el SQL que necesitas para extraerlas.

Como ya sabrás , es posible y normal, que no encajen 100% con los datos de la interfaz de GA4 o con tus lookerstudios.

Auditoria-gratis-desktop

Cómo calcular las sesiones de GA4 con BigQuery

Para calcular las sesiones de GA4 con BigQuery en realidad lo que se hace es concatenar el user_pseudo_id con el ga_session_id y contar cuántos valores distintos hay. No tiene más ciencia.

El código SQL es el siguiente:

COUNT(DISTINCT CONCAT(user_pseudo_id, (SELECT value.int_value FROM UNNEST(event_params) WHERE key = «ga_session_id» ))) 

calcular sesiones en bigquery

Cómo calcular las sesiones con interacción de GA4 con BigQuery

Para las sesiones con interacción el proceso es similar al anterior pero sólo tendremos en cuenta aquellos valores donde el parámetro engaged_session es igual a 1. 

Este cálculo requiera usar una subquery.

Sería así el código SQL:

COUNT(DISTINCT CASE WHEN(SELECT value.string_value FROM UNNEST(event_params) WHERE key = «session_engaged») = «1» THEN CONCAT(user_pseudo_id, (SELECT value.int_value FROM UNNEST(event_params) WHERE key = «ga_session_id»)) END)

Este sería el resultado:

sesiones con engagement en BigQuery GA4

Fíjate cómo se reduce casi a la mitad el número de sesiones.

Cómo calcular la tasa de interacción de GA4 con BigQuery

Para esta métrica haremos una simple división de sesiones con interacción entre sesiones totales. 

El código SQL sería así :

ROUND(COUNT(DISTINCT CASE WHEN (SELECT value.string_value FROM UNNEST(event_params) WHERE key = «session_engaged») = «1» THEN CONCAT(user_pseudo_id, (SELECT value.int_value FROM UNNEST(event_params) WHERE key = «ga_session_id»)) END) / COUNT(DISTINCT CONCAT(user_pseudo_id, (SELECT value.int_value FROM UNNEST(event_params) WHERE key = «ga_session_id»))) , 2) * 100

tasa de interacción en bigquery ga4
Fernando Lens
flens@seocom.agency

Actualmente desempeño mi labor como Analista Web dentro de la Agencia de Analítica Digital RoiAnalytics en proyectos web de varios tipos, E-commerce, medios especializados, páginas de captación de leads, entre otros. Cuento además con varios años de experiencia dentro del sector del SEO y también cuento con conocimientos de SEM. Me defino como un profesional de la analítica al que no solo le gusta captar el mejor dato posible si no que también busca generar el mayor beneficio posible a mis clientes gracias a los datos.