Synthèse technique exécutive : les rouages de la délibération CNIL SAN-2023-009
Le 15 juin 2023, la formation restreinte de la CNIL a prononcé une amende historique de 40 000 000 € à l'encontre du spécialiste du ciblage publicitaire Criteo (Délibération SAN-2023-009 ↗). Si les premiers commentaires ont réduit ce dossier à un simple contentieux ad-tech, les motifs de la sanction créent un précédent juridique critique pour l'ensemble des éditeurs et marchands e-commerce exploitant des traceurs de reciblage dynamique (retargeting).
L'instruction de la CNIL a mis en lumière des manquements structurels sur trois niveaux opérationnels : l'incapacité à prouver le recueil d'un consentement préalable positif (opt-in) sur les sites partenaires, l'échec technique à exécuter le droit à l'effacement (article 17 du RGPD), et la défaillance des contrats de coresponsabilité (article 26). Les annonceurs qui s'estiment protégés par des clauses contractuelles d'indemnisation ignorent la portée de la jurisprudence européenne. En vertu de l'arrêt Fashion ID de la CJUE (C-40/17), tout exploitant de site web intégrant un script tiers agit en qualité de responsable conjoint du traitement pour les phases de collecte et de transmission des données personnelles.
Autopsie architecturale : pourquoi le retargeting de Criteo a échoué aux audits RGPD
La CNIL a caractérisé cinq manquements majeurs compromettant l'ensemble de la chaîne de traitement entre les éditeurs, les annonceurs et le graphe d'identité de Criteo :
1. Défaut de vérification du consentement préalable (Art. 7(1) RGPD & Art. 82 Loi Informatique et Libertés / Art. 5(3) ePrivacy)
Criteo collectait systématiquement les signaux de navigation et déposait son cookie identifiant (idfs) sur les terminaux des internautes via les domaines partenaires, sans s'assurer au préalable que l'utilisateur avait exprimé un consentement libre, spécifique, éclairé et univoque au sens de l'article 4(11). Criteo s'est borné à invoquer des engagements contractuels conclus avec ses partenaires, sans déployer de mécanisme technique de contrôle (tel que l'analyse du tcString de l'IAB TCF ou de la charge utile de la CMP avant l'exécution du script).
2. Protocoles d'effacement incomplets et illicites (Art. 17 & 12(2) RGPD)
Lorsqu'un internaute exerçait son droit à l'effacement, Criteo se contentait de rompre le lien entre l'identifiant et le terminal, tout en conservant l'historique des événements comportementaux dans ses bases de données et en réassociant les navigations ultérieures sous un nouvel identifiant pseudonyme. La CNIL a jugé que la simple dissociation d'un identifiant sans purge effective des données de navigation ne constitue pas un effacement conforme au sens de l'article 17.
3. Exécution illicite du tag et interception de scripts
Pour neutraliser leur coresponsabilité, les marchands doivent mettre en place un blocage strict côté client (client-side gating). Le script Criteo OneTag ne doit sous aucun prétexte s'exécuter de manière asynchrone avant l'émission d'un jeton de consentement horodaté et validé par une bannière conforme :
<!-- Implémentation conforme du tag de retargeting dynamique -->
<script type="text/plain" data-cookiecategory="advertising" id="criteo-onetag">
window.criteo_q = window.criteo_q || [];
var deviceType = /iPad/.test(navigator.userAgent) ? "t" : /Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Silk/.test(navigator.userAgent) ? "m" : "d";
window.criteo_q.push(
{ event: "setAccount", account: VOTRE_IDENTIFIANT_CRITEO },
{ event: "setEmail", email: "" }, /* Ne jamais transmettre de données identifiantes en clair ; hachage SHA-256 obligatoire après consentement */
{ event: "setSiteType", type: deviceType },
{ event: "viewHome" }
);
</script>
<script>
/* Déclenchement conditionné strictement à la validation de la CMP */
window.addEventListener('cmp_consent_granted_advertising', function() {
var criteoScript = document.getElementById('criteo-onetag');
if (criteoScript && criteoScript.type === 'text/plain') {
var activeScript = document.createElement('script');
activeScript.src = 'https://dynamic.criteo.com/js/ld/ld.js';
activeScript.async = true;
document.head.appendChild(activeScript);
criteoScript.type = 'text/javascript';
}
});
</script>
Matrice des risques juridiques et techniques : constats CNIL et exposition de l'annonceur
La délibération de la CNIL trace une frontière nette entre les obligations du prestataire publicitaire et celles de l'éditeur du site. Le tableau suivant détaille les infractions retenues, le mécanisme technique sanctionné dans la décision SAN-2023-009, et le niveau de coresponsabilité encouru par les sites marchands.
| Article RGPD / ePrivacy | Constat CNIL (SAN-2023-009) | Mécanisme technique de l'infraction | Niveau d'exposition de l'annonceur |
|---|---|---|---|
| Art. 7(1) & Art. 82 LIL / Art. 5(3) ePrivacy | Absence de preuve d'un consentement préalable valable | Dépôt des cookies uid / idfs dès le chargement de page avant toute interaction avec la CMP | Critique : Coresponsable du traitement au titre de la jurisprudence CJEU Fashion ID pour la collecte et la transmission. |
| Art. 17 | Effacement incomplet des données de la personne concernée | Dissociation d'identifiant avec conservation des journaux comportementaux actifs en base | Moyen : Obligation de répercuter les demandes d'effacement vers les API partenaires. |
| Art. 12(1) & 13 | Défaut d'information et de transparence | Mentions génériques omettant d'expliquer le croisement d'identifiants cross-device | Élevé : L'éditeur doit mentionner Criteo et ses finalités dès les niveaux 1 et 2 de la CMP. |
| Art. 15(1) | Réponse incomplète aux demandes d'accès | Fourniture d'identifiants bruts sans explication intelligible des scores de profilage commercial | Faible : Périmètre de traitement propre au prestataire ad-tech. |
| Art. 26 | Accord de responsabilité conjointe lacunaire | Clauses contractuelles dépourvues d'organisation opérationnelle pour l'exercice des droits | Élevé : Exposition directe aux sanctions de l'article 83(4)(a) pour contrats non conformes. |
Protocole d'audit forensique pas-à-pas pour les tags de retargeting
Pour vérifier la conformité de vos intégrations de retargeting aux exigences de la délibération SAN-2023-009 ↗, appliquez ce protocole en trois étapes à l'aide des outils de développement de votre navigateur :
Phase 1 : Capture réseau à l'état zéro (zéro-state)
- Ouvrez une session de navigation vierge avec stockage réinitialisé (
Navigation privée). - Ouvrez les Outils de développement (DevTools), onglet Réseau (Network), et appliquez le filtre :
criteo.com|criteo.net. - Chargez l'URL de votre site e-commerce sans interagir avec le bandeau de consentement.
- Critère de conformité : Aucune requête HTTP sortante vers Criteo (
/delivery/,/js/ld/ld.js,/event). Tout statut200 OKou302 Foundavant l'acceptation formelle constitue une infraction directe à l'article 82 de la loi Informatique et Libertés ↗.
Phase 2 : Vérification du stockage local des cookies
// Exécuter dans la console DevTools avant toute interaction avec la CMP
(() => {
const criteoCookies = document.cookie.split(';').filter(c => c.trim().startsWith('cto_') || c.trim().startsWith('criteo'));
if (criteoCookies.length > 0) {
console.error('INFRACTION : Traceurs Criteo déposés avant consentement :', criteoCookies);
} else {
console.log('CONFORME : Aucun traceur Criteo détecté au chargement initial.');
}
})();Phase 3 : Retrait du consentement et interruption des flux
Vérifiez que lors du retrait du consentement via le lien présent en pied de page, les scripts de reciblage sont instantanément désactivés et qu'aucun événement ultérieur (tel que viewItem ou addToCart) ne transmet de paquet de données vers les serveurs tiers.
Directives stratégiques : architecture de retargeting à risque zéro pour les marques européennes
La sanction de 40M€ infligée à Criteo confirme que les acteurs de l'ad-tech et les annonceurs partagent un même périmètre de responsabilité réglementaire. Afin d'éliminer tout risque d'amende auprès de la CNIL et du CEPD, les directions techniques et juridiques doivent opérer trois ajustements structurants :
- Blocage strict côté client (Hard Client-Side Blocking) : Abandonner les intégrations permissives au profit d'un blocage natif dans le DOM ou via un proxying côté serveur (Server-Side GTM), où les appels vers des domaines tiers exigent l'indicateur explicite
ad_storage='granted'. - Refonte des accords de coresponsabilité (Art. 26) : Mettre à jour les Data Processing Agreements (DPA) avec les prestataires publicitaires afin de définir clairement la répartition des rôles et d'établir des flux d'API automatisés pour cascader les demandes d'effacement (article 17).
- Audits automatisés continus : Mettre en œuvre des robots d'exploration synthétiques testant régulièrement les pages d'atterrissage, les tunnels de commande et les fiches produits afin de détecter toute fuite de traceurs ou exécution intempestive de pixels non autorisés.
Sources Officielles & Jurisprudence de Référence
Textes réglementaires primaires, délibérations officielles de la CNIL et arrêts de la CJUE cités dans cette analyse.
-
CNIL / Légifrance Délibération CNIL n° SAN-2023-009 du 15 juin 2023 concernant la société CRITEO (Sanction de 40 M€)Consulter le texte officiel
-
Curia / CJUE Arrêt CJUE Fashion ID (Affaire C-40/17 du 29 juillet 2019) : Co-responsabilité sur les plugins et pixels tiersConsulter le texte officiel
-
Légifrance Article 82 de la Loi n° 78-17 du 6 janvier 1978 modifiée (Régime légal des cookies et traceurs en France)Consulter le texte officiel
-
EUR-Lex Article 83 du Règlement (UE) 2016/679 (RGPD) — Conditions générales pour imposer des amendes administratives (plafonds de 20 M€ ou 4 % du CA mondial)Consulter le texte officiel
-
EUR-Lex Directive 2002/58/CE modifiée (Directive ePrivacy relative au traitement des données et à la protection de la vie privée dans le secteur des communications électroniques)Consulter le texte officiel