Axeptio est une CMP Consent Management Platform pour être en conformité cookie . L’outil est configurable via Google Tag Manager pour simplifier l’ensemble de la gestion des tags. Voyons la manière la plus optimisée pour le chargement des différents cookies tiers.
Avant de rentrer trop rapidement dans le sujet, si vous ne connaissez pas Axeptio ou que vous avez besoin d’informations sur votre CMP (consent management platform), je vous invite à lire les précédents articles sur Axeptio et sur l’installation “classique”.
Cependant, quand tout sera clair, il faut que vous utilisiez cette config car elle est beaucoup plus confortable et optimisée pour l’utilisation d’Axeptio.
Comme vous l’avez surement suivi avec Web Core Vital, l’impact des temps de chargement est un critère très important pour votre référencement dans Google. Nous allons donc éviter de charger des JS en trop. (Le sdk d’Axeptio pour rien)
Comment installer Axeptio de manière optimisée et simple ?
Voici le processus que nous allons suivre :
Lors de la première visite, nous allons demander le consentement de l’utilisateur. Merci le RGPD, jusqu’ ici, rien de dingue.
De manière générale, on délègue la gestion des cookies et du consentement à notre CMP : dans notre cas Axeptio.
Vous ne le savez peut-être pas, mais dès que vous avez une interaction avec le Widget d’Axeptio, il y a 2 cookies (Sans données personnelles) qui sont mis à disposition.
Ces cookies sont :
- axeptio_all_vendors : Liste l’ensemble des vendors disponibles
- axeptio_authorized_vendors : Liste les cookies validés par l’internaute
Ce que vous faites, par défaut, (comme quasiment tout le monde) c’est que vous avez votre déclencheur Axeptio sur l’ensemble des pages (All pages). Ce n’est pas nécessaire étant donné que si ces cookies existent, vous avez le consentement de l’utilisateur. Donc pas besoin de charger SDK. Le CDN d’Axeptio vous dit déjà merci 😉
Nous allons alors déclarer ces 2 cookies propriétaires dans Google Tag Manager.
- Si le cookie axeptio_all_vendors existe, il nous servira d’exception pour le déclenchement ou non du widget.
- Si le cookie axeptio_authorized_vendors existe, nous allons l’utiliser pour nos exceptions de déclenchement.
Vu que nous savons lire les cookies, nous ne chargerons pas le SDK d’Axeptio si il y a déjà all_vendors qui existe. On sera donc en SDKLess.
L’autre avantage de lire directement les cookies Axeptio
Avec Axeptio, le dataLayer est mis à jour à partir de l’événement axeptio_update. Celui-ci est accessible après le chargement d’une page. Donc si vous utilisez “axeptio_update” pour déclencher vos tags, vos balises et scripts tiers ne peuvent pas être déclenchés sur une page_view ou un dom ready. Ceci peut créer des problématiques, notamment pour la partie e-commerce de Google Analytics.
Avec une gestion via les cookies déposés par Axeptio, vous allez pouvoir conserver des déclencheurs “Classiques” comme les pages view ou dom ready.
On ajoutera une exception en fonction des valeurs qui sont dans notre cookie, soit via une page_view ou un custom event.
La mise à jour de votre plan de tag va être beaucoup plus simple.
Les étapes pour l’installation d’Axeptio
Voici en quelques étapes comment faire notre setup.
Etape 1 : Installer le widget axeptio sur l’ensemble des pages.
J’installe mon widget axeptio sur l’ensemble des pages.
Nous reviendrons ensuite pour ajouter notre exception sur ce déclencheur en fonction des cookies ou d’une page spécifique.
Etape 2 : Ajouter 2 cookies propriétaires dans la partie variable
Dans la partie variable, j’ai mes 2 cookies.
- axeptio_all_vendors
- axeptio_authorized_vendors
Etape 3 : Ajout de l’exception pour ne pas charger le SDK, si all_vendors existe.
Si all_vendors existe, j’ajoute une exception pour ne pas charger le SDK.
Etape 4 : Déclenchement de mes balises “Classiques”
Je peux maintenant déclencher une balise Google Analytics, en utilisant par exemple la valeur qui est dans ma variable du cookie. En gros, je vais déclencher, sauf si il n’y a pas la valeur google_analytics dans les authorized vendors.
C’est la même chose que je faisais avant avec l’axeptio_update. Sauf que nous allons pouvoir l’utiliser maintenant au chargement de la page.
Point important: Il vous faudra 2 exceptions par balise :
Un pour les événements envoyés via un dataLayer.push() et un autre pour les pages view. Ceci vous permettra d’avoir des exceptions pour les différents cas d’usage. Bien entendu la page view, mais aussi un événement personnalisé comme un add_to_cart qui ne recharge pas une page.
Etape 5 : Gestion de la première interaction avec le widget Axeptio
Notre gestion du consentement commence a prendre forme, mais il reste un point a voir : La première interaction avec le widget sur la page d’arrivée de votre utilisateur.
Le cas d’usage est le suivant :
Lors de l’arrivée sur une page du site, le widget Axeptio est chargé et l’internaute va interagir avec. Lorsqu’il aura accepté ou refusé, il n’y a pas de rechargement de la page, donc mes scripts tiers ne vont pas être chargés vue que vos déclencheurs sont sur des pages_view.
Nous répondons à cette problématique avec un déclencheur spécifique qui est événement envoyé via un dataLayer.push().
- axeptio_activate_%%nom_du_pixel_ou_de_la_balise%%
Dès que cet événement sera envoyé, je déclenche mon script.
Sur les autres pages, je ne charge pas Axeptio (SDKLess), cet événement ne sera pas appelé, donc il n’y aura pas 2 fois le script chargé sur les autres pages (Page view et cet évent)
Etape 6 : Permettre à mon utilisateur de changer d’avis
Il faut cependant que je permette à l’utilisateur de modifier son consentement. Pour cela, le plus simple est de mettre dans son footer un lien vers une page spécifique dans laquelle je force le chargement du script Axeptio. Ainsi, le widget sera présent et mon utilisateur pourra changer ses choix de consentement.
Je modifie le déclencheur de mon script Axeptio en ajoutant des conditions.
- Toutes les pages sauf si il y a le cookie all_vendors (Donc tant qu’il n’y a pas d’interaction avec le widget)
- Ma page setup.php quoi qu’il arrive (C’est la page qui me permet de modifier mes cookies). Il faut qu’Axeptio soit chargé.
BONUS : mon conteneur GTM à dispo
Vous pouvez télécharger le conteneur GTM présenté ci dessous pour faire une installation plus rapide.
Vous n’avez ensuite plus qu’a l’importer dans Google Tag Manager