Integración con Google Analytics
Envía el mismo ID de usuario a Google Analytics 4 y a Pushwoosh, y ambas herramientas tratarán a una persona que visita tu sitio web o tu aplicación como un único usuario. Así podrás enviar mensajes a los usuarios que analizas en Google Analytics y crear segmentos de Pushwoosh a partir de datos de Google Analytics.
Resumen de la integración
Anchor link toTipo de integración
Anchor link toDestino: las audiencias de Google Analytics y la exportación de Google Analytics a BigQuery se convierten en segmentos de Pushwoosh. El ID de usuario llega a cada herramienta por separado desde tu sitio web o tu aplicación. Pushwoosh no envía datos a Google Analytics.
Requisitos previos
Anchor link to- Una cuenta de Pushwoosh y el SDK de Pushwoosh (Web, Android o iOS) en el sitio web o la aplicación desde los que envías el ID de usuario.
- Una propiedad de Google Analytics 4 que recopile datos del mismo sitio web o aplicación.
Para importar audiencias de Google Analytics, también necesitas:
- Una cuenta de servicio de Google Cloud y su clave JSON. Consulta Create and delete service account keys.
- Google Analytics Data API y Admin API habilitadas en el proyecto de esa cuenta de servicio.
- El rol Viewer para la cuenta de servicio en la propiedad de Google Analytics. Consulta Add, edit, and delete users and user groups.
Para consultar la exportación de BigQuery, también necesitas:
- La propiedad de Google Analytics 4 vinculada a BigQuery. Consulta Set up BigQuery Export.
- Una clave de cuenta de servicio con los roles BigQuery Data Viewer y BigQuery Job User. Consulta BigQuery roles and permissions.
¿Cómo funciona la integración?
Anchor link toPushwoosh relaciona a los usuarios por su ID:
- Tu sitio web o tu aplicación envía el mismo ID de usuario a Google Analytics y a Pushwoosh.
- Pushwoosh lee los ID de usuario de una audiencia de Google Analytics o de tu exportación de BigQuery.
- Un usuario entra en el segmento cuando su ID coincide con un User ID de Pushwoosh.
El segmento se actualiza de forma distinta según la fuente:
- Un segmento creado a partir de una audiencia se actualiza aproximadamente una vez al día mientras lo usas.
- Un segmento creado a partir de BigQuery refleja la actividad hasta el día anterior.
Configuración de la integración
Anchor link toLa configuración tiene dos partes. Primero, tus desarrolladores envían el ID de usuario desde tu sitio web o tu aplicación. Después, creas un segmento a partir de datos de Google Analytics en el Control Panel.
- Junto con tus desarrolladores, elige el ID de usuario.
- Tus desarrolladores lo envían a Google Analytics y a Pushwoosh desde tu sitio web o tu aplicación móvil.
- Opcionalmente, crea un segmento de Pushwoosh a partir de datos de Google Analytics. Después podrás usarlo como cualquier otro segmento.
Envía el ID de usuario a Google Analytics y a Pushwoosh
Anchor link toEsta parte la hacen tus desarrolladores. Comparte con ellos las secciones siguientes.
Elige el ID de usuario
Anchor link toUsa un identificador que tu propio sistema ya tenga para cada usuario, como el ID de cuenta de tu base de datos. El mismo valor se envía a Google Analytics como su ID de usuario y a Pushwoosh como User ID.
Establece el ID en el momento en que el usuario inicia sesión o se identifica de otro modo.
Envía el ID de usuario desde tu sitio web
Anchor link toPasa el ID a Google Analytics en el parámetro user_id de tu etiqueta de Google. Si usas Google Tag Manager, establece en su lugar el campo user_id en la configuración de tu etiqueta de Google. Consulta Send user IDs en la documentación de Google.
gtag('config', 'G-XXXXXXXXXX', { 'user_id': 'USER_ID'});Pasa el mismo ID a Pushwoosh con el Web Push SDK:
Pushwoosh.push((api) => { api.registerUser('USER_ID');});Envía el ID de usuario desde tu aplicación móvil
Anchor link toLas aplicaciones móviles envían datos a Google Analytics 4 a través de Firebase. Establece el ID con setUserId de Firebase Analytics (consulta Set a user ID en la documentación de Firebase) y establece el mismo valor con el SDK de Pushwoosh.
Android
Anchor link toFirebaseAnalytics.getInstance(context).setUserId("USER_ID");Pushwoosh.getInstance().setUserId("USER_ID");Analytics.setUserID("USER_ID")Pushwoosh.sharedInstance().setUserId("USER_ID")Crea un segmento a partir de datos de Google Analytics
Anchor link toEsta parte la haces tú en el Control Panel, después de que tus desarrolladores envíen el ID de usuario. Pushwoosh puede convertir los datos de Google Analytics en un segmento de dos formas, ambas mediante segmentos externos:
- Importar una audiencia de Google Analytics: elige una audiencia que ya hayas creado en Google Analytics. No necesitas SQL ni BigQuery.
- Consultar la exportación de BigQuery: escribe tu propio SQL sobre los eventos sin procesar que Google Analytics exporta a BigQuery, para condiciones que una audiencia no puede expresar.
Importar una audiencia de Google Analytics
Anchor link toPide a tu desarrollador o al administrador de Google Cloud que realice estos pasos en Google Cloud y Google Analytics:
- Prepara una cuenta de servicio y su clave JSON. Consulta Create and delete service account keys en la documentación de Google Cloud.
- En el proyecto de Google Cloud de la cuenta de servicio, habilita Google Analytics Data API y Google Analytics Admin API.
- En Google Analytics, ve a Admin → Property access management y añade el correo electrónico de la cuenta de servicio con el rol Viewer. Un rol otorgado en Google Cloud IAM no da acceso a Google Analytics.
Después, realiza estos pasos en el Control Panel:
-
Crea un segmento externo con el Tipo de base de datos establecido en Google Analytics 4 audience.
-
Introduce el ID de propiedad de GA4. Puedes encontrarlo en Google Analytics en Admin → Property details.
-
Pega la clave JSON de la primera lista en Service account JSON.
-
Haz clic en Cargar audiencias y elige la Audiencia.

