Préambule
L'article qui va suivre vous concerne si au moins l'une des conditions suivantes sont réunies
- Les A/B Tests déployés sur votre site ciblent l'utilisateur suivant ses données personnelles, un comportement passé, ou la géolocalisation de son adresse IP
- Les customs datas de votre site font remonter des données personnelles
Si ce n'est pas le cas, vous pouvez vous contenter d'une "gestion soft" de la privacy sous Kameleoon, qui est détaillée dans l'article suivant
Du point de vue de l'expérience utilisateur
Pour l'utilisateur, la gestion de la Privacy doit avoir le moins d'impact possible
- Les A/B Tests ne doivent pas s'activer au moment où le visiteur clique sur "OK, tout accepter" car cela entrainerait d'importantes modifications visuelles sur le site.
- De la même façon : si un visiteur arrive sur votre site, clique sur "OK, tout accepter" puis revient sur sa décision, il ne doit pas voir d'évolution.
La mécanique correspondante dans Kameleoon
Compte tenu de ce que nous apprend la documentation de Kameleoon, nous allons déployer la gestion du consentement suivante :
- Il est nécessaire que l'utilisateur donne son consentement pour que Kameleoon fonctionne normalement. (Dans les paramétrages, nous allons donc, pour "Politique de consentement" sélectionner "Consentement requis")
- Tant que l'utilisateur n'aura pas donné son consentement, son consentement légal sera "inconnu" et Kameleoon va fonctionner en "mode restreint" (dans les paramétrages pour "Comportement en cas de consentement non connu", nous sélectionnerons "Bloquer partiellement Kameleoon").
- Si l'utilisateur s'oppose au tracking Kameleoon, il restera en mode restreint. Dans ce cas de figure :
- Le tracking de Kameleoon est complètement désactivé (pas de hit envoyé vers Kameleoon, pas d'écriture dans le cookie, le session storage ou le local storage de l'utilisateur.
- Seuls les tests flaggés "Technical" vont continuer à être visibles. Visible uniquement : il n'y aura pas d'envoi de données vers Kameleoon. Ce type d'A/B Test permet d'avoir une expérience utilisateur cohérente et de bonne qualité (pas d'activation intempestive de test modifiant le site).
- Seuls les tests n'utilisant pas de données personnelles pourront être technical : un test flaggé "technical" ne peut pas utiliser le genre, le mois de naissance ou effectuer un ciblage géographique par exemple.
Paramétrage dans Kameleoon
Pour déployer cette mécanique dans Kameleoon, vous devez allez dans Configuration > Mes sites > Editer
Puis dans "Configuration", sélectionnez "A/B Test", puis sélectionnez les options suivantes :
- Politique de consentement ➡ consentement requis
- Comportement en cas de consentement non connu ➡ Bloquer partiellement Kameleoon
- Comportement en cas d'optout ➡ Bloquer partiellement Kameleoon
Puis rebelote avec dans "Personnalisation", où nous vous recommandons de sélectionner les mêmes options
Déploiement du code de suivi Kameleoon et bandeau Privacy Tarteaucitron
Vous avez déployé le script Kameleoon en dur sur votre site, vous devez gérer le consentement de l'utilisateur via votre Privacy Center ou votre gestionnaire de cookies. Nous allons ici utiliser le gestionnaire de cookie Tarteaucitron, qui présente l'avantage d'être gratuit. Sébastien Lardez de Digital-analyst.fr en a détaillé l'implémentation pour gérer les cookies de Google Analytics via le TMS Google Tag Manager Vous pouvez reprendre l'installation indiquée
Ensuite, vous devez créer une balise de type "HTML personnalisée" dans Google Tag Manager, ajouter un déclencheur "All pages" et insérer le code suivant :
<script type="text/javascript">
tarteaucitron.user.kameleoonID = 'VOTRE IDENTIFIANT Kameleoon';
(tarteaucitron.job = tarteaucitron.job || []).push('kameleoon');
</script>
Votre identifiant Kameleoon est visible dans "Configuration > Mes sites"
Adaptons ensuite le script Tarteaucitron
Le script Tarteaucitron que vous avez inséré ne gère pas Kameleoon, vous devez donc créer vous-même le custom service. La documentation correspondante pour l'ajout d'un custom service est disponible ici
Pour ajouter ce custom service, vous devez modifier le fichier "tarteaucitron.services.js"
Ajoutez ensuite le bloc suivant
// kameleoon
tarteaucitron.services.kameleoon = {
"key": "kameleoon",
"type": "api",
"name": "Kameleoon",
"uri": "https://www.kameleoon.com/en/privacy-policy",
"needConsent": true,
"cookies": ['kameleoonVisitorCode'],
"js": function () {
"use strict";
if (tarteaucitron.user.kameleoonID === undefined) {
return;
}
console.log("validation privacy V2")
Kameleoon.API.Core.enableLegalConsent()
},
"fallback": function () {
"use strict";
if(Kameleoon.API.Visitor.experimentLegalConsent){
console.log("désactivation Kameleoon V2")
Kameleoon.API.Core.disableLegalConsent()
}
}
};
Ce code indique que Kameleoon :
- Dépose un unique cookie "kameleoonVisitorCode"
- Lors de la validation du consententement : Activation de la privacy Kameleoon via la commande Kameleoon.API.Core.enableLegalConsent()
- Inversement lorsque l'utilisateur s'oppose aux personnalisations : désactivation de Kameleoon via la commande Kameleoon.API.Core.disableLegalConsent()
- Lorsque l'utilisateur donne clique sur "OK" il risque de voir des changements dans le rendu visuel de votre site
- Inversement si l'utilisateur choisi de désactiver le tracking Kameleoon, là aussi le rendu visuel du site va évoluer, avec la désactivation des A/B Tests
- Nous vous déconseillons de flagger des A/B Tests en "Technical" s'ils sont actifs sur plusieurs pages sur votre site. Si votre test concerne par exemple le menu, il va être visible à chaque chargement de page de votre site et les visiteurs qui n'ont pas consenti à la personnalisation vont voir une variation différente du menu à chaque chargement de page !
- Ce problème ne concerne pas les Personnalisations puisque comme ces dernières ne poussent qu'une seule variation il n'y a pas de risque qu'un visiteur soit exposé à plusieurs variations au cours de sa visite !
Et vous, quel type de consentement avez-vous donné sur eloquentdata.fr ?
Lorsque vous avez chargé cette page, votre consentement Kameleoon était
Kameleoon.API.Visitor.experimentLegalConsent :
Kameleoon.API.Visitor.personalizationLegalConsent :
Si vous venez de modifier votre consentement via le bouton "Gestion des cookies" dans le footer, vous pouvez actualiser votre consentement en cliquant ici
Les limites de ce type d'implémentation
Les A/B Tests qui ne sont pas flagués en "Technical" risquent de dégrager l'expérience utilisateur :
1ère conséquence : vous devez flaguer le plus de tests possibles en "Technical", car ces derniers continueront d'être actifs quelque soit le consentement Privacy de l'utilisateur !
2ème conséquence : vous devez limiter les tests (non technical !) sur les pages d'acquisition : c'est sur ces pages que les visiteurs vont donner leur consentement au tracking sur votre site et c'est donc sur ces pages qu'il y a un risque que l'utilisateur voit le site changer suite à sa validation de la privacy !
Techniquement, tous les A/B Tests et les personnalisations qui n'utilisent pas de données personnelles peuvent être flaguées en "Technical". Dans les faits, il faut savoir que Kameleoon ne va vous attribuer un identifiant visiteur persistant qu'à partir du moment où vous avez consenti aux personnalisations (voir ci-dessus). Pour accéder à votre identifiant visiteur, il faut taper le code suivant dans la console
Kameleoon.API.Visitor.code
Les implications pour vos tests :