Les UTM (Urchin Tracking Module) sont des paramètres ajoutés à la fin d'une URL pour tracer l'origine d'un visiteur. Cinq paramètres standards : `utm_source` (qui envoie le trafic — google, linkedin, newsletter), `utm_medium` (canal — cpc, social, email), `utm_campaign` (nom de campagne), `utm_content` (variante de créa ou placement), `utm_term` (mot-clé en search). GA4 parse automatiquement ces paramètres et les attribue à chaque session. Sans UTM, tout votre trafic payant ou social non-Google atterrit en `(direct) / (none)` ou `referral` — illisible.
La règle d'or : conventions strictes et minuscules partout. `utm_source=Linkedin` et `utm_source=linkedin` créent deux lignes dans GA4. Mêmes problèmes avec `LinkedIn-Ads` vs `linkedin_ads`. On documente une convention dans un Google Sheet partagé et on génère les URLs avec un builder (Google Campaign URL Builder, ou un outil interne). Pour les valeurs `utm_medium`, on s'en tient au standard GA4 : `cpc`, `display`, `social`, `email`, `affiliate`, `referral` — sinon GA4 classe mal vos canaux dans les rapports par défaut et fausse votre ROAS par canal.
Trois pièges courants. UTM sur trafic interne : ne taggez jamais vos liens internes (entre pages de votre site), ça écrase la session originelle et casse l'attribution multi-touch. UTM sur lien email : utilisez-les, mais désactivez l'auto-tagging si votre outil email les ajoute en doublon. UTM cassés en redirection : si vous redirigez `/promo` vers `/produits/promo`, vérifiez via GTM Preview que les paramètres sont conservés. On corrige ces points en routine sur un projet web analytics — c'est ce qui sépare un dashboard pilotable d'un dashboard décoratif.
Convention UTM saine
- utm_source : nom de la plateforme en minuscules — `google`, `linkedin`, `newsletter-mensuelle`.
- utm_medium : standard GA4 uniquement — `cpc`, `social`, `email`, `display`, `affiliate`.
- utm_campaign : nom court et stable — `lancement-produit-q2`, jamais d'espaces ni accents.
- utm_content : pour A/B test ou variante de créa — `carousel-v1`, `cta-rouge`, `headline-a`.
