Enviar eventos de Measurement Protocol a Google Analytics

En esta guía te explicamos cómo puedes enviar eventos web y de flujo de aplicación de Google Analytics Measurement Protocol a un servidor de Google Analytics. De esta forma, podrás ver eventos de Measurement Protocol en tus informes de Google Analytics.

Elige la plataforma que quieres ver en esta guía:

Measurement Protocol para Google Analytics 4 solo admite solicitudes POST de HTTP.

Para enviar un evento, usa este formato:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>

Debes proporcionar la siguiente información en la URL de la solicitud:

  • api_secret: el SECRETO DE API generado en la UI de Google Analytics.

    Para crear un secreto, ve a Administrar > Flujos de datos > elige un flujo > Measurement Protocol > Crear.

  • firebase_app_id: el ID de la aplicación de Firebase, que se encuentra en la consola de Firebase, en Configuración del proyecto > General > Tus aplicaciones > ID de aplicación.

    El elemento firebase_app_id no es igual que app_instance_id. firebase_app_id identifica tu aplicación, mientras que app_instance_id identifica una única descarga de la aplicación.

Consulta la referencia completa de los parámetros de consulta.

Debes proporcionar la siguiente información en el cuerpo de la solicitud:

  • user_id: opcional. Identificador único de un usuario. Solo puede contener caracteres UTF-8. Consulta el artículo sobre User-ID en análisis multiplataforma para obtener más información sobre este identificador.

  • consent: opcional. Consulta cómo definir la configuración del consentimiento.

  • events: array de elementos de eventos. Puede incluir varios eventos en una solicitud.

    Para que la actividad de usuario se muestre en informes como En tiempo real, se deben proporcionar engagement_time_msec y session_id como parte de los params de un event.

    Por ejemplo:

  {
   
"app_instance_id": "12345678901234567890123456789012",
   
"events": [
     
{
       
"name": "campaign_details",
       
"params": {
         
"campaign_id": "google_1234",
         
"campaign": "Summer_fun",
         
"source": "google",
         
"medium": "cpc",
         
"term": "summer+travel",
         
"content": "logolink",
         
"session_id": "123",
         
"engagement_time_msec": "100"
       
}
     
}
   
]
 
}

Aunque session_start es un nombre de evento reservado, al crear un session_id se creará otra sesión sin necesidad de enviar session_start. Consulta cómo se contabilizan las sesiones.

Pruébalo

Aquí tienes un ejemplo que puedes usar para enviar un evento tutorial_begin a tu servidor de Google Analytics:

const firebase_app_id = `1:1234567890:android:321abc456def7890`;
const api_secret = `<secret_value>`;

fetch
(`https://www.google-analytics.com/mp/collect?firebase_app_id=${firebase_app_id}&api_secret=${api_secret}`, {
  method
: "POST",
  body
: JSON.stringify({
    app_instance_id
: 'app_instance_id',
    events
: [{
      name
: 'tutorial_begin',
     
params: {},
   
}]
 
})
});

El formato de firebase_app_id es específico de cada plataforma. Consulta ID de aplicación en Objetos y archivos de configuración de Firebase.

Limitaciones

Estas son las limitaciones que se aplican al enviar eventos de Measurement Protocol a Google Analytics:

  • Las solicitudes pueden tener un máximo de 25 eventos.
  • Los eventos pueden tener un máximo de 25 parámetros.
  • Los eventos pueden tener un máximo de 25 propiedades de usuario.
  • Los nombres de las propiedades de usuario deben tener 24 caracteres como máximo.
  • Los valores de las propiedades de usuario deben tener 36 caracteres como máximo.
  • Los nombres de los eventos deben tener 40 caracteres como máximo, solo pueden contener caracteres alfanuméricos y guiones bajos, y deben empezar por un carácter alfabético.
  • Los nombres de los parámetros, incluidos los parámetros relativos a artículos, deben tener 40 caracteres como máximo, solo pueden contener caracteres alfanuméricos y guiones bajos, y deben empezar por un carácter alfabético.
  • Los valores de los parámetros, incluidos los valores de los parámetros relativos a artículos, deben tener un máximo de 100 caracteres.
  • Cada parámetro relativo a un artículo puede tener un máximo de 10 parámetros personalizados.
  • El cuerpo de la publicación debe tener un tamaño inferior a 130 kB.
  • La atribución a nivel de evento de los eventos de Measurement Protocol se admite hasta 63 días después del evento online de etiquetado más reciente en el caso de la exportación de conversiones a Google Ads y otras integraciones de medios, incluso si la ventana de conversión del evento supera los 63 días. Por el contrario, la atribución a nivel de evento en el caso de eventos online de etiquetado se admite durante toda la ventana de conversión.
  • Con fines de remarketing, puedes unir eventos de Measurement Protocol durante los días que se indican a continuación después del evento online más reciente con una cookie asociada o un ID de dispositivo:
    • Flujo web: 30 días
    • Flujo de aplicación: 42 días
  • Los eventos de aplicación de Measurement Protocol que se envían a Google Analytics 4 no se suman a las audiencias de usuarios de aplicaciones para la Red de Búsqueda en Google Ads.