-
Haz clic en Comprobar conexión.
-
Haz clic en Crear.
Pushwoosh actualiza el segmento cuando lee el segmento completo, por ejemplo, cuando le envías una campaña o un journey o cuando calculas su tamaño:
- Si los datos tienen menos de 24 horas, Pushwoosh los usa tal cual, porque Google Analytics actualiza la pertenencia a la audiencia aproximadamente una vez al día.
- Si tienen más de 24 horas, Pushwoosh usa los datos actuales y actualiza el segmento en segundo plano.
- Si tienen más de 72 horas, Pushwoosh espera a que termine la actualización.
No puedes actualizar el segmento más de una vez al día. Si no se ha actualizado desde hace más de un día, calcula el tamaño del segmento un tiempo antes del envío. Esto inicia la actualización en segundo plano, de modo que el envío use datos más recientes.
Consultar la exportación de BigQuery
Anchor link toSi exportas tus datos de Google Analytics 4 a BigQuery, puedes seleccionar usuarios con cualquier condición SQL sobre sus eventos, por ejemplo, todos los que realizaron una compra en los últimos 30 días.
Pide a tu desarrollador o al administrador de Google Cloud que realice estos pasos en Google Cloud y Google Analytics:
-
Vincula tu propiedad de Google Analytics 4 a un proyecto de BigQuery y activa la exportación diaria. Sigue Set up BigQuery Export en la documentación de Google.
A partir de ahí, Google Analytics escribe los eventos de cada día en una tabla llamada
events_YYYYMMDDdentro de un conjunto de datos llamadoanalytics_<property ID>. El ID de usuario que enviaste en las secciones anteriores está en la columnauser_id. -
Crea una clave de cuenta de servicio con los roles BigQuery Data Viewer y BigQuery Job User. Comprobar conexión y Comprobar consulta ejecutan un trabajo de consulta de prueba en tu proyecto, por lo que fallan sin BigQuery Job User.
Después, en el Control Panel, crea un segmento externo con el Tipo de base de datos establecido en Google BigQuery. Introduce la clave de cuenta de servicio para la conexión y una consulta que devuelva los ID de usuario de los usuarios que quieres.
Por ejemplo, esta consulta devuelve los usuarios que realizaron una compra en los últimos 30 días. Sustituye my-project por el ID de tu proyecto de Google Cloud y analytics_123456789 por el nombre de tu conjunto de datos:
SELECT DISTINCT user_idFROM `my-project.analytics_123456789.events_*`WHERE event_name = 'purchase' AND user_id IS NOT NULL AND _TABLE_SUFFIX >= FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY))El segmento refleja la actividad hasta el día anterior, porque Google Analytics exporta los datos una vez al día.
¿Cómo saber si la integración está funcionando?
Anchor link to- ID de usuario: en Pushwoosh, ve a Audiencia → Explorador de usuarios y busca por User ID un ID que hayas enviado a Google Analytics. Si se encuentra el usuario, ambas herramientas tienen el mismo ID.
- Segmentos: en Audiencia → Segmentos externos, el estado del segmento es válido. Para ver cuántos usuarios coincidieron, comprueba el tamaño del segmento.
Solución de problemas
Anchor link toCargar audiencias o Comprobar conexión muestra un error
Anchor link toAmbos botones inician sesión con la clave de la cuenta de servicio y leen la lista de audiencias de la propiedad, y el formulario muestra el error que devuelve Google Analytics. Comprueba que:
- Service account JSON es una clave de cuenta de servicio. Otros archivos de credenciales de Google se rechazan.
- ID de propiedad de GA4 es el número de Admin → Property details.
- La cuenta de servicio tiene el rol Viewer en Google Analytics, en Admin → Property access management. Un rol otorgado en Google Cloud IAM no cuenta.
- Google Analytics Admin API está habilitada en el proyecto de Google Cloud de la cuenta de servicio.
La lista de audiencias está vacía
Anchor link toLa propiedad aún no tiene audiencias. Crea una en Google Analytics en Admin → Audiences y vuelve a hacer clic en Cargar audiencias.
Nadie entra en el segmento
Anchor link to- Asegúrate de que Google Analytics Data API está habilitada. Comprobar conexión no la prueba, pero Pushwoosh la necesita para leer los miembros de la audiencia.
- Asegúrate de que tu sitio web o tu aplicación envía el mismo ID de usuario a Google Analytics y a Pushwoosh. Solo entran en el segmento los usuarios cuyo ID de usuario de Google Analytics coincide con un User ID de Pushwoosh. Los usuarios que Google Analytics solo conoce por su ID de cliente anónimo no entran.
Comprobar conexión o Comprobar consulta falla para BigQuery
Anchor link toAmbas comprobaciones ejecutan un trabajo de consulta de prueba en tu proyecto de Google Cloud sin leer ningún dato. Comprueba que:
- La cuenta de servicio tiene los dos roles, BigQuery Data Viewer y BigQuery Job User. Sin BigQuery Job User, ninguna de las dos comprobaciones puede ejecutarse.
- La consulta usa el ID de tu proyecto y el nombre del conjunto de datos
analytics_<property ID>, y la exportación ya ha escrito al menos una tabla diariaevents_YYYYMMDD. - La consulta devuelve exactamente una columna, llamada
user_id.