Google Consent Mode dans Commanders Act CMP

Introduction

Google Consent Mode évoluera en mars 2024 !

Comme Google recommande fortement l’utilisation de Consent Mode sur leurs tags, Commanders Act a développé une nouvelle fonctionnalité native pour les clients souhaitant l’implémenter.

Utilisez simplement notre nouvelle fonctionnalité native pour une implémentation super fluide ! Veuillez lire la documentation suivante pour en savoir plus sur cette nouvelle fonctionnalité et comment l’utiliser. Si vous avez déjà implémenté Consent Mode v1 en utilisant notre tag template et souhaitez le conserver, vous pouvez le mettre à jour vers v2. Veuillez consulter la section suivante pour les instructions : Guide de migration du tag template Consent Mode v1 vers v2

Veuillez noter : Google n’exige un signal de consentement validé que pour les pays de l’EEE et le Royaume‑Uni.

Implémenter Google Consent Mode dans des régions au‑delà de celles-ci peut avoir un impact négatif sur la performance des campagnes et n’est pas recommandé.

Différence entre le mode Basic et Advanced

Google Consent Mode propose 2 approches : Basic & Advanced Dans les deux cas, vous devrez activer la fonctionnalité Google Consent Mode sur votre compte. La seule différence sera la suivante : Mode Basic : Les Google tags ne sont pas déclenchés avant le consentement et restent soumis aux Commanders Act Consent Rules, aucun tag ne sera déclenché en cas d’Opt-out Mode Advanced : Les Google tags sont déclenchés avant le consentement et les données collectées dépendront du Consent Mode Signal. Les tags restent déclenchés même lorsque l’utilisateur a Opt-out.

Suivez simplement ces 6 étapes :

1- Activez la fonctionnalité sur votre workspace

Connectez‑vous sur votre workspace Allez sur la page Data Governance > Consent Management > Settings Activez Activé l’option Google Consent Mode. Le sous‑menu "Google Consent Mode settings" apparaîtra

2‑Configurez vos paramètres

Catégories

Sélectionnez votre catégorie de confidentialité appropriée dans la liste déroulante pour chaque catégorie Google.

Statut par défaut

Le Statut par défaut déterminera le comportement de vos tags AVANT le consentement. S’il est réglé sur "denied" : Google collectera un minimum d’informations (comme si l’utilisateur avait Opt-out) S’il est réglé sur "granted" : Google collectera toutes les informations (comme si l’utilisateur avait Opt-in) *Vous devriez consulter votre DPO avant de définir un statut par défaut "granted" pour l’une de ces catégories

Dans tous les cas : une fois que l’utilisateur a donné son consentement (optin ou optout), le statut par défaut ne s’appliquera plus. Le choix de l’utilisateur déterminera le statut après consentement.

Si vous ne définissez pas de catégorie, le statut sera toujours "denied". Le menu déroulant "Default Status" ne sera plus affiché. Exemple ci‑dessous pour "security_storage" sans catégorie de confidentialité assignée :

Paramètres supplémentaires

  • enable_tcf_support Si vous utilisez le template CMP TCF 2.2 : la mise à jour TCData (TCData.enableAdvertiserConsentMode) permet à Google d’inférer les réglages ad_storage, ad_personalization et ad_user_data à partir de la TC string. Cela incorporera les mises à jour de consent mode v2 directement dans la TC string. Activez la fonctionnalité tcf_support pour laisser votre bannière IAB TCF gérer les catégories publicitaires. *Google recommande d’activer cette fonctionnalité si votre site utilise un template de bannière IAB TCF N’oubliez pas d’ajouter vos Google associated Vendors (voir documentation dédiée pour plus de détails)

  • wait_for_update L’activation de cette fonctionnalité optionnelle enverra un signal aux tags Google pour attendre une mise à jour. Saisissez une valeur en millisecondes pour contrôler le temps d’attente avant l’envoi des données. Cela peut être utile si vous rencontrez des problèmes de timing. Sinon, vous pouvez laisser vide !\

  • ads_data_redaction définir ads_data_redaction sur ON pour rendre plus opaques vos données publicitaires lorsque "ad_storage" est "denied"

  • url_passthrough URL passthrough l’option peut être utilisée pour envoyer des analytics basés sur les événements et les sessions (y compris les conversions) sans cookies entre les pages. \

