Étape 3: suivi des conversions

Implémentation

Résumé

La mise en œuvre du suivi des conversions comporte trois éléments:

  1. Collecter le 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

Vous n'avez pas besoin d'utiliser Google Analytics ni aucun code JavaScript tiers pour cette implémentation du suivi des conversions.

Avant de commencer à implémenter le suivi des conversions, vous devez décider si vous souhaitez 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 capable de 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, si celui-ci change d'appareil, efface ses cookies/stockage locaux, ou utilise une navigation privée, il est possible que l'événement de conversion ne soit pas 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 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 sera stocké côté serveur, si l'utilisateur change d'appareil, efface ses espaces de stockage/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 implémenter cette fonctionnalité une seule fois côté serveur et la 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 le cadre de l'événement de conversion.

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

Vous trouverez ci-dessous un exemple illustrant la manière dont ce jeton peut être analysé 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 aurez 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 est 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 au niveau 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 permettant de 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 à l'aide d'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, le rwg_token doit être stocké sur le serveur et associé à 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 du post doit être un objet encodé au format JSON et avoir 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 lorsque vous envoyez 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 envoyer 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 l'envoyer à l'aide des mêmes points de terminaison de production ou de bac à sable.

Exigences relatives à l'attribution des conversions

La norme de Google pour l'attribution des conversions est une période d'attribution de 30 jours pour toute interaction avec un lien vers un lieu, dans n'importe quel magasin.

Avec cette période d'attribution, un événement de conversion est normalement envoyé dans les 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 un délai de 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 lié à 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 termine la transaction sur mobile (avec 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 les cookies de navigateur, vous ne devez pas fournir d'attribution multi-appareil. Dans ce cas, un jeton distinct serait conservé pour chaque appareil si l'utilisateur avait suivi un lien d'action sur cet appareil, et chaque appareil suivait les règles d'attribution séparément.