Checklist tracking WordPress 2026
Conférence développeurs · Web analytics 2026

25 points à vérifier avant de pousser en prod

Checklist pour les devs WordPress, tirée d'audits GTM/GA4 réels : ce qui casse le tracking en silence, ce que les changements techniques de 2026 ont ajouté à la liste, et 5 bonus pour passer au niveau au-dessus.

25 obligatoires 13 nouveautés 2026 5 bonus Maj 15.09.2026
0 / 25 obligatoires 0 / 5 bonus

Cadrage

01 à 03

Avant d'écrire une ligne de code. C'est la partie qu'on saute le plus souvent, et celle qui décide si le tracking servira à quelqu'un.

  1. 01
    Partir des questions du client, jamais des events

    Écrivez d'abord les trois à cinq questions auxquelles le client doit pouvoir répondre chaque mois (« d'où viennent mes leads qualifiés ? », « quelle page fait décrocher ? »), puis ne trackez que ce qui y répond. Un plan de tracking qui commence par la liste des events produit de la donnée que personne ne regarde.

  2. 02
    Une conversion principale, créée en événement clé

    Identifiez l'action qui a le plus de valeur pour le business (demande de devis, création de compte freemium, prise de rendez-vous) et marquez-la comme événement clé dans GA4 avant la mise en ligne. Si tout est conversion, plus rien ne l'est : les algorithmes publicitaires optimisent alors sur le bruit.

  3. 03
    Cartographier tout l'écosystème du parcours

    Le site WordPress n'est presque jamais seul : app Bubble, formulaire Typeform, prise de RDV Calendly, portail client, CRM. Chaque outil traversé doit apparaître sur le schéma avant d'instrumenter quoi que ce soit, car un maillon non tracké coupe le parcours en deux et renvoie la conversion à la mauvaise source.

Socle technique

04 à 08