3‑Activez la fonctionnalité sur votre/vos privacy banner(s)

Sources > Privacy Banners > Sélectionnez votre/vos banner(s) Allez à l’étape d’édition de votre privacy banner, ouvrez le menu des paramètres pour activer Google Consent Mode Signal\

La configuration de la confidentialité est faite ! Vous pouvez maintenant Generate et Deploy votre Privacy Banner. &#xNAN;*À ce stade, Consent Mode n’affectera pas le comportement de vos tags. Veuillez suivre les étapes suivantes !

L’activation de cette option ajoutera automatiquement une Google Policy URL, c’est une exigence légale pour utiliser Google Consent Mode sur votre site. N’hésitez pas à adapter votre texte d’introduction si nécessaire

4‑ Mode Advanced : Supprimez vos contraintes de confidentialité des Google tags

Pour configurer la version "Advanced" du Consent Mode, supprimez les Commanders Act Privacy rules de tous les Google tags, c’est désormais géré par Google Consent Mode Data Governance > Consent Management > Categories voir l’onglet assign tags - Supprimez les contraintes de confidentialité des Google tags &#xNAN;- Enregistrer

5‑Générez votre/vos container(s)

Allez sur Sources > WebContainers > étape de generation Pour une configuration à container unique, générez votre container avec les privacy banner(s) inclus

Pour une configuration à containers multiples, générez tous vos containers. Les privacy banner(s) doivent être liés au premier container chargé pour garantir que le signal Consent Mode est toujours envoyé correctement.

6‑Tests & déploiement

Déploiement

Nous recommandons de tester votre configuration sur un environnement UAT si possible.

Testez votre configuration

Il y a 3 façons différentes de vérifier votre configuration Consent Mode :

La façon la plus simple de vérifier votre configuration est d’utiliser le Tag Assistant plugin fourni par Google. L’événement "Consent" doit toujours être envoyé avant tout hit des tags Le statut "On-page Default" doit être le même que ceux que vous avez configurés à l’ étape 2

Après Consentement, le statut "On-page Update" devrait correspondre au consentement donné sur la privacy banner

Pour vous aider à garantir que le signal de consentement est envoyé avant vos Google tags, nous proposons une méthode pour obtenir des logs dans la console du navigateur

tC.privacy.explainGCMSequencingValidation() Si le Consent est défini avant le déclenchement de tout Google tags, vous obtiendrez le log 'valid sequencing' Si les Google tags sont déclenchés avant que le Consent ne soit défini, alors votre implémentation est incorrecte. Le log renverra la valeur 'Consent is set too late, Google tags are triggered before consent set. Please verify your Consent Mode sequencing'

Besoin d’une valeur booléenne pour des cas d’usage spécifiques ? Utilisez tC.privacy.validateGCMSequencing() Retournera simplement true si votre sequencing est correct, sinon le résultat sera false

FAQ

Modification/Mise à jour de la configuration

En cas de modification de la configuration, telle que l’activation/désactivation d’un paramètre, des changements de mapping sur les catégories, etc.... les Web Containers & Privacy banners doivent être régénérés & déployés.

Paramètre "Region"

Google Consent Mode permet la gestion du consentement uniquement pour la/les Region(s) déclarée(s) Notre fonctionnalité native n’inclut pas ce paramètre, pour des raisons de performance web. Si vous avez besoin d’utiliser ce paramètre, nous recommandons d’utiliser notre TMS Tag template. Veuillez vous référer à la section suivante de la documentation pour les détails de configuration.

Support & assistance

Vous rencontrez encore des difficultés sur votre implémentation et cherchez de l’aide ? Contactez notre équipe de support technique ! En tant que Google CMP partner avec un statut Gold, nous fournissons un support par email dédié : [email protected] Ils vous fourniront toujours une réponse personnalisée à vos questions !

Guide de migration

