> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Google Analytics 4 Audiences

> Sincronice audiencias de Google Analytics 4 con Kameleoon para segmentar a los visitantes en función de segmentos de GA4 en sus experimentos y personalizaciones.

Este artículo describe cómo crear un puente entre Kameleoon y Google Analytics 4 (GA4) para identificar a los visitantes dentro de las audiencias de GA4 y segmentarlos en consecuencia.

## Requisitos previos

Para que esta integración funcione, debe enviar la siguiente información a su Customer Success Manager, ya que es necesaria para configurar el puente en su cuenta de Kameleoon:

* Las credenciales de una cuenta de servicio en formato JSON. **Utilice una herramienta de compresión para proteger este archivo con una contraseña y luego envíe el paquete por separado de su contraseña.**
* El [property ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id) de su proyecto.
* El [sitecode](../../../faq#how-do-i-find-my-sitecode) de su proyecto de Kameleoon.

## Paso 1: Configurar la autenticación a través de una cuenta de servicio

Para otorgar a una cuenta de usuario técnico acceso a una cuenta de Google Analytics y privilegios para recuperar datos a través de las APIs disponibles, se requiere lo siguiente:

* Una cuenta de correo electrónico con acceso de administrador a Google Analytics que se utilizará para generar un proyecto y una cuenta de servicio.
* Acceso a todas las audiencias requeridas (en GA4) para esta cuenta.

### Crear un proyecto en Google Cloud Console

Debe crear un nuevo proyecto en Google Cloud Console para activar las APIs y crear tokens.

Vaya a [esta](https://console.cloud.google.com/home) URL. Inicie sesión en una cuenta de correo electrónico de administrador y cree un nuevo proyecto.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/0.png)
</Frame>

Nombre el proyecto y elija su organización y ubicación.

### Activar las APIs apropiadas

Para utilizar cualquier API con una dirección de correo electrónico determinada, debe activarse en Google Cloud Console. Primero, haga clic en **Library**.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/1.png)
</Frame>

Busque estas tres APIs en la barra de búsqueda y actívelas:

* Google Analytics Reporting API
* Google Analytics Data API
* Google Analytics API

### Crear una cuenta de servicio

Para automatizar completamente las peticiones a la API de informes de GA4, debe crear una cuenta de servicio que evite la necesidad de un callback de autenticación.

Para crear esta cuenta, haga clic en **IAM & Admin** > **Service accounts**.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/2.png)
</Frame>

A continuación, haga clic en **Create service account**.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/3.png)
</Frame>

Después, introduzca un nombre para la cuenta. El correo electrónico del servicio se generará automáticamente. Debería añadir una descripción para que el propósito de la cuenta quede claro.

A continuación, elija el rol para la cuenta de servicio. Recomendamos elegir **viewer**, ya que el puente de Kameleoon solo requiere el uso de las APIs de Google y no de los recursos del proyecto directamente.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/4.png)
</Frame>

Una vez creada la cuenta, haga clic en **Keys**.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/5.png)
</Frame>

A continuación, haga clic en **Add key** > **Create a new key** para generar una clave descargable.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/6.png)
</Frame>

Elija el formato **JSON** y haga clic en **Create** para generar la clave.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/7.png)
</Frame>

La clave se descarga en su máquina.

A continuación, envíe estas credenciales en formato JSON a su Customer Success Manager de Kameleoon. **Utilice una herramienta de compresión para proteger este archivo con una contraseña y luego envíe la contraseña por separado del archivo**.

### Otorgar permisos de Viewer de cuenta de servicio para su propiedad

Para acceder a la página Property Access Management en Google Analytics 4:

1. Inicie sesión en su cuenta de GA4.
2. Seleccione la propiedad GA4 específica que quiere gestionar.
3. Acceda a la configuración de administrador.
4. Busque la opción **Property User Management** o **Property Access Management**.
5. Haga clic en **+** > **Add user**.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/8.png)
</Frame>

