Seguimiento de conversiones

Implementación

Resumen

La implementación del seguimiento de conversiones consta de tres partes:

  1. Recopilar el rwg_token de la página de destino o el punto de entrada de la app
  2. Conservar el rwg_token para la ventana de atribución adecuada
  3. Cómo enviar un evento de conversión durante la confirmación de la compra

Esta implementación del seguimiento de conversiones no requiere que utilice Google Analytics ni ningún otro JavaScript de terceros.

Antes de comenzar a trabajar en la implementación del seguimiento de conversiones, debe decidir si realiza el seguimiento de las conversiones a nivel del dispositivo o del usuario:

  • El nivel del dispositivo incluye el uso de cookies del navegador, almacenamiento local, almacenamiento local de la app o cualquier otro método que pueda conservar el token durante la ventana de atribución de 30 días. Debido a que el token se almacenará de forma local en el dispositivo del usuario, si el usuario cambia el dispositivo que usa, borra su almacenamiento local o las cookies, o utiliza un modo de navegación privada o incógnito, es posible que el evento de conversión no se atribuya correctamente. Cuando utilice el seguimiento de conversiones a nivel del dispositivo, debe volver a implementarlo en todas las plataformas compatibles (incluidos los dispositivos móviles).
  • El nivel del usuario incluye la persistencia en la base de datos de tu aplicación, a través de un sistema de estadísticas del servidor o de otros sistemas del servidor. Debido a que el token se almacenará en el servidor, si el usuario cambia el dispositivo que usa, borra su almacenamiento local o las cookies, o usa un modo de navegación privada o incógnito, el evento de conversión se atribuirá una vez que el usuario vuelva a acceder. Cuando usas el seguimiento de conversiones a nivel del usuario, según la arquitectura de tu sistema, es posible que puedas implementarlo una vez en el servidor y volver a utilizarlo en todas las plataformas compatibles.

Recopilando rwg_token

Cada vez que Google muestre un action_link que proporcionaste a través de Feeds, esa URL se modificará para incluir un parámetro de búsqueda único: rwg_token. El valor rwg_token es una string codificada que contiene algunos metadatos sobre el vínculo en el que hizo clic el usuario. Almacenarás este token y lo pasarás como parte del evento de conversión.

En cada página de destino o punto de entrada de la app, debes analizar el valor establecido para el parámetro de búsqueda rwg_token y almacenarlo. Los requisitos para almacenar este parámetro se describen en el paso Persistencia de rwg_token.

A continuación, se incluye un ejemplo de cómo se puede analizar este token para el seguimiento a nivel del dispositivo a través del navegador. Como alternativa, puedes recopilar este token en el servidor cuando respondas a la solicitud:

<script>
  var query = location.search.substring(1);
  var params = query.split('&');
  var rwgToken = undefined;
  for (var i = 0; i < params.length; ++i) {
    var pair = params[i].split('=');
    if (pair[0] == 'rwg_token') {
      rwgToken = decodeURIComponent(pair[1]);
      break;
    }
  }
</script>

Conservar el rwg_token

Se te pedirá que conserves el parámetro de URL rwg_token, que se agregará a todos los vínculos de acciones que proporciones, por un período total de 30 días. El valor de rwg_token debe almacenarse y mostrarse sin modificaciones. Si hay un token existente de una visita anterior, se debe reemplazar el anterior y se debe restablecer el período de 30 días para el almacenamiento.

Cuando se conserva el token, puedes almacenarlo a nivel del dispositivo o del usuario:

  • El nivel del dispositivo incluye el uso de cookies del navegador, almacenamiento local, almacenamiento local de la app o cualquier otro método que pueda conservar el token durante la ventana de atribución de 30 días.
  • El nivel de usuario incluye la persistencia en la base de datos de tu aplicación, a través de un sistema de estadísticas del servidor o de otros sistemas del servidor.

A continuación, se muestra un ejemplo de seguimiento de conversiones a nivel del dispositivo que almacena este token en un navegador web a través de una cookie propia. En este ejemplo, se supone que analizaste el valor del token en una variable, como en el ejemplo anterior. Para usar este ejemplo, deberás actualizar “rootdomain” a tu dominio.

