Suivi des conversions

Implémentation

Résumé

L'implémentation du suivi des conversions se compose de trois éléments:

  1. Collecter l'élément rwg_token à partir de la page de destination ou du point d'entrée de l'application
  2. Conserver rwg_token pendant la période d'attribution appropriée
  3. Envoyer un événement de conversion lors du règlement

Cette implémentation du suivi des conversions ne nécessite pas l'utilisation de Google Analytics ni de code JavaScript tiers.

Avant de commencer à mettre en œuvre le suivi des conversions, vous devez décider si vous allez effectuer le suivi des conversions au niveau de l'appareil ou de l'utilisateur:

  • Le niveau de l'appareil inclut l'utilisation des cookies du navigateur, du stockage local, de l'application ou de toute autre méthode pouvant conserver le jeton pendant la période d'attribution de 30 jours. Étant donné que le jeton est stocké localement sur l'appareil de l'utilisateur, s'il change d'appareil, efface ses cookies/stockage locaux, ou s'il utilise une navigation privée ou le mode navigation privée, l'événement de conversion risque de ne pas être correctement attribué. Lorsque vous utilisez le suivi des conversions au niveau de l'appareil, vous devez le réimplémenter sur toutes les surfaces compatibles (y compris les appareils mobiles).
  • Le niveau utilisateur inclut leur persistance dans la base de données de votre application, via un système d'analyse côté serveur ou d'autres systèmes côté serveur. Étant donné que le jeton est stocké côté serveur, si l'utilisateur change d'appareil, efface son espace de stockage ou ses cookies locaux, ou utilise une navigation privée ou le mode navigation privée, l'événement de conversion sera quand même attribué une fois que l'utilisateur se reconnectera. Lorsque vous utilisez le suivi des conversions au niveau de l'utilisateur, selon l'architecture de votre système, vous pouvez peut-être mettre en œuvre ce suivi une seule fois côté serveur et le réutiliser sur toutes les surfaces compatibles.

Collecter les rwg_token

Chaque fois que Google affiche un action_link que vous avez fourni via les flux, cette URL est modifiée pour inclure un paramètre de requête unique: rwg_token. La valeur rwg_token est une chaîne encodée qui contient des métadonnées concernant le lien sur lequel l'utilisateur a cliqué. Vous allez stocker ce jeton et le transmettre dans l'événement de conversion.

Sur chaque page de destination / point d'entrée de l'application, vous devez analyser l'ensemble de valeurs du paramètre de requête rwg_token et le stocker. Les exigences pour le stockage de ce paramètre sont décrites à l'étape Conserver rwg_token.

Vous trouverez ci-dessous un exemple d'analyse de ce jeton pour le suivi au niveau de l'appareil via le navigateur. Vous pouvez également collecter ce jeton côté serveur lorsque vous répondez à la requête:

<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>

Conserver rwg_token

Vous devrez conserver le paramètre d'URL rwg_token, qui sera ajouté à tous les liens d'action que vous avez fournis, pendant une durée totale de 30 jours. La valeur de rwg_token doit être stockée et renvoyée sans aucune modification. Si un jeton existant a été conservé lors d'une visite précédente, l'ancien jeton doit être remplacé et la période de stockage de 30 jours doit être réinitialisée.

Lorsque vous conservez le jeton, vous pouvez le stocker au niveau de l'appareil ou de l'utilisateur:

  • Le niveau de l'appareil inclut l'utilisation des cookies du navigateur, du stockage local, du stockage local dans l'application ou de toute autre méthode pouvant conserver le jeton pendant la période d'attribution de 30 jours.
  • Le niveau utilisateur inclut leur persistance dans la base de données de votre application, via un système d'analyse côté serveur ou d'autres systèmes côté serveur.

Vous trouverez ci-dessous un exemple de suivi des conversions au niveau de l'appareil où ce jeton est stocké dans un navigateur Web via un cookie propriétaire. Cet exemple suppose que vous avez analysé la valeur du jeton dans une variable, comme dans l'exemple ci-dessus. Pour utiliser cet exemple, vous devez remplacer "rootdomain" par votre domaine.

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

Lorsque vous utilisez le suivi des conversions au niveau de l'utilisateur, la propriété rwg_token doit être stockée sur le serveur et associée à l'utilisateur.

Envoi des données de conversion

Lorsqu'un utilisateur effectue une transaction attribuable à un lien Google Place Action, vous devez envoyer une requête HTTP POST au point de terminaison de la conversion. Il existe deux points de terminaison, l'un pour l'environnement de production et l'autre pour l'environnement de bac à sable.

  • Production: https://www.google.com/maps/conversion/collect
  • Bac à sable: https://www.google.com/maps/conversion/debug/collect

Le corps de l'article doit être un objet encodé au format JSON et présentant le format suivant:

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

Dans les environnements de bac à sable et de production, vous devez fournir un rwg_token valide lors de l'envoi d'un événement de conversion. À des fins de test dans l'environnement de bac à sable, vous pouvez utiliser le jeton de test suivant.

ADQ7psRE9YyDSVR6YpfD-fYdxoFYVKS1xeTvXdSxqF8a3bnk0W62eMEnUjoNPwjhNHG0elwBnM1awTjr9vXET8yOowCeuODjwA==

Vous trouverez ci-dessous un exemple complet de suivi des conversions au niveau de l'appareil (à l'aide d'un cookie sur l'appareil de l'utilisateur) en JavaScript, qui explique comment effectuer cette demande de post:

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
    })
  });
}

Lorsque vous utilisez le suivi des conversions au niveau de l'utilisateur, vous devez récupérer le jeton associé à l'utilisateur (quelle que soit la surface sur laquelle il se trouve) à partir de votre mécanisme de stockage côté serveur et envoyer le jeton à l'aide des mêmes points de terminaison de production ou de bac à sable.

Exigences relatives à l'attribution des conversions

La norme obligatoire de Google pour l'attribution des conversions est une période d'attribution de 30 jours pour toute interaction avec un lien de lieu, quel que soit le magasin.

Avec cette période d'attribution, nous nous attendons à ce qu'un événement de conversion soit envoyé dans l'un des cas suivants:

  • Un utilisateur suit un lien d'action pour un lieu et passe une commande dans la même session
  • Un utilisateur suit un lien d'action pour un lieu, puis revient via un autre canal dans les 30 jours pour passer commande.
  • Un utilisateur suit un lien d'action pour un lieu, puis passe une commande dans un autre magasin, soit au cours de la même session, soit au cours d'une autre session sur une période de 30 jours.

De plus, les événements de conversion devraient être envoyés depuis toutes les surfaces auxquelles un utilisateur peut accéder à partir d'un lien d'action pour un lieu. dont

  • Applications Web mobiles ou de bureau
  • Applications mobiles, via un lien profond d'application ou un intent d'application enregistré pour votre domaine

Si le jeton est stocké au niveau de l'utilisateur (voir Conserver le jeton), vous devez fournir une attribution multi-appareil. Autrement dit, un utilisateur qui suit un lien d'action à partir d'un ordinateur, puis finalise la transaction sur mobile (en utilisant le même compte utilisateur), doit déclencher un événement de conversion.

Si le jeton est stocké exclusivement au niveau de l'appareil, par exemple dans des cookies de navigateur, vous ne devez pas fournir une attribution multi-appareil. Dans ce cas, chaque appareil aurait un jeton distinct conservé si l'utilisateur avait suivi un lien d'action sur cet appareil, et chaque appareil suivait les règles d'attribution séparément.