Cinq vérifications qui règlent 80 % des tickets « les chiffres sont faux ». Aucune n'est nouvelle, elles sont juste rarement faites.

  1. 04
    Une seule source de vérité pour GA4

    Le thème, un plugin SEO et GTM peuvent poser chacun leur balise GA4 sans se voir : résultat, des page_view en double et des sessions coupées. Cherchez toutes les occurrences de G- et gtag( dans le code et les réglages plugins avant de conclure.

  2. 05
    Le bon ID pour le bon environnement

    La préprod qui envoie dans la propriété de prod pollue les conversions pendant des semaines avant qu'on s'en aperçoive. Pilotez l'ID de mesure par une variable GTM (lookup table sur le hostname) plutôt que par un copier-coller dans le thème.

  3. 06
    dataLayer initialisé avant le snippet

    window.dataLayer = window.dataLayer || []; doit exister avant le chargement du conteneur, sinon les push envoyés tôt disparaissent. Les plugins de cache et d'optimisation (defer, combine JS, lazy-load des scripts) réordonnent le head et cassent ce contrat sans prévenir.

  4. 07
    Le bon format de push dataLayer

    Un objet plat, la clé event en premier, des noms de paramètres stables en snake_case, des types constants (un prix reste un nombre, jamais "12,90 €") et zéro donnée personnelle en clair. Les valeurs d'un push précédent persistent : réinitialisez explicitement les objets imbriqués avant d'en pousser un nouveau.

    window.dataLayer.push({ ecommerce: null });
    window.dataLayer.push({
      event: 'generate_lead',
      form_id: 'contact-footer',
      lead_type: 'devis'
    });
  5. 08
    Recette dans le DebugView de la bonne propriété

    Un event visible dans les rapports mais absent du DebugView signifie presque toujours que vous regardez la mauvaise propriété ou le mauvais flux de données. Vérifiez l'ID de mesure réellement envoyé dans la requête réseau plutôt que celui affiché dans l'interface.

    Vu en auditDes generate_lead bien remontés côté rapports, invisibles en DebugView : deux propriétés portaient presque le même nom.

Documentation

09 à 10

Ce qui fait la différence entre une implémentation et un actif transmissible. Le dev suivant, c'est peut-être vous, dans dix-huit mois.

  1. 09
    Plan de tracking et data flow mapping versionnés

    Deux documents, pas un : le plan de tracking liste les events attendus (nom, déclencheur, paramètres, page, propriétaire) ; le data flow mapping montre par où la donnée transite, du navigateur au CRM en passant par le serveur. Sans le second, personne ne sait où chercher quand une conversion disparaît.

  2. 10
    Une nomenclature harmonisée sur toutes les plateformes

    Une même conversion doit porter la même définition partout (GA4, Google Ads, Meta, LinkedIn, CRM), avec son libellé, son identifiant et son nom technique consignés dans un seul tableau. Et une donnée = une seule clé : deux clés pour le même e-mail et la moitié des tags lisent la mauvaise.

    Vu en auditDeux clés email coexistantes dans un conteneur d'entreprise : les tags CAPI lisaient l'une, les tags Google l'autre.

Consentement

11 à 14

Le bandeau n'est pas un sujet juridique posé à côté du tracking : c'est un composant technique qui s'exécute avant tous les autres.

  1. 11
    Consent Mode v2 actif, tous les signaux sur denied

    Les quatre signaux (analytics_storage, ad_storage, ad_user_data, ad_personalization) doivent être à denied par défaut en Europe, avant tout tag. Testez avec un profil neuf et l'onglet Réseau : aucune requête vers un domaine de mesure ne doit partir avant le clic.

  2. 12
    Basic ou advanced : un choix assumé2026

    En basic, les balises ne chargent pas tant qu'il n'y a pas de consentement ; en advanced, elles chargent et envoient des pings sans cookie qui alimentent la modélisation des conversions. Le piège est qu'une mauvaise configuration ne produit aucune erreur : les audiences se vident et les conversions sous-remontent en silence.

  3. 13
    L'ordre de chargement CMP → balise Google

    La CMP doit pousser l'état de consentement par défaut avant le conteneur ; inversée, la séquence donne soit une fuite de données, soit un blocage total des conversions. C'est le scénario classique de la chute brutale de conversions le lendemain de l'installation d'une CMP.

    Vu en auditChute des conversions Google Ads à la date exacte de mise en ligne de la CMP : ni la balise ni GA4 n'avaient bougé.

  4. 14
    Les trois parcours testés, pas seulement « Accepter »

    Recettez « tout accepter », « tout refuser » et un consentement partiel, puis rechargez pour vérifier que le choix persiste et que le panneau se rouvre. Côté CNIL, refuser doit être aussi simple qu'accepter et le choix se conserve environ six mois.

Ce qui a changé en 2026

15 à 21

Sept points qui n'existaient pas dans la checklist d'il y a deux ans. Ce sont ceux qui cassent des installations qui marchaient très bien la veille.

  1. 15
    Le préchargement spéculatif de WordPress déclenche vos tags2026

    Depuis WordPress 6.8, le navigateur pré-rend les pages liées avant le clic : le JS s'exécute, et les tags qui tirent au chargement enregistrent des visites que personne n'a faites. Encadrez l'initialisation avec document.prerendering + l'événement prerenderingchange, et excluez les URLs sensibles via wp_speculation_rules_href_exclude_paths ou la classe no-prefetch.

  2. 16
    Les navigations sans rechargement ne produisent pas de page_view2026

    Filtres en AJAX, blocs interactifs, transitions de vue : l'URL change sans que la page recharge, donc la balise ne repasse pas. Basez-vous sur history change et vérifiez surtout le double déclenchement : un même filtre appliqué deux fois ne doit pas produire deux events.

    Vu en auditUn event de recherche qui partait deux fois par saisie parce que le push URL et le historyChange déclenchaient tous les deux.

  3. 17
    Google Signals découplé de ad_storage (15 juin 2026)2026

    Depuis cette date, ad_storage est le seul contrôle qui décide si les données publicitaires de votre balise GA4 atteignent Google Ads ; Google Signals ne gouverne plus que les rapports GA4. Les configurations qui reposaient sur l'ancien couplage sont à revérifier, campagne par campagne.

  4. 18
    Le chargement « maison » du conteneur est restreint (9 juillet 2026)2026

    Un conteneur servi via un chemin non supporté comme /gtag/js avec un ID G- ou AW- n'autorise désormais que les balises Google. Si un dev a bricolé le chargement pour contourner un bloqueur, les tags tiers (Meta, LinkedIn, Hotjar) cesseront de partir sans message d'erreur.

  5. 19
    Le trafic IA a son canal, et ses angles morts2026

    Depuis le 13 mai 2026, GA4 reconnaît seul ChatGPT, Gemini, Copilot, Deepseek et Grok sous medium = ai-assistant, mais Perplexity reste en Referral et les AI Overviews en Organic Search. Surtout, la majorité des visites venues d'assistants arrivent sans référent et tombent en Direct : taguez en UTM les liens que vous maîtrisez et annoncez la limite avant que le client ne bâtisse un reporting dessus.

  6. 20
    Cookies tiers maintenus, Privacy Sandbox enterré2026

    Chrome conserve les cookies tiers (la bascule « cookieless » n'aura pas lieu), mais Topics, Protected Audience et Attribution Reporting sont supprimés, dépréciés depuis Chrome 144 (janvier 2026) et retirés avec Chrome 150 (juillet 2026). Si le site embarque encore des appels à ces API, c'est du code mort à nettoyer ; et Safari comme Firefox continuent, eux, de bloquer.

  7. 21
    Les cookies posés en JavaScript sont rognés par Safari2026

    Sous ITP, un cookie écrit côté navigateur vit quelques jours, ce qui casse toute attribution sur les parcours longs (B2B, immobilier, formation). Si le client a un cycle de décision de plusieurs semaines, seul un cookie posé en HTTP depuis un sous-domaine first-party tient la route.

Juste avant la bascule

22 à 25

Les quatre vérifications à faire une dernière fois, la main sur le bouton de publication.

  1. 22
    Tags serveur : event_id partagé, aucun secret en dur2026

    Dès qu'une conversion part en double (pixel + API de conversion Meta ou LinkedIn), les deux envois doivent porter le même event_id, sinon la plateforme compte deux conversions et l'algorithme optimise sur du faux. Et aucun jeton d'API en dur dans un tag : une variable unique rend la rotation indolore, là où six copies produisent des 401 que personne ne surveille.

    Vu en auditNeuf tags CAPI serveur sans event_id, et un token expiré recopié dans six tags : erreurs 429 pendant des semaines.

  2. 23
    Exclure ce qui n'est pas du trafic client

    Déclarez les IP de l'agence et du client en trafic interne, puis vérifiez que le filtre de données GA4 est passé en « actif » et non laissé en « test » : un filtre en test ne filtre rien, il se contente de le montrer. Excluez au passage les paramètres d'URL techniques (?nocache=, ?fbclid=) qui font exploser le nombre d'URLs distinctes dans GA4 comme en Search Console.

  3. 24
    Tous les domaines du parcours déclarés

    Tunnel sur un sous-domaine, landing pages séparées, app no-code, prise de rendez-vous chez un prestataire externe : chaque domaine traversé doit figurer dans le cross-domain et dans les exclusions de référent. Sinon la session se coupe au passage et la conversion est attribuée à… votre propre site.

  4. 25
    Ce qui est réellement publié, recetté après la mise en ligne

    Un tag en pause ne tire pas et une version non publiée n'existe pas : reprenez le plan de tracking et cochez, event par event, ce qui remonte vraiment en DebugView une fois en prod. C'est la seule étape qui vérifie le résultat plutôt que l'intention.

    Vu en auditLes balises page_view et scroll en pause côté web comme côté serveur, depuis assez longtemps pour que plus personne ne s'en souvienne.

Bonus : le niveau au-dessus

B1 à B5

Ce qui sépare un setup correct d'un setup qui tient dans la durée. Aucun n'est bloquant pour la mise en ligne ; tous se voient dans la qualité des données six mois plus tard.

  1. B1
    Server-side sur un vrai sous-domaine first-party2026

    Un conteneur serveur n'a d'intérêt que s'il est hébergé sur un sous-domaine du site, avec son certificat et son DNS : c'est ce qui permet des cookies posés en HTTP et non rognés. Et le consentement doit y être respecté aussi : le server-side n'est pas un contournement de la CMP.

  2. B2
    Google tag gateway : servir la balise depuis votre domaine2026

    Le gateway fait passer gtag et GTM par votre propre domaine via Cloudflare, CloudFront, Akamai, Fastly, un load balancer GCP ou Webflow, ce qui récupère une partie du trafic bloqué par les extensions. Il ne prolonge pas pour autant la durée de vie des cookies : sans server-side complet, le gain est réel mais modeste.

  3. B3
    Enhanced conversions : l'e-mail, haché, au bon moment2026

    Les conversions améliorées demandent une donnée utilisateur (l'e-mail le plus souvent) sur l'event de conversion, hachée avant envoi et jamais stockée en clair dans le dataLayer. Vérifiez surtout qu'elle est réellement disponible au moment du push : sur un formulaire, elle disparaît souvent avant que le tag ne parte.

  4. B4
    Filtrer les bots et les agents IA2026

    Crawlers de LLM, outils de preview et agents navigateurs exécutent du JS et génèrent des hits qui ressemblent à des visites. Activez l'exclusion des bots connus et, si vous avez du server-side, filtrez sur le user-agent avant l'envoi plutôt qu'après coup dans les rapports.

  5. B5
    Une alerte plutôt qu'une découverte

    Posez une alerte simple du type « zéro conversion sur 24 h » ou « chute de 50 % des events clés », par e-mail, sur la propriété GA4. C'est ce qui transforme une panne de trois mois en un ticket d'une journée, et c'est le livrable qui rassure le plus un client.