Pour les clients qui ont déjà implémenté Consent Mode v1: Vous pouvez activer la fonctionnalité intégrée comme décrit ci‑dessus (n’oubliez pas de désactiver votre tag consent mode actuel) Cependant, si vous souhaitez vraiment conserver votre configuration actuelle et simplement mettre à jour votre tag, vous pouvez vous référer à cette documentation !

Résumé de toutes les étapes recommandées :

  1. Accédez à votre compte Commanders Act.

  2. Mettez à jour votre tag template.

  3. Testez et déployez votre/vos container(s).

Mettez à jour votre tag template

Allez sur la page "Sources" > "Web containers" Sélectionnez votre tag "Google Consent Mode with Trust".

Mettez à jour le bloc de code js de votre tag avec le code suivant, puis enregistrez pour obtenir les nouveaux champs

extrait de code à mettre à jour
<script language="javascript">
window.dataLayer = window.dataLayer || [];
var gtag = function (){
	dataLayer.push(arguments);
};
tC.internalvars.getRegion = function(a){
	a = a.toString().replace(/\s/g, '');
	a = a.split(",");
	return a;
};
tC.internalvars.setRegion = function(a) {
	tC.internalvars.regionArray = tC.internalvars.getRegion(a);
	if (((typeof tC.privacy.isEnable !== "undefined") && tC.privacy.isEnable()) && (tC.internalvars.regionArray.length > 0) && (tC.internalvars.regionArray[0] !== "") && (typeof tC.internalvars.consentSettings !== "undefined")) {
		tC.internalvars.consentSettings.region = tC.internalvars.regionArray;
		return true;
	} else return false;
};
tC.internalvars.setWait = function(a){
	if (((typeof tC.privacy.isEnable !== "undefined") && tC.privacy.isEnable()) && (isNaN(parseInt(a, 10)) === false) && (parseInt(a, 10) > 0) && (typeof tC.internalvars.consentSettings !== "undefined")) {
    	tC.internalvars.consentSettings.wait_for_update = parseInt(a, 10);
      	return true;
    } else return false;
};
tC.internalvars.setConsentCommand = function(a, b, c){
	tC.internalvars.isRegionSet = tC.internalvars.setRegion(b);
	tC.internalvars.isDelaySet = tC.internalvars.setWait(c);
  	if (((typeof tC.privacy.isEnable !== "undefined") && tC.privacy.isEnable()) && (tC.internalvars.isRegionSet || tC.internalvars.isDelaySet)){
    	return "default";
    }
  	if ((a.toString() === "default") || (a.toString() === "update")){
		return a;
	}
	if ((typeof tC.privacy.isEnable !== "undefined") && tC.privacy.isEnable()) return "default";
	else return "update";
	return "default";
};
gtag('set', 'developer_id.dOWVhY2', true);
tC.internalvars.consentSettings = {
	'ad_storage': (#DEFAULT_AD_CATEGORY# !== "")?#DEFAULT_AD_CATEGORY#:"denied",
	'analytics_storage': (#DEFAULT_ANALYTICS_CATEGORY# !== "")?#DEFAULT_ANALYTICS_CATEGORY#:"denied",
	'functionality_storage': (#DEFAULT_FUCTIONALITY_CATEGORY# !== "")?#DEFAULT_FUCTIONALITY_CATEGORY#:"denied",
	'personalization_storage': (#DEFAULT_PERSONALIZATION_CATEGORY# !== "")?#DEFAULT_PERSONALIZATION_CATEGORY#:"denied",
	'security_storage': (#DEFAULT_SECURITY_CATEGORY# !== "")?#DEFAULT_SECURITY_CATEGORY#:"denied",
  'ad_personalization':(#DEFAULT_AD_PERSONALIZATION_CATEGORY# !== "")?#DEFAULT_AD_PERSONALIZATION_CATEGORY#:"denied",
  'ad_user_data':(#DEFAULT_AD_USER_DATA_CATEGORY# !== "")?#DEFAULT_AD_USER_DATA_CATEGORY#:"denied" 
}
console.log(tC.internalvars.consentSettings);
console.log("REGION: " + #REGION#);
console.log("WAIT_FOR_UPDATE: " + #WAIT_FOR_UPDATE#);
// Commande par défaut au chargement de la page
console.log("INFO: default command");
gtag('consent', tC.internalvars.setConsentCommand("default", #REGION#, #WAIT_FOR_UPDATE#), tC.internalvars.consentSettings);
tC.internalvars.ga_url_passthrough = #URL_PASSTHROUGH#;
tC.internalvars.ga_ads_data_redaction = #ADS_DATA_REDACTION#;
if ((typeof tC.internalvars.consentSettings !== "undefined") && (tC.internalvars.consentSettings.ad_storage === "denied")) {
	if ((tC.internalvars.ga_url_passthrough !== "") && ((tC.internalvars.ga_url_passthrough.toLowerCase() === "true") || (tC.internalvars.ga_url_passthrough.toLowerCase() === "false"))) {
		gtag('set', 'url_passthrough', (tC.internalvars.ga_url_passthrough.toLowerCase() === "true"));
	}
	if ((tC.internalvars.ga_ads_data_redaction !== "") && ((tC.internalvars.ga_ads_data_redaction.toLowerCase() === "true") || (tC.internalvars.ga_ads_data_redaction.toLowerCase() === "false"))) {
		gtag('set', 'ads_data_redaction', (tC.internalvars.ga_ads_data_redaction.toLowerCase() === "true"));
	}
}
tC.internalvars.setConsentUpdateCommand = function(result){
	tC.internalvars.consentSettings = {
	    'ad_storage': (result.consent.categories[#TRUST_AD_CATEGORY_ID#].status === "on") ? "granted" : "denied",
	    'analytics_storage': (result.consent.categories[#TRUST_ANALYTICS_CATEGORY_ID#].status === "on") ? "granted" : "denied",
	    'functionality_storage': (result.consent.categories[#TRUST_FUNCTIONALITY_CATEGORY_ID#].status === "on") ? "granted" : "denied",
	    'personalization_storage': (result.consent.categories[#TRUST_PERSONALIZATION_CATEGORY_ID#].status === "on") ? "granted" : "denied",
	    'security_storage': (result.consent.categories[#TRUST_SECURITY_CATEGORY_ID#].status === "on") ? "granted" : "denied",
	  'ad_personalization':(result.consent.categories[#TRUST_AD_PERSONALIZATION_CATEGORY_ID#].status === "on") ? "granted" : "denied",
  'ad_user_data':(result.consent.categories[#TRUST_AD_USER_DATA_CATEGORY_ID#].status === "on") ? "granted" : "denied"
    }
	console.log(tC.internalvars.consentSettings);
	console.log("REGION: " + #REGION#);
	console.log("WAIT_FOR_UPDATE: " + #WAIT_FOR_UPDATE#);
	// Commande de mise à jour au chargement de la page
	console.log("INFO: update command");
	gtag('consent', tC.internalvars.setConsentCommand("update", #REGION#, #WAIT_FOR_UPDATE#), tC.internalvars.consentSettings);
};
cact('consent.get', function (result) {
	if (result.consent.status !== "unset") {
      tC.internalvars.setConsentUpdateCommand(result);
	}
});
// Déclenché lors des changements de consentement
cact('consent.onUpdate', function (result) {
  	tC.internalvars.setConsentUpdateCommand(result);
});
</script>

Vous pouvez faire votre mapping sur les nouveaux champs & Save à nouveau votre tag

Définissez le statut par défaut des *nouvelles catégories (denied ou granted)

Entrez l’ID de vos catégories de confidentialité pour les lier aux *nouvelles catégories Google Si nécessaire, vous pouvez trouver votre ID de confidentialité sur la page Data Governance > Consent Management > Categories

N’oubliez pas d’enregistrer vos paramètres

Générez & Déployez votre container

Mettez à jour votre/vos Privacy Banner(s)

Allez sur la page Source > Privacy Banners > étape d’édition

Vous pouvez maintenant Generate & Deploy vos privacy banner(s)

Vous êtes à jour, vous pouvez tester vos paramètres sur votre site. N’hésitez pas à vous référer à l’ étape de test ci‑dessus pour obtenir des astuces & conseils.

Mis à jour

Ce contenu vous a-t-il été utile ?