<script>
  if (typeof rwg_token !== 'undefined') {
    document.cookie =
    "_rwg_token=" + rwg_token + ";max-age=2592000;domain=rootdomain.com;path=/";
  }
</script>

Cuando se usa el seguimiento de conversiones a nivel del usuario, rwg_token debe almacenarse en el servidor y asociarse con el usuario.

Cómo enviar datos de conversiones

Cuando un usuario completa una transacción que se puede atribuir a un vínculo de acción de Google Place, debes enviar una solicitud HTTP POST al extremo de conversión. Hay dos extremos, uno para el entorno de producción y otro para el entorno de zona de pruebas.

  • Producción: https://www.google.com/maps/conversion/collect
  • Zona de pruebas: https://www.google.com/maps/conversion/debug/collect

El cuerpo de la entrada debe ser un objeto con codificación JSON en el siguiente formato:

{
  'conversion_partner_id': partnerId,
  'rwg_token': <rwg_token_val>
}

Tanto en el entorno de la zona de pruebas como en el de producción, deberás proporcionar un rwg_token válido cuando envíes un evento de conversión. Para realizar pruebas en el entorno de la zona de pruebas, puedes usar el siguiente token de prueba.

ADQ7psRE9YyDSVR6YpfD-fYdxoFYVKS1xeTvXdSxqF8a3bnk0W62eMEnUjoNPwjhNHG0elwBnM1awTjr9vXET8yOowCeuODjwA==

A continuación, se incluye un ejemplo completo del seguimiento de conversiones a nivel del dispositivo (con una cookie en el dispositivo del usuario) en JavaScript sobre cómo realizar esta solicitud de publicación:

const partnerId = XXXXXXXXXX;
const endpoint = `https://www.google.com/maps/conversion/collect`;

const rwgTokenCookie = document.cookie
  .split('; ')
  .find(row => row.startsWith('_rwg_token='));

if (typeof rwgTokenCookie !== 'undefined') {
  const rwgTokenVal = rwgTokenCookie.split('=')[1];
  fetch(endpoint, {
    method: "POST",
    body: JSON.stringify({
      conversion_partner_id: partnerId,
      rwg_token: rwgTokenVal
    })
  });
}

Cuando usas el seguimiento de conversiones a nivel del usuario, debes recuperar el token asociado con el usuario (independientemente de la superficie en la que se encuentre) del mecanismo de almacenamiento del servidor y enviar el token con los mismos extremos de producción o de zona de pruebas.

Requisitos de atribución de conversiones

El estándar de Google requerido para la atribución de conversiones es una ventana de atribución de 30 días para cualquier interacción con un vínculo de lugar, en cualquier tienda.

Esta ventana de atribución significa que esperamos que se envíe un evento de conversión en cualquiera de las siguientes situaciones:

  • Un usuario sigue un vínculo de acción de lugar y realiza un pedido en la misma sesión.
  • Un usuario sigue un vínculo de acción de lugar y, luego, regresa de un canal diferente en un plazo de 30 días para realizar un pedido.
  • Un usuario sigue un vínculo de acción de lugar y, luego, realiza un pedido en una tienda diferente, ya sea dentro de la misma sesión o en una sesión diferente en un período de 30 días.

Además, esperamos que los eventos de conversión se envíen desde todas las plataformas a las que un usuario puede llegar desde un vínculo de acción de lugar. Que incluyen:

  • Aplicaciones web para computadoras o dispositivos móviles
  • Aplicaciones para dispositivos móviles, ya sea a través de un vínculo directo a la aplicación o de un intent registrado para su dominio

Si el token se almacena a nivel del usuario (consulta Conservar el token), se espera que proporciones atribución en varios dispositivos. Es decir, un usuario que sigue un vínculo de acción desde la computadora de escritorio y, luego, completa la transacción en un dispositivo móvil (con la misma cuenta de usuario), debería activar un evento de conversión.

Si el token se almacena exclusivamente a nivel del dispositivo, como en el caso de las cookies del navegador, no se espera que proporciones la atribución en varios dispositivos. En este caso, cada dispositivo tendría un token independiente persistente si el usuario hubiera seguido un vínculo de acción en ese dispositivo y cada dispositivo siguiera las reglas de atribución por separado.