6. En el campo **Email addresses**, introduzca la dirección de correo electrónico asociada a la cuenta de servicio que requiere acceso.
7. En la sección **Standard roles**, seleccione **Viewer**.
8. Haga clic en **Add**.

## Paso 2: Enviar los visitorcodes de Kameleoon en una dimensión personalizada de GA4

A continuación, debe configurar el puente para enviar el `visitorCode` de Kameleoon de cada visitante a GA4 mediante una dimensión personalizada.

### Utilizando gtag.js

#### 1. Enviar el visitorCode a GA4

El siguiente código debe añadirse en la sección [global custom script de Kameleoon](../../../project-management/manage-your-projects#configuration):

```javascript theme={null}
      if (Kameleoon.API.CurrentVisit.pageViews === 1) {
    Kameleoon.API.Core.runWhenConditionTrue(
      function () {
        return typeof window.google_tag_data !== "undefined";
      },
      function () {
        gtag.push({ 'event': 'Kameleoon Visitor Code', 'kameleoon_visitor_code': Kameleoon.API.Visitor.code });
      },
      500
    );
  }
```

#### 2. Crear la dimensión personalizada en GA4

Debe crear una dimensión personalizada que se utilizará para recibir el `visitorCode` de Kameleoon de cada visitante. Establezca el ámbito de la dimensión en **User**, nómbrela **Kameleoon Visitor Code** e introduzca **`kameleoon_visitor_code`** como propiedad de usuario.

### Utilizando Google Tag Manager

#### 1. Enviar el visitorCode al dataLayer

El siguiente código debe añadirse en la sección [global custom script de Kameleoon](../../../project-management/manage-your-projects#configuration).

```javascript theme={null}
 if (Kameleoon.API.CurrentVisit.pageViews === 1) {
   Kameleoon.API.Core.runWhenConditionTrue(
     function () {
       return typeof window.google_tag_manager !== "undefined";
     },
     function () {
       dataLayer.push({ 'event': 'Kameleoon Visitor Code', 'kameleoon_visitor_code': Kameleoon.API.Visitor.code });
     },
     500
   );
 }
```

#### 2. Añadir la variable de GTM

Primero, debe crear una variable en GTM para el `visitorCode` de Kameleoon. Vaya a **Variables** y cree una nueva Data Layer Variable.

* **Name:** `kameleoon_visitor_code`
* **Variable configuration:**
  * **Type:** Data Layer Variable
  * **Data Layer Variable Name:** Kameleoon Visitor Code

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-source/analytics/google-analytics-4-audiences/Capture-decran-2024-07-22-a-12.03.17.png)
</Frame>

La variable debe configurarse para recuperar el valor del Data Layer.

#### 3. Crear un tag en GTM

A continuación, debe crear un tag y enviar estos datos a GA4.

##### 1. Crear una variable

1. **Ir a GTM:** Abra Google Tag Manager y vaya a su contenedor.
2. **Ir a Variables:** En el menú de la izquierda, haga clic en **Variables**.
3. **Crear una nueva variable:** En **User-Defined Variables**, haga clic en **New**.
4. **Seleccionar tipo de variable:** Haga clic en **Variable Configuration** y elija **Data Layer Variable**.
5. **Configurar la variable:**
   * **Name:** `kameleoon_visitor_code`
   * **Variable type:** Data Layer Variable
   * **Data Layer Variable Name:** Kameleoon Visitor Code
6. **Guarde** la variable.

##### 2. Crear un trigger

1. **Ir a Triggers:** En el menú de la izquierda, haga clic en **Triggers**.
2. **Crear un nuevo trigger:** Haga clic en **New**.
3. **Seleccionar tipo de trigger:** Haga clic en **Trigger Configuration** y elija **Custom Event**.
4. **Configurar el trigger:**
   * **Trigger name:** Asigne un nombre descriptivo a su trigger (por ejemplo, "Page Type is Product").
   * **Event name:** Introduzca el nombre del evento en el que quiere basar el trigger, o déjelo vacío si desea que el trigger se active en cualquier evento.
   * **This trigger fires on:** Elija **Some Custom Events**.
   * **Conditions:** Establezca la condición para su variable `dataLayer`.

La regex corresponde a su código de visitante: `/^[a-z0-9]{16}$/`

5. **Guardar el trigger:** Haga clic en **Save**.

##### 3. Adjuntar el trigger a un tag

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-source/analytics/google-analytics-4-audiences/step4-1536x988.png)
</Frame>

