Minhaz Kazi, Developer Advocate, Google Analytics, abril 2023
“¿Pero por qué los números no coinciden con la IU?”
Si ya trabajaste con los datos de exportación de eventos de BigQuery para tu propiedad GA4, seguramente has hecho esta pregunta en algún momento. O peor, alguien más te preguntó esto. Y mientras intentas responder, es probable que te hayan pedido más aterradora pregunta:
“¿Y dónde dice eso?”
En esta publicación, intentaremos aclarar ambas.
Antes de entrar en detalles sobre cómo varían los números, es importante entender el propósito previsto de los datos de exportación de eventos de BigQuery. Usuarios de Google Analytics Enviar los datos recopilados a Google Analytics a través de uno de los métodos de recopilación: Google Etiqueta, Google Tag Manager, el Protocolo de medición, los SDK y la Importación de datos. Según la configuración de la propiedad de Google Analytics, Google Analytics realiza un valor significativo además de los datos recopilados antes de que lleguen a las plataformas estándares incluidos los informes estándares, Exploraciones y la API de datos. Estos valores se pueden incluir indicadores de Google, modelado, tráfico atribución, predicción, etc.
Las plataformas de informes estándares tienen como objetivo proporcionar el valor máximo a los usuarios de Google Analytics en la menor fricción. Sin embargo, entendemos que, en el amplio espectro de usuarios, algunos desean complementar los valores agregados de Google Analytics o incluso algo completamente personalizado. Para estos usuarios, la exportación de eventos de BigQuery es punto de partida previsto. La exportación de eventos de BigQuery tendrá datos recopilados, que se envía del cliente o la app a Google Analytics. Exportación de eventos de BigQuery El valor no incluirá datos detallados sobre la mayoría de las incorporaciones de valor mencionadas anteriormente.
Por lo tanto, para una gran cantidad de casos de uso, las plataformas estándares de informes y No se espera que los datos de BigQuery Export sean conciliables cuando se trata de estos partes de valor agregado. Si hay coherencia interna en ambos y coinciden con lo que estás recopilando, ya deberías estar listo para hacerlo.
Ahora veamos algunos de los motivos específicos de las diferencias y exploremos y formas de mitigarlos cuando sea posible. Esta publicación se enfoca en el análisis Solo se permite la exportación de eventos diarios, no la exportación de flujos.
Muestreo
Para una comparación precisa de tus datos de BigQuery Export con los informes estándares, Los informes de la API, o los informes de exploración, confirman que no se basan en datos muestreados. El muestreo de datos en GA4 proporciona más detalles y formas de abordar el muestreo.
Usuarios activos
Si registras todos los usuarios que registraron, al menos, un evento en tus campañas de GA4 propiedad, obtendrás la métrica Total de usuarios. Si bien la métrica Total de usuarios está disponible en Exploraciones, en la IU de GA4, la principal métrica del usuario que se usa para de GA4 son los de Usuarios activos. En la IU de GA4 y en los informes, si solo se muestra en Usuarios que suele referirse a los usuarios activos. Entonces, al calcular de datos de BigQuery, deberás filtrar y mantener solo los usuarios activos para que las cifras sean comparables con la IU de Google Analytics. El método de cálculo también varían según la identidad de los informes que seleccionaste.
Implementación técnica
En los datos de exportación de eventos de BigQuery, si cuenta la cantidad de IDs de usuario diferentes,
obtendrá el recuento de Total de usuarios. Esta es una consulta de ejemplo en la que se muestran los costos totales
Usuarios y usuarios nuevos en función de user_pseudo_id
:
-- Example: Get 'Total User' count and 'New User' count.
WITH
UserInfo AS (
SELECT
user_pseudo_id,
MAX(IF(event_name IN ('first_visit', 'first_open'), 1, 0)) AS is_new_user
-- Replace table name.
FROM `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
-- Replace date range.
WHERE _TABLE_SUFFIX BETWEEN '20201101' AND '20201130'
GROUP BY 1
)
SELECT
COUNT(*) AS user_count,
SUM(is_new_user) AS new_user_count
FROM UserInfo;
Para seleccionar solo usuarios activos, limita tu consulta a los eventos en los que is_active_user
es true
:
-- Example: Get exact and approximate Active User count.
WITH
ActiveUsers AS (
SELECT
user_pseudo_id
-- Replace table name.
FROM `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
-- Replace date range.
WHERE _TABLE_SUFFIX BETWEEN '20201101' AND '20201130'
AND is_active_user
GROUP BY 1
)
SELECT
COUNT(DISTINCT user_pseudo_id) AS exact_active_user_count,
APPROX_COUNT_DISTINCT(user_pseudo_id) AS approx_active_user_count
FROM ActiveUsers;
HyperLogLog++
Google Analytics usa el algoritmo HyperLogLog++ (HLL++) para estimar la cardinalidad. para métricas comunes, como Usuarios activos y Sesiones. Eso significa que cuando ves el recuento único de estas métricas en la IU o a través de la API, son una aproximación con cierta precisión. En BigQuery, como tienes acceso a los datos detallados, puedes calcular la cardinalidad exacta de estas métricas. De esta manera, las métricas pueden variar en un pequeño porcentaje. Con un intervalo de confianza del 95%, el la precisión podría ser de ±1.63% para el recuento de sesiones. Los niveles de precisión variarán para diferentes métricas y cambiará según los intervalos de confianza. Consulta Bocetos de HLL++ para los niveles de precisión en diferentes intervalos de confianza para diferentes parámetros de precisión de HLL++.
Implementación técnica
Consulta Aproximación de recuento único en Google Analytics para comprender cómo HLL++ implementadas en Google Analytics y cómo replicar la funcionalidad con consultas en BigQuery.
Demora en la recopilación de datos
Las tablas de exportación diaria se crean después de que Google Analytics recopila todos los eventos del día. Las tablas diarias se pueden actualizar hasta 72 horas después de su fecha. con eventos que tienen la fecha de la tabla con la marca de tiempo. Leer detalles sobre esto y ver ejemplos. Esto es más problemático si que su implementación del SDK de Firebase o el Protocolo de medición envía retrasados. Según el momento en que la plataforma de informes estándar y BigQuery se actualizan dentro de esas 72 horas, es posible que veas diferencias entre ellas. Para dicha implementación, las comparaciones deben hacerse con datos más antiguos más de 72 horas.
Informes de alta cardinalidad
Supongamos que estás viendo un informe a través de informes estándares o la API de datos. El informe muestra una gran cantidad de datos y tiene dimensiones con un alto cardinalidad. Las dimensiones de alta cardinalidad pueden hacer que el informe supere los límite de cardinalidad de la tabla subyacente. Cuando esto sucede, Google Analytics agrupará los valores menos frecuentes y los etiquetará como (other).
Con un ejemplo simplificado y a pequeña escala, si el límite de cardinalidad del base es de 10 filas, esto es lo que puede esperar que suceda:
Como puedes ver, la cantidad total de eventos no cambia. Sin embargo, hay menos los valores frecuentes se agrupan y no puedes volver a agregar la tabla según en ninguna dimensión (p.ej., no puedes tomar la tabla conjunta y derivar el total recuento de eventos de una ciudad específica con alta precisión). En el ejemplo, se obtiene profunda si filtras los datos agregados según cualquiera de las dimensiones.
Esta agrupación de la fila (other) ocurre solo en el módulo de informes y en el API de Data cuando el informe supera el límite de cardinalidad. Si realizas tu cálculos desde BigQuery, siempre terminarás con datos de verdad fundamental, las filas más detalladas. Obtén más información sobre la fila (other) y las prácticas recomendadas sobre cómo evitarlo.
Indicadores de Google
La activación de indicadores de Google en tu propiedad GA4 tiene varios beneficios, incluidos los siguientes:
la anulación de usuarios duplicados
en las distintas plataformas y dispositivos. Si no recopilas datos de
de Google o activar indicadores de Google, y una persona ve tu sitio web en tres
navegadores web diferentes, Google Analytics atribuye esa actividad a tres
usuarios diferentes, y BigQuery Export tendrá tres user_pseudo_id
diferentes.
En cambio, cuando se activan los indicadores de Google y la persona accede a su
una sola Cuenta de Google en los tres navegadores, los atributos de Google Analytics
actividad a un usuario y refleja ese recuento en las plataformas de informes estándares.
Sin embargo, BigQuery seguirá mostrando tres user_pseudo_id
separados porque
La información de los indicadores de Google no está disponible en la exportación de BigQuery. Por lo tanto,
con datos de los indicadores de Google
tendrán más probabilidades de tener un recuento de usuarios menor en comparación
a BigQuery Export.
La mejor manera de reducir este efecto es implementar User-ID en tu cuenta de GA4.
además de activar los indicadores de Google. Esto garantizará que el
la anulación de duplicación se produce primero en función de user_id
. Para los usuarios que accedieron a sus cuentas, user_id
se propagarán en BigQuery y podrán usarse para los cálculos.
Sin embargo, en el caso de los usuarios que no accedieron (es decir, sesiones sin user_id
),
Los indicadores de Google se seguirán usando para la anulación de duplicación.
Además, ten en cuenta que algunos informes de las plataformas estándares pueden tener se aplicó el umbral y no mostrarán ciertos datos. Gran parte de la información que se puede que están sujetos a umbrales no suelen estar disponibles en BigQuery Export.
Modo de consentimiento y datos modelados
El modo de consentimiento en sitios web y aplicaciones para dispositivos móviles te permite comunicar
el estado de consentimiento de cookies o identificadores de aplicación a Google. Cuando los visitantes rechazan el consentimiento,
GA4 llena los vacíos de la recopilación de datos con el modelado de eventos clave y las funciones de comportamiento.
de datos. Ninguno de los datos modelados está disponible en la exportación de eventos de BigQuery.
Cuando se implemente el modo de consentimiento, el conjunto de datos de BigQuery contendrá pings sin cookies.
que recopila GA y cada sesión tendrá un user_pseudo_id
diferente. Debido a
de datos, habrá diferencias entre las plataformas de informes estándares y
los datos detallados en BigQuery. Por ejemplo, debido al modelado de comportamiento,
podría notar una menor cantidad de usuarios activos en comparación con BigQuery Export, ya que
de datos podría intentar predecir las sesiones múltiples de instancias
usuarios.
Para reducir el efecto de esto, debes implementar User-ID en tus cuentas de GA4
propiedad. user_id
y las dimensiones personalizadas se exportan a BigQuery sin importar la
el estado de consentimiento de tus usuarios.
Datos de atribución del tráfico
En BigQuery, los datos de atribución de tráfico están disponibles para el usuario (primera visita) y a nivel del evento. Estos son los datos recopilados. Sin embargo, dado que Google Analytics implementa su propio modelo de atribución a nivel de sesión, esa información se no está disponible directamente en BigQuery Export ni se puede calcular con datos la exactitud de los datos disponibles. Según tu caso de uso, puedes considerar unir el conjunto de datos de BigQuery con cualquier dato de origen relevante y compilar tu propio modelo de atribución. En el futuro, los datos adicionales recopilados para el tráfico la atribución puede estar disponible con la exportación de eventos de BigQuery.
Errores de cálculo comunes
- Método de cálculo: Cuando se calculan diferentes métricas en BigQuery,
asegurarte de usar la metodología correcta. Por ejemplo:
- El método estándar para registrar las sesiones de Google Analytics 4
es contar las combinaciones únicas de
user_pseudo_id
/user_id
yga_session_id
independientemente de la período. En Universal Analytics, las sesiones se restablecerían a la medianoche. Si Sigues el modelo de UA, calculas las sesiones para cada día y las agregas. para obtener un recuento total de sesiones, estarías contando dos veces el valor sesiones que abarcan varios días. - Según la identidad de los informes que seleccionaste, el recuento de usuarios método de cálculo tendrán que actualizarse.
- El método estándar para registrar las sesiones de Google Analytics 4
es contar las combinaciones únicas de
- Alcance de dimensiones y métricas: Asegúrate de que tus cálculos usen el el alcance correcto a nivel de usuario, sesión, artículo o evento.
- Zona horaria: En BigQuery Export,
event_date
es la hora del informe. mientras queevent_timestamp
es una marca de tiempo UTC en microsegundos. De esta manera, idealmente, si se usaevent_timestamp
en una consulta, se debe ajustar para la zona horaria correcta del informe cuando se compara con los números de la IU. - Filtrado de datos y límites para la exportación: Si configuraste el filtrado de datos para la exportación de eventos de BigQuery o el volumen diario de exportación de eventos superó los datos de la exportación de eventos de BigQuery no coincidirán plataformas de informes.
CON todo eso, hay un poco para UNNEST en esta publicación. Espero que puedas SELECT las soluciones adecuadas para tu proyecto DISTINCT FROM las pautas que figuran aqu��. Si si tienes preguntas, ÚNETE al servidor de Discord de GA DONDE son bienvenidas las consultas.