Votre boutique Shopify reçoit des visiteurs chaque jour, dans le Var, en PACA ou partout en France, et vous ne savez pas lesquels ont ajouté un produit au panier avant de partir.
Pire : vos campagnes Google Ads tournent, mais votre tableau de bord vous affiche zéro conversion. La cause ? Un tracking Shopify absent, mal configuré ou non conforme au RGPD. Depuis 2025, Shopify a supprimé checkout.liquid et imposé sa Checkout Extensibility.
Résultat : la méthode d'installation classique de GTM ne fonctionne plus sur le tunnel de commande, et le Consent Mode V2 est devenu obligatoire pour mesurer correctement les conversions de visiteurs européens.
Dans cet article, je vous explique précisément comment configurer les 3 balises essentielles (Page view, Add to cart, Purchase) dans GA4 via GTM, en respectant le RGPD grâce au Consent Mode V2 Shopify, et pourquoi ce sujet conditionne directement la rentabilité de votre e-commerce.
Sommaire
- 1 Pourquoi le Tracking Shopify Est Devenu un Casse-Tête (et Comment S'en Sortir)
- 2 Consent Mode V2 Shopify : Ce Que C'est, Ce Que Ça Change
- 3 Les 3 Balises Essentielles à Configurer dans GTM pour Votre Shopify
- 4 Comment Vérifier que Votre Tracking Fonctionne Réellement
- 5 Ma Méthodologie : Ce que Je Configure en 4 Étapes sur MaDouceVeilleuse
- 6 Questions Fréquentes sur le Tracking Shopify, GA4 et Consent Mode V2
Pourquoi le Tracking Shopify Est Devenu un Casse-Tête (et Comment S'en Sortir)
Pendant des années, la recette était simple : on collait le code GTM dans le theme.liquid, on bricolait un bout de script sur la page de confirmation de commande, et voilà, les conversions remontaient dans Google Ads. Cette époque est révolue. Depuis août 2025, Shopify a définitivement désactivé checkout.liquid pour l'ensemble des marchands, y compris les non-Shopify Plus. Le checkout et la page de remerciement tournent désormais dans un iframe sandbox isolé, totalement verrouillé au JavaScript classique.
Concrètement, votre GTM installé dans theme.liquid ne voit plus rien après que le client clique sur "Procéder au paiement". Il tourne dans le vide. Pendant ce temps, vos campagnes Google Ads reçoivent un beau silence radio là où elles attendent des données de conversion. Résultat : vos enchères Performance Max se dérèglent, votre Smart Bidding apprend sur des données incomplètes, et vous pilotez à l'aveugle.
La solution officielle : les Custom Pixels Shopify
Shopify a créé une réponse à cette contrainte : le système de Custom Pixels (Settings → Customer Events → Custom Pixels). C'est le seul endroit où Shopify autorise l'exécution de JavaScript dans l'environnement sandbox du checkout.
Depuis ce Custom Pixel, vous pouvez charger GTM, écouter les événements Shopify natifs (product_viewed, product_added_to_cart, checkout_completed...) et les pousser dans le dataLayer vers GA4 et Google Ads. C'est la méthode officielle, documentée par Google et Shopify, et c'est celle que j'applique sur MaDouceVeilleuse.
Consent Mode V2 Shopify : Ce Que C'est, Ce Que Ça Change
Le Consent Mode V2 est un protocole Google qui permet à vos balises (GA4, Google Ads, Floodlight...) de savoir si elles ont le droit de collecter des données pour un visiteur donné.
Sans lui, deux scénarios possibles : soit votre balise se déclenche avant que le visiteur ait consenti, et vous êtes hors RGPD ; soit votre bannière bloque tous les tags jusqu'au consentement, et vous perdez des dizaines de pourcents de données. Le Consent Mode V2 apporte une troisième voie : la modélisation comportementale.
Quand un visiteur refuse les cookies, Google ne reçoit pas ses données individuelles, mais il reçoit un signal agrégé anonyme qui lui permet de modéliser statistiquement le comportement probable de ce type de visiteur. Vos rapports de conversion restent exploitables même avec un fort taux de refus.
Sur MaDouceVeilleuse, l'implémentation du Consent Mode V2 a permis de récupérer environ 20 à 25 % de données de conversion supplémentaires par rapport à une configuration sans modélisation.
Les 4 paramètres de consentement du Consent Mode V2
| Paramètre | Rôle | Valeur par défaut (EU) | Impact si "denied" |
|---|---|---|---|
| analytics_storage | Autorise les cookies GA4 (mesure d'audience) | denied | GA4 fonctionne en mode cookieless, avec modélisation |
| ad_storage | Autorise les cookies Google Ads (remarketing, attribution) | denied | Remarketing désactivé, attribution modélisée seulement |
| ad_user_data (V2) | Autorise l'envoi de données utilisateur pour Google Ads | denied | Pas de match avec les audiences Google Ads |
| ad_personalization (V2) | Autorise la personnalisation des annonces (remarketing dynamique) | denied | Annonces non personnalisées pour ce visiteur |
Comment s'implémente le Consent Mode V2 sur Shopify
Sur Shopify, le Consent Mode V2 s'implémente via un snippet JavaScript à placer avant le chargement de GTM, directement dans le Custom Pixel. Ce snippet définit l'état par défaut de tous les paramètres de consentement à "denied" pour les visiteurs de la zone UE, puis attend que la bannière cookie mette à jour ces états selon le choix de l'utilisateur.
function gtag(){dataLayer.push(arguments);}
// Étape 1 : Définir l'état "denied" par défaut pour les visiteurs UE
gtag('consent', 'default', {
'analytics_storage': 'denied',
'ad_storage': 'denied',
'ad_user_data': 'denied',
'ad_personalization': 'denied',
'wait_for_update': 500,
'region': ['AT','BE','BG','HR','CY','CZ','DK','EE','FI','FR','DE','GR','HU','IE','IT','LV','LT','LU','MT','NL','PL','PT','RO','SK','SI','ES','SE']
});
// Étape 2 : Charger GTM immédiatement après
(function(w,d,s,l,i){...})(window,document,'script','dataLayer','GTM-XXXXXXX');
L'ordre est crucial : si GTM se charge avant ce snippet, vos balises GA4 et Google Ads s'activent avant le consentement, et vous êtes hors conformité, avec à la clé une potentielle amende allant jusqu'à 20 millions d'euros ou 4 % du chiffre d'affaires annuel mondial.
Les 3 Balises Essentielles à Configurer dans GTM pour Votre Shopify
Votre site, c'est un peu comme un marché en plein air dans le Var : il y a les gens qui flânent, ceux qui s'arrêtent sur un étal, et ceux qui sortent le porte-monnaie. Si vous ne distinguez pas ces trois comportements dans vos données, vous pilotez à l'intuition. Ces 3 balises représentent les 3 moments décisifs du parcours client sur votre boutique Shopify, et ce sont elles que j'ai implémentées en priorité sur MaDouceVeilleuse.
Configuration dans le Custom Pixel Shopify
Depuis l'interface Customer Events de Shopify, chaque événement natif de la plateforme (product_viewed, product_added_to_cart, checkout_completed) peut être écouté via analytics.subscribe(). Il suffit ensuite de pousser les données dans le dataLayer pour que GTM les capte et les transmette à GA4 et Google Ads.
window.dataLayer.push({
event: 'page_view',
page_location: event.context?.document?.location?.href,
page_title: event.context?.document?.title
});
});
// Balise 2 : Add to Cart analytics.subscribe('product_added_to_cart', function(event) {
const line = event?.data?.cartLine;
window.dataLayer.push({
event: 'add_to_cart',
ecommerce: {
currency: line?.merchandise?.product?.priceRange?.minVariantPrice?.currencyCode,
value: parseFloat(line?.merchandise?.price?.amount),
items: [{ item_name: line?.merchandise?.product?.title }]
}
});
});
// Balise 3 : Purchase analytics.subscribe('checkout_completed', function(event) {
const checkout = event?.data?.checkout;
window.dataLayer.push({
event: 'purchase',
ecommerce: {
transaction_id: checkout?.order?.id,
value: parseFloat(checkout?.totalPrice?.amount),
currency: checkout?.currencyCode,
tax: parseFloat(checkout?.totalTax?.amount),
shipping: parseFloat(checkout?.shippingLine?.price?.amount)
}
});
});
Configuration des balises dans GTM
Dans votre conteneur GTM, chacun de ces événements reçoit une balise GA4 Event dédiée avec le bon déclencheur. La règle d'or : chaque balise doit disposer d'une règle de consentement configurée pour respecter l'état analytics_storage avant de se déclencher. Sans cette configuration dans les "Paramètres avancés" de GTM, votre balise se déclenche même pour les visiteurs qui ont refusé les cookies.
| Balise GTM | Type | Déclencheur | Contrôle de consentement | Priorité |
|---|---|---|---|---|
| GA4 — Page View | Google Analytics: GA4 Event | Événement personnalisé : page_view | analytics_storage | ⭐⭐⭐ |
| GA4 — Add to Cart | Google Analytics: GA4 Event | Événement personnalisé : add_to_cart | analytics_storage | ⭐⭐⭐ |
| GA4 — Purchase | Google Analytics: GA4 Event | Événement personnalisé : purchase | analytics_storage | ⭐⭐⭐ |
| Google Ads — Conversion | Conversion Google Ads | Événement personnalisé : purchase | ad_storage + ad_user_data | ⭐⭐ |
Comment Vérifier que Votre Tracking Fonctionne Réellement
Installer les balises est une chose. Vérifier qu'elles fonctionnent sans double-comptage, sans données manquantes et dans le respect du consentement en est une autre. Ton tracking, s'il n'est pas validé correctement, c'est comme un compteur de vitesse qui indique 90 km/h alors que tu roules à 60 ou à 120 : les deux sont aussi dangereux pour prendre les bonnes décisions.
Les 4 outils de validation à utiliser
- Shopify Pixel Helper (extension Chrome) : vérifie que vos Custom Pixels se déclenchent correctement dans le sandbox Shopify, notamment sur le checkout. C'est le seul outil qui voit dans l'iframe sandbox.
- GTM Preview Mode : utilisable pour les pages vitrine (hors checkout). Permet de voir en temps réel quels déclencheurs s'activent et quelles données sont poussées dans le dataLayer.
- GA4 DebugView : visualise les événements en temps réel avec tous leurs paramètres. Vérifiez notamment la présence du paramètre
gcsqui indique l'état de consentement (G110 = analytics accordé, G100 = refusé). - Network tab du navigateur : filtrez sur
collect?v=2pour voir les requêtes GA4 sortantes et vérifier que les données d'e-commerce (transaction_id, value) sont bien transmises à chaque purchase.
Les erreurs les plus fréquentes sur Shopify
- Double comptage des page views : se produit quand GTM est chargé à la fois dans theme.liquid ET dans le Custom Pixel. Il faut choisir l'un ou l'autre, pas les deux.
- Événement purchase manquant : cause principale, l'ancien code de tracking sur la page Thank You n'est plus accessible depuis 2025. Solution : Custom Pixel uniquement.
- Consentement jamais mis à jour : votre bannière enregistre le choix du visiteur dans son propre cookie, mais n'envoie jamais la commande
gtag('consent', 'update', {...})vers Google. Résultat, legcsreste à "denied" même après acceptation. - GTM chargé avant le snippet Consent Mode : les balises se déclenchent avant que l'état de consentement soit défini. C'est le cas le plus courant de non-conformité RGPD détecté lors de mes audits.
MaDouceVeilleuse
MaDouceVeilleuse
Ma Méthodologie : Ce que Je Configure en 4 Étapes sur MaDouceVeilleuse
Sur ma boutique MaDouceVeilleuse, le tracking a été configuré progressivement, par ordre d'impact business. J'ai appliqué cette même séquence pour les e-commerçants que j'accompagne dans le Var, à Draguignan, Fréjus, Toulon et en PACA.
C'est une approche qui va du plus fondamental au plus avancé, et qui garantit une conformité RGPD dès la première étape.
-
1
Installer GTM via Custom Pixel avec Consent Mode V2 Créer le Custom Pixel dans Settings → Customer Events, y insérer le snippet Consent Mode V2 avant le code GTM, et configurer l'état par défaut à "denied" pour les 4 paramètres. Tester avec Shopify Pixel Helper avant toute configuration de balise.
-
2
Configurer les 3 balises essentielles dans GTM Créer les déclencheurs sur événements personnalisés (page_view, add_to_cart, purchase), les balises GA4 Event correspondantes avec mesure e-commerce, et les règles de consentement associées. Valider avec GA4 DebugView.
-
3
Connecter la bannière RGPD au Consent Mode S'assurer que l'application de gestion des cookies (Consentmo, Cookieyes, CookieBot...) envoie bien la commande
gtag('consent', 'update', {...})après le choix du visiteur. Vérifier en DebugView que le paramètregcschange après acceptation. -
4
Créer les conversions Google Ads et activer le Consent Mode Advanced Importer les conversions depuis GA4 vers Google Ads (ou configurer des balises de conversion directes), activer le mode Advanced pour bénéficier de la modélisation des données manquantes. Contrôler le ROAS réel vs modélisé dans les rapports Google Ads.
Questions Fréquentes sur le Tracking Shopify, GA4 et Consent Mode V2
Est-ce que le Consent Mode V2 est obligatoire pour toutes les boutiques Shopify ?
Ma boutique Shopify n'est pas Shopify Plus. Puis-je quand même utiliser les Custom Pixels ?
Quelle est la différence entre Consent Mode Basic et Advanced ?
Pourquoi mon événement "purchase" ne remonte plus dans GA4 depuis 2025 ?
Peut-on utiliser une application Shopify pour gérer le Consent Mode V2 sans coder ?
Comment savoir si mon tracking actuel est conforme RGPD ?
Combien de temps faut-il pour configurer le tracking complet sur Shopify ?
Articles connexes
Article rédigé par Cédric Bredusse, consultant SEO Shopify à Lorgues (Var, 83). Consultant-opérateur : les méthodes présentées sont appliquées et validées sur MaDouceVeilleuse.com. Dernière mise à jour : avril 2026.
Sources techniques : Documentation Shopify Custom Pixels GTM · Guide officiel Google Consent Mode