Après avoir passé un temps certain à chercher à faire fonctionner le template GTM Server Side pour mettre en place la Conversions API de LinkedIn, nous vous livrons un guide pas à pas pour y voir plus clair !
Ce guide fera fréquemment référence à Facebook CAPI car il s’agit d’un grand classique, souvent implémenté en tout premier. Si vous n’y avez pas encore touché, on a un super article à vous conseiller.
1. Tag LinkedIn : rappel du fonctionnement côté client
Traditionnellement, les tags LinkedIn sont installées client-side. On distingue alors deux éléments principaux : l’Insight Tag et le suivi des conversions.
1.1 L’Insight Tag
C’est le tag principal, qui doit être installé sur l’ensemble des pages du site. C’est ce tag qui charge la librairie JS de LinkedIn et qui récupère les informations principales.
En voici un exemple ci-dessous.
javascript<script type="text/javascript"> _linkedin_partner_id = "XXXXXX"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id); </script><script type="text/javascript"> (function(l) { if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; window.lintrk.q=[]} var s = document.getElementsByTagName("script")[0]; var b = document.createElement("script"); b.type = "text/javascript";b.async = true; b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js"; s.parentNode.insertBefore(b, s);})(window.lintrk); </script> <noscript> <img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=6529889&fmt=gif" /> </noscript>
Bien entendu, si vous utilisez Google Tag Manager, il est recommandé de privilégier le template (disponible dans la galerie) → https://tagmanager.google.com/gallery/#/owners/linkedin/templates/linkedin-gtm-community-template
1.2 Le suivi des conversions
Les conversions se configurent au sein de LinkedIn Campaign Manager (Analyser > Suivi des conversions).
Une fois la conversion créée, vous allez avoir accès à l’ID de conversion.
En voici un exemple :
javascriptwindow.lintrk('track', { conversion_id: 12345678 });
On est donc sur un fonctionnement assez classique, avec, d’une part, un tag global à installer sur l’ensemble des pages et d’autre part un tag de conversion.
Cela dit, il reste un élément important à garder en tête : en créant une conversion, nous avons dû sélectionner la source de données, ici l’Insight Tag.
Documentation LinkedIn : https://www.linkedin.com/help/lms/answer/a1439355?lang=fr-FR
2. Mise en place de LinkedIn CAPI en server side
2.1 Overview
2.1.1 Template
Le template à utiliser est celui proposé par LinkedIn. Il est disponible ici :
Tag Manager Template Gallery
Deploy tags in Google Tag Manager easily and safely with the Community Template Gallery
https://tagmanager.google.com/gallery/#/owners/linkedin-developers/templates/linkedin-capi-tag-template
Attention, ce template ne permet que de mettre en place un suivi des conversions i.e. des différentes conversions que vous avez pu configurer au sein de l’interface.
Il ne reprend donc pas l’ensemble des fonctionnalités de l’Insight Tag !
On y reviendra un peu plus loin mais le template proposé par LinkedIn est… perfectible.
On y retrouve la possibilité de :
- préciser le token
- préciser l’ID de conversion
- préciser l’Event ID le cas échéant
- préciser la Conversion Value
Il n’est pas possible de faire grand chose au sein du template proposé par LinkedIn. Il est donc essentiel de configurer un flux aussi propre que possible !
2.2 Guide pour mettre en place LinkedIn Server Side, étape par étape
Sur LinkedIn, lors de la création d’une conversion, vous devez choisir la source de données
2.2.1 Création des éléments nécessaires
Pour cette partie, vous aurez besoin des droits suffisants dans Campaign Manager.
Etape 1 : Créer un Token API
Au sein du Campaign Manager, il va vous falloir créer un token.
Pour cela, il faut aller dans
Analyser > Suivi des conversions > Source de données
puis cliquer sur “Créer une source” et sélectionner “API des conversions ou CSV”.
Il faut ensuite sélectionner “Intégration de l’API de conversions” puis “Google Tag Manager”
Vous allez ensuite pouvoir générer un Token API. Attention à bien le noter !
Etape 2 : Créer une conversion
Ici, LinkedIn va fonctionner différemment de Meta notamment. Lors de la création d’une conversion dans l’interface LinkedIn, celle-ci est associée à une source de données (Insight Tag ou API par exemple). Il est donc nécessaire de créer une nouvelle conversion compatible avec l’API.
Comme d’habitude, cela se passe sous
Analyser > Suivi des conversions > Créer une conversion > API des conversions ou conversion de CSV
.Il suffira ensuite de suivre les différentes étapes.
Une fois cela fait, il s’agit de récupérer la Conversion Rule ID : il s’agit de l’identifiant de conversion utilisé pour identifier la conversion.
Attention ! Il se trouve que cet ID n’est pas indiqué dans l’interface… Cela aurait été trop simple…
L’unique moyen de le trouver, à date, est de se rendre sur la conversion en question et de récupérer la valeur au sein de l’URL (comme indiqué dans la capture ci-dessous).
Vous êtes en possession du token et avez maintenant une conversion avec l’API comme source de données. Vous pouvez maintenant attaquer le vif du sujet !
2.2.2 Mise à jour de GTM Web
Sur cette partie, ne pas hésiter à jeter un oeil à cette documentation https://learn.microsoft.com/en-us/linkedin/marketing/conversions/conversions-api-gtm-guide?view=li-lms-2023-11#1-web-container-setup
Le tableau proposé par LinkedIn est très important
Ce tableau indique en effet que certains paramètres sont obligatoires :
- le rule_id : c’est assez logique, il s’agit de l’identifiant qui identifie la conversion
- l’heure de l’événement : généré automatiquement
- mais surtout, au moins l’un des paramètres parmi les suivants :
user_data.sha256_email_address
: il s’agit de l’adresse email hashée de l’utilisateuruser_data.linkedinFirstPartyId
: il s’agit de la valeur du cookieli_fat_id
, qui existe uniquement pour les utilisateurs ayant cliqué sur une publicité LinkedInuser_data.acxiomID
user_data.moatID
Dans le cas où vous n’auriez pas encore la possibilité d’envoyer l’adresse email à votre serveur, il faudra donc envoyer autre chose, comme le
user_data.linkedinFirstPartyId
.Pour récupérer cette valeur, il faut récupérer la valeur du cookie li_fat_id, que vous allez pouvoir passer dans
user_data.linkedinFirstPartyId
.
Si vous utilisez uniquement cet identifiant, n’oubliez pas qu’il n’est disponible que pour les utilisateurs venant d’une publicité LinkedIn ! On verra dans la partie suivante comment gérer cela.
2.2.3 Mise à jour de GTM Server Side
Dans GTM Server Side, nous allons utiliser le template cité précédemment, disponible ici https://tagmanager.google.com/gallery/#/owners/linkedin/templates/linkedin-gtm-community-template
Quelques éléments à garder en tête
Token API
Il s’agit du Token API que vous avez généré. Pour rappel, la marche à suivre est décrite plus haut Guide - Comment mettre en place LinkedIn CAPI avec GTM Server Side
Conversion Rule ID
Là encore il s’agit de l’ID de la conversion que vous avez pu créer précédemment. Voir Guide - Comment mettre en place LinkedIn CAPI avec GTM Server Side
Déduplication
Si vous avez bien suivi la première partie (et si c’est le cas, félicitations), vous avez remarqué que la création des conversions était un peu différente de Facebook par exemple :
- avec Facebook, vous auriez créé un événement de conversion, par “souscription” et vous auriez pu l’envoyer client-side et via l’API. Vous auriez ensuite dédupliqué grâce à l’Event ID
- avec LinkedIn, vous allez créer une conversion client-side “souscription” et une conversion API “soucription api” → les données remonteront donc par défaut dans 2 conversions différentes.
Dès lors, quel intérêt à la déduplication ? La documentation LinkedIn nous apporte une réponse : si 1 événement client-side et 1 événement via API portent le même Event ID alors LinkedIn gardera uniquement l’événement client-side.
Voir ‣ pour plus d’informations.
Conversion Value
On arrive à la question épineuse de la Conversion Value… Théoriquement, c’est une valeur optionnelle. Dans mes tests, j’obtenais une erreur dans la preview GTM Server Side lorsque cette valeur n’était pas renseignée…
J’en suis venu à renvoyer
{"currencyCode": "EUR", "amount": "1"}
dans ce champs (n’ayant pas de “vraie” valeur pour la conversion en question).Comment déclencher le tag ?
Il faudra ensuite gérer les règles de déclenchement du tag. Rien de farfelu ici mais il y a un élément à prendre en compte.
Dans le cas où vous envoyez uniquement le
li_fat_id
à GTM Server Side et donc que vous n’avez aucun autre identifiant à disposition, il vous faudra vous assurer de ne déclencher le tag que quand le li_fat_id
existe.Pour cela, il s’agit de créer le déclencheur adéquat. Différentes approches sont valables et peuvent fonctionner. Dans le screenshot ci-dessous, un déclencheur a été créé au sein de GTM Server Side et va être utilisé comme exception (et non pas déclencheur).
En cas d’allergie aux exceptions, vous pouvez bien entendu gérer cela directement au sein de votre déclencheur !
Conclusion
Implémenter LinkedIn CAPI, c’est complètement possible. En revanche, le template proposé par LinkedIn ne facilite pas forcément la vie.
Avec ce guide, vous devriez avoir les éléments clés pour mettre en place cette Conversion API. Et si vous avez besoin d’aide sur le sujet, n’hésitez pas à nous envoyer un petit message 😉
Quentin Bosco
L’auteur : Quentin Bosco
Lead Tracking & Web Analytics chez UnNest, je vous accompagne sur l’ensemble des sujets liés à la collecte de la donnée et au server side.
Précédemment consultant en agence et Responsable Analytics chez Yves Rocher, j’interviens sur les sujets de collecte de la donnée depuis 8 ans et ai développé un goût & une expertise sur l’ensemble des sujets relatifs au server side.
✉️ Me contacter : quentin.bosco@unnest.co