Pourquoi une boutique en ligne fabrique des doublons sans le vouloir
Prenez une catégorie « Baskets femme ». Vous ajoutez un filtre par pointure, un autre par couleur, un tri par prix, une pagination. Chaque combinaison crée une URL avec ses paramètres : ?pointure=38, ?couleur=blanc&tri=prix, et ainsi de suite. Une seule catégorie peut générer des dizaines, parfois des centaines d'adresses qui affichent en gros la même liste de produits. Côté fiches, même logique : un t-shirt en cinq tailles et quatre couleurs se retrouve parfois avec vingt URL distinctes alors que le texte ne change pas d'une virgule. Ajoutez les paramètres de tracking, le http et le https, et vous obtenez ce que Google appelle poliment du « contenu dupliqué ».
Le problème n'est pas une pénalité, contrairement à ce qu'on lit encore. Le problème est double : Google gaspille son temps d'exploration sur des pages sans intérêt, et il dilue les signaux (liens, engagement) entre plusieurs copies au lieu de les concentrer sur une seule. La page que vous voulez positionner se retrouve en concurrence avec ses propres clones. C'est un des leviers techniques dont je parle dans mon guide sur le référencement d'une boutique e-commerce, et franchement celui qui est le plus souvent mal réglé.
Ce que fait réellement la balise canonical
La canonical est une simple ligne dans le head de la page :
<link rel="canonical" href="https://www.maboutique.fr/baskets-femme/" />Elle dit au moteur : « cette page est une copie, la version de référence est là ». Google peut alors regrouper les doublons, n'indexer que la version canonique et lui attribuer les signaux des autres. Deux précisions qui changent tout en pratique.
D'abord, c'est une indication, pas un ordre. Si Google estime que votre canonical est incohérente (contenu trop différent, page cible qui renvoie une erreur), il l'ignore et choisit lui-même. La documentation officielle de Google sur la consolidation des URL en double est très claire là-dessus.
Ensuite, la canonical ne bloque pas l'exploration. Google doit quand même crawler la page dupliquée pour lire la balise. Sur un petit catalogue, aucun souci. Sur une boutique avec des milliers de références et des filtres croisés, ça ne suffira pas seul, on y revient plus bas.
La règle d'or : où pointer, cas par cas
Voici la grille que j'applique quand j'audite une boutique. Elle couvre l'essentiel des situations.
- Page de catégorie propre (sans paramètre) : canonical vers elle-même. C'est ce qu'on appelle une canonical auto-référente, et elle protège la page contre les paramètres ajoutés par des tiers.
- Filtre sans valeur de recherche (tri par prix, nombre d'articles par page, affichage grille ou liste) : canonical vers la catégorie propre. Personne ne tape « baskets femme triées par prix croissant » dans Google.
- Filtre avec une vraie demande (baskets femme blanches, canapé d'angle convertible) : là, réfléchissez. Si le mot-clé existe et que la page filtrée peut avoir son propre titre et un texte dédié, elle mérite d'être indexée avec une canonical vers elle-même, et idéalement une URL propre plutôt qu'un paramètre. Sinon, canonical vers la catégorie.
- Pagination (page 2, page 3) : chaque page paginée pointe vers elle-même, pas vers la page 1. Une canonical de toutes les pages vers la première fait disparaître les produits des pages suivantes du crawl. C'est l'erreur que je vois le plus.
- Variantes produit (taille, couleur) sur la même fiche : canonical vers la fiche principale. Exception : si une couleur a son propre marché (le « sac noir » d'un modèle iconique, par exemple), traitez-la comme une fiche à part entière avec son contenu propre.
- Produit présent dans plusieurs catégories : une seule URL produit, indépendante du chemin de navigation. Si votre CMS génère
/chaussures/baskets/modele-xet/nouveautes/modele-x, choisissez la version courte et faites pointer l'autre dessus. - Paramètres de tracking et de session : canonical vers l'URL nue. La canonical auto-référente sur les pages propres règle ce cas d'un coup.
Un point qui revient souvent en discussion avec mes clients : « et si je mets tout en noindex à la place ? » Le noindex retire la page de l'index mais ne transmet pas les signaux à la page principale. Pour un doublon, la canonical est presque toujours le bon outil. Le noindex garde son intérêt pour les pages qu'on ne veut vraiment nulle part (panier, compte client, résultats de recherche interne).
La mettre en place selon votre plateforme
Bonne nouvelle : la plupart des CMS e-commerce posent une canonical par défaut, mais rarement de façon complète.
Sur Shopify, les variantes pointent bien vers la fiche principale et les URL de produit vues depuis une collection renvoient vers l'URL courte. Un thème peut toutefois écraser ce comportement : vérifiez sur une fiche réelle.
Sur WooCommerce, c'est votre plugin SEO qui s'en charge. Yoast et Rank Math couvrent catégories et fiches, mais le traitement des filtres dépend du plugin de filtrage. Certains ajoutent des paramètres inconnus du plugin SEO, et vous vous retrouvez avec des URL filtrées auto-référentes, donc indexables. À tester au cas par cas. Sur PrestaShop et Magento, la logique existe nativement ou via module, avec une option à activer.
Quelle que soit la plateforme, deux règles absolues : une seule canonical par page (deux balises contradictoires et Google ignore les deux), et une URL absolue avec le protocole et le domaine, jamais un chemin relatif.
Vérifier que ça marche vraiment
Poser la balise, c'est la moitié du travail. L'autre moitié, c'est de contrôler que Google la respecte.
L'outil d'inspection d'URL de la Search Console vous donne deux lignes précieuses : « URL canonique déclarée par l'utilisateur » et « URL canonique sélectionnée par Google ». Quand les deux diffèrent, Google vous dit noir sur blanc qu'il n'a pas suivi votre consigne, et c'est là qu'il faut creuser. Si vous n'avez pas encore branché l'outil, mon article sur l'utilité concrète de Google Search Console explique par où commencer.
Dans le rapport « Pages » (anciennement Couverture), regardez les lignes « Page en double, Google a choisi une URL canonique différente de l'utilisateur » et « Page en double sans URL canonique sélectionnée par l'utilisateur ». La première liste vos canonicals ignorées, la seconde les doublons que vous n'avez pas encore traités.
Pour un contrôle en masse, un crawler comme Screaming Frog exporte la canonical de chaque URL et remonte les cas qui font échouer la consolidation : cible en 404, en redirection, en noindex, ou chaîne de canonicals (A pointe vers B qui pointe vers C).
Quand la canonical ne suffit plus
Sur une grosse boutique, les filtres croisés créent un nombre d'URL qui explose. Google continue à les explorer, canonical ou pas, et votre budget de crawl part dans des combinaisons que personne ne cherchera jamais. Google a d'ailleurs publié un guide dédié à la gestion de la navigation à facettes, qui confirme que la canonical seule est une réponse partielle.
Trois compléments, à combiner selon la taille du catalogue :
- Bloquer les combinaisons inutiles dans le robots.txt (par exemple tout ce qui contient
tri=ou plus de deux filtres). Attention, le robots.txt empêche la lecture de la canonical, donc réservez-le aux paramètres purement techniques. Si le fonctionnement de ce fichier n'est pas limpide pour vous, j'ai détaillé le rôle du robots.txt sur l'exploration dans un article dédié. - Empêcher la génération des liens : un filtre chargé en JavaScript sans modifier l'URL, ou des liens de filtres en
nofollow, réduisent le nombre d'adresses découvertes à la source. - Créer de vraies pages pour les filtres qui ont une demande, avec une URL propre, un titre, un texte et un maillage depuis la catégorie parente. C'est là que se cache souvent le trafic longue traîne d'une boutique.
En résumé, la canonical règle la question des doublons, pas celle du volume. Dès que vous dépassez quelques milliers d'URL générées par les filtres, il faut les deux.