1. **Ir a Tags:** En el menú de la izquierda, haga clic en **Tags**.
2. **Crear o editar un tag:** Cree un tag o edite uno existente.
3. **Adjuntar el trigger:**
   * En la configuración del tag, desplácese hasta la sección **Triggering**.
   * Haga clic en **Triggering** y seleccione el trigger que creó.
4. **Guardar el tag:** Haga clic en **Save**.

## Paso 3: Crear un dato personalizado para utilizar sus audiencias de GA4 en Kameleoon

Para utilizar sus audiencias de GA4 en Kameleoon, debe configurar un [dato personalizado](../../../assets/custom-data/create-custom-data) en Kameleoon.

Nombre su dato personalizado **GA4 Audiences** y elija el método de adquisición **Custom JavaScript code**.

El dato personalizado debe establecerse con los tipos **list of** y **strings**, y el ámbito puede establecerse en **visit** o **page** (cuando se establece en **page**, se reevalúa en cada carga de página).

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/9.png)
</Frame>

Utilice el siguiente código en el método de adquisición del dato personalizado:

```javascript theme={null}
 Kameleoon.API.Data.retrieveDataFromRemoteSource(Kameleoon.API.Visitor.code, function(data) {
     for (const [key, value] of Object.entries(data)) {
         Kameleoon.API.Data.setCustomData('GA4 Audiences',key)
     }
 });
 return { "value": null} 
```

Haga clic en **Next** y active la opción **Save the values for the targeting condition associated with the custom data point**. Añada el siguiente código JavaScript y sustituya `[SITECODE]` por el sitecode de Kameleoon. Para encontrar su sitecode, consulte [este](../../../faq#how-do-i-find-my-sitecode) artículo.

Además, asegúrese de sustituir `[WEB_PROPERTY]` por el [property ID de GA4](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id) correcto.

```javascript theme={null}
var xhr = new XMLHttpRequest();

xhr.open(
  "GET",
    "https://integrations.kameleoon.com/ga4-audience?sitecode=[SITECODE]&web_property=[WEB_PROPERTY]",
  false
);

var GA4Audiences = [];

xhr.onreadystatechange = function () {
  if (this.readyState === XMLHttpRequest.DONE && this.status === 200) {
    var audiences = JSON.parse(xhr.response);

    audiences.map(function (audience) {
      if (audience) {
        GA4Audiences.push({ value: audience, label: audience });
      }
    });
  }
};

xhr.send();

return GA4Audiences;
```

Haga clic en **Save** para crear el dato personalizado.

Ahora puede utilizar sus audiencias de GA4 en nuestro Segment builder para segmentar a los visitantes en campañas de Kameleoon eligiendo el dato personalizado en nuestro Segment builder y seleccionando **is among the values**, lo que mostrará una lista de todos los nombres de audiencia de GA4.

<Frame>
  ![](https://storage.googleapis.com/kameleoon-storage-documentation/user-manual/images/integrations/as-a-destination/analytics/google-analytics-4/google-analytics-4-audiences/10.png)
</Frame>

### External segment sync para servidor

Si desea utilizar audiencias de GA4 con uno de los SDKs de Kameleoon, debe seguir las pautas de la documentación de cada SDK y utilizar el método [`getRemoteData()`](../../../../developer-docs/sdks/mobile-sdks/ios-sdk#getremotedata).
