Aller au contenu
indexurl.fr

// guide pilier

Sitemap XML : guide complet pour l'indexation Google.

Construire un sitemap XML qui aide vraiment Google à découvrir les pages : limites 50k URLs, URLs canoniques uniquement, sitemap index, soumission Search Console, erreurs courantes à corriger.

Par Léa Vasseur Lecture 14 min

// sommaire (8 sections)

Sitemap XML : à quoi ça sert vraiment.

Un sitemap XML est un fichier qui liste les URLs d'un site avec, pour chacune, des métadonnées optionnelles (date de modification, langue, médias associés). Il sert à aider Google à découvrir des pages, surtout celles qui sont mal maillées en interne ou récentes. Il ne force ni le crawl, ni l'indexation. Pour le processus complet, voir le guide indexation Google.

// à retenir

Le sitemap est un signal de découverte, pas une commande d'indexation. Google peut tout à fait crawler une URL listée et décider de ne pas l'indexer (qualité, duplication, canonical contradictoire). Un sitemap propre accélère seulement la première étape du processus.

Cas où le sitemap est vraiment utile

  • Sites volumineux (e-commerce, médias, annuaires) où le maillage interne ne suffit pas à exposer toutes les URLs en quelques niveaux de profondeur.
  • Nouveaux sites sans backlinks ni autorité, dont la découverte par crawl naturel serait lente.
  • Pages orphelines ou peu liées (landings éphémères, pages de campagne) qu'il faut signaler explicitement.
  • Mises à jour rapides : signaler via lastmod les contenus qui viennent d'être révisés pour accélérer leur recrawl.

Limites techniques : 50k URLs, 50 Mo, UTF-8.

Le protocole sitemap impose des contraintes strictes. Les dépasser, c'est se faire ignorer partiellement ou totalement par Google.

URLs

50 000

Maximum par fichier sitemap. Au-delà : sitemap index obligatoire.

Poids

50 Mo

Non compressé. La compression gzip (.xml.gz) est tolérée et recommandée.

Encodage

UTF-8

Strictement obligatoire. Caractères spéciaux (&, <, >) à entité-encoder.

Sitemap index pour gros sites

Au-delà de 50 000 URLs, créer un fichier sitemap index qui référence plusieurs sitemaps thématiques. Découpage logique : par section, par type de contenu, ou par date.

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://exemple.fr/sitemap-pages.xml</loc>
    <lastmod>2026-05-08</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://exemple.fr/sitemap-articles.xml</loc>
    <lastmod>2026-05-07</lastmod>
  </sitemap>
</sitemapindex>

Le sitemap index est lui-même limité à 50 000 sous-sitemaps, ce qui permet d'adresser jusqu'à 2,5 milliards d'URLs. Suffisant pour 99,99 % des projets.

Règle d'or : URLs canoniques uniquement.

C'est la règle qui élimine la majorité des problèmes de sitemap. Le sitemap doit lister exclusivement les URLs à indexer, dans leur version canonique, retournant un statut 200.

// à retenir

Une URL dans le sitemap = un signal "indexe-moi". Toute URL non indexable (noindex, 404, redirection, canonical vers ailleurs) envoie un signal contradictoire que Google interprète comme un défaut de qualité globale du site.

À exclure systématiquement

  • URLs avec noindex en meta robots ou X-Robots-Tag (cf. statuts d'exclusion GSC).
  • URLs en 404, 410, 5xx ou tout statut autre que 200.
  • URLs en redirection 301 ou 302 (mettre l'URL de destination directement).
  • URLs dont le rel="canonical" pointe vers une autre URL (voir le guide canonical).
  • URLs bloquées dans robots.txt (Google ne peut pas les crawler de toute façon).
  • Pages de filtres, de tri, de paramètres URL (?sort=price, ?color=red) sauf cas e-commerce maîtrisés.
  • Pages d'authentification, de panier, de remerciement, de tests, et toute page volontairement non publique.

URLs absolues, protocole exact

Toujours utiliser des URLs absolues complètes (https://exemple.fr/page), jamais relatives. Le protocole (https://) doit correspondre à la version canonique du site, et le domaine doit matcher exactement (avec ou sans www selon le canonical retenu).

Priority, changefreq, lastmod : ce que Google lit.

Le protocole sitemap définit trois balises optionnelles. Google n'en utilise réellement qu'une, et seulement à certaines conditions.

<priority>

Valeur entre 0.0 et 1.0 censée indiquer l'importance relative d'une page. Google l'ignore complètement depuis 2017, confirmé en 2026. La priorité d'indexation se calcule via le PageRank interne et l'autorité globale, pas via une déclaration unilatérale dans un fichier XML.

retirer ou laisser, sans effet

<changefreq>

Fréquence supposée de mise à jour (always, hourly, daily, weekly, monthly, yearly, never). Également ignoré par Google. Le crawl budget est alloué selon les patterns d'updates réels observés, pas selon une déclaration. Polluer le sitemap avec des changefreq fictifs ne change rien.

retirer pour alléger le fichier

<lastmod>

Date de dernière modification du contenu. Google s'en sert depuis 2023 pour prioriser le recrawl, à condition qu'elle soit honnête. Format ISO 8601 (2026-05-08T10:00:00+02:00). Ne mettre à jour que si le contenu a réellement changé.

à conserver et fiabiliser

// signal de confiance

Mettre la date du jour dans tous les lastmod à chaque rebuild = signal pollué. Google détecte ces patterns et finit par ignorer la balise pour tout le site. La fiabilité du lastmod se construit en évitant les fausses dates.

Soumission : Search Console et robots.txt.

Deux canaux complémentaires pour signaler le sitemap à Google. Les utiliser tous les deux, jamais l'un à la place de l'autre.

  1. 01

    Déclarer dans robots.txt

    Ajouter une ligne Sitemap: en bas du fichier /robots.txt, avec l'URL absolue complète. Tous les bots respectueux du protocole (Google, Bing, Yandex, et la plupart des crawlers SEO) lisent cette ligne pour découvrir le sitemap automatiquement, sans soumission manuelle.

    User-agent: *
    Allow: /
    
    Sitemap: https://exemple.fr/sitemap-index.xml
  2. 02

    Soumettre dans Search Console

    Search Console > propriété > Sitemaps > "Ajouter un nouveau sitemap" > coller l'URL relative (ex. sitemap-index.xml) > Envoyer. Google traite le fichier en quelques minutes à quelques heures et affiche le statut "Réussi" + le nombre d'URLs détectées. C'est aussi via ce panneau que les erreurs de parsing remontent. Pour aller plus loin, voir le guide Search Console.

  3. 03

    Suivre les statuts dans le rapport Indexation

    Search Console > Indexation > Pages > filtrer par sitemap source. Le ratio "indexées / soumises" donne la santé éditoriale du site. En dessous de 70 %, examiner les statuts d'exclusion (Détectée non indexée, Explorée non indexée, Dupliquée sans canonical, etc.) pour identifier les causes.

Les 6 erreurs courantes.

Les erreurs qui reviennent le plus souvent en audit. Toutes corrigeables en un changement de configuration côté CMS ou générateur.

01 URLs en noindex présentes dans le sitemap

Le pire signal contradictoire possible. Google interprète l'incohérence comme un défaut de maintenance globale et baisse la confiance accordée au sitemap entier. Filtrer en amont via le générateur (Yoast/Rank Math le font nativement, vérifier les réglages).

02 URLs en 404 ou 410

Apparaissent quand des pages sont supprimées sans régénération du sitemap. Crawler le sitemap mensuellement avec Screaming Frog (mode List) pour détecter les URLs qui répondent autre chose que 200. Toute 404 dans le sitemap est un signal de site mal maintenu.

03 Dépassement des 50 000 URLs ou 50 Mo

Le fichier est ignoré ou tronqué par Google. Aucune notification claire dans Search Console, juste un nombre d'URLs détectées plafonné. Solution : passer à un sitemap index avec découpage thématique ou par date.

04 Lastmod faux ou systématiquement à la date du jour

Génère un signal de modification permanente que Google finit par ignorer. Si le CMS ou le générateur met à jour lastmod à chaque build sans tenir compte du contenu réel, mieux vaut retirer la balise totalement.

05 Sitemap non listé dans robots.txt

La soumission Search Console fonctionne, mais les autres bots (Bing, IA crawlers, outils SEO tiers) ne trouvent pas le sitemap. Ajouter Sitemap: https://exemple.fr/sitemap-index.xml en bas du robots.txt. Coût zéro, gain pour la découverte multi-moteurs.

06 URLs en conflit avec leur canonical

Le sitemap liste /produit-A?ref=facebook alors que la page a un rel="canonical" vers /produit-A. Google doit choisir entre deux signaux contradictoires et finit par ignorer le sitemap pour cette URL. Lister exclusivement la version canonique.

Checklist sitemap 2026.

12 points à valider sur un audit sitemap. Cocher les 12 = sitemap conforme aux bonnes pratiques 2026 et aux exigences Google.

[ ]01. Fichier accessible en HTTP 200 à l'URL annoncée (test direct dans le navigateur)

[ ]02. Encodage UTF-8 strict, caractères spéciaux entité-encodés

[ ]03. Limite respectée : max 50 000 URLs et 50 Mo non compressé par fichier

[ ]04. Sitemap index utilisé si plus de 50k URLs, avec sous-sitemaps thématiques

[ ]05. Aucune URL en noindex, 404, 410, 5xx ou redirection

[ ]06. Aucune URL bloquée par robots.txt

[ ]07. Toutes les URLs sont canoniques (pas de version paramétrée, pas de duplicat)

[ ]08. URLs absolues avec protocole HTTPS et domaine canonique exact

[ ]09. lastmod au format ISO 8601, mis à jour uniquement si le contenu change

[ ]10. Ligne Sitemap: présente dans /robots.txt

[ ]11. Sitemap soumis et validé dans Search Console (statut "Réussi")

[ ]12. Ratio indexées/soumises supérieur à 70 % dans le rapport Indexation

Questions fréquentes.

Mon sitemap XML est-il obligatoire ?

Non, jamais obligatoire au sens strict : Google découvre les URLs principalement via les liens internes et externes. Mais le sitemap est fortement recommandé dès qu'un site dépasse quelques dizaines de pages, pour les nouveaux sites peu maillés, les sites volumineux (e-commerce, médias), les pages orphelines ou peu liées, et les contenus à crawler en priorité après mise à jour. Pour un site de moins de 10 pages parfaitement maillées, l'absence de sitemap n'est pas pénalisante. Pour tout le reste, c'est un signal de découverte qui accélère significativement l'indexation initiale.

À quelle fréquence Google relit-il mon sitemap ?

Pas de fréquence fixe garantie. En pratique, Google télécharge le sitemap quand il en a besoin : après soumission initiale dans Search Console, après notification d'un changement de lastmod, ou de manière opportuniste quand Googlebot crawle le site. Pour les gros sites publiant souvent, Google peut télécharger le sitemap plusieurs fois par jour. Pour un site stable, plutôt une fois par semaine. La donnée exacte est visible dans Search Console > Sitemaps > "Dernière lecture".

Faut-il mettre les images et vidéos dans le sitemap ?

Selon le besoin. Pour un site dont les images sont déjà liées dans le HTML (balises <img> classiques), un sitemap image n'apporte rien : Google les découvre nativement. Le sitemap image (extension image:image) devient utile pour les sites où les images sont chargées en lazy via JS, où les images ont un poids éditorial fort (banque d'images, e-commerce avec photos produit qui doivent ranker en Google Images), ou pour signaler une licence et une légende précises. Pour les vidéos hébergées en propre, le sitemap vidéo permet de fournir durée, miniature, transcription et accélère l'apparition dans Google Video Search.

Plusieurs sitemaps ou un seul gros sitemap ?

Plusieurs, dès que le site grossit. La règle : un fichier sitemap = max 50 000 URLs et 50 Mo non compressé. Au-delà, créer un sitemap index qui référence plusieurs sitemaps thématiques. Découpage typique : un sitemap par section (pages, articles, produits, catégories) ou par date de publication (sitemap-2024.xml, sitemap-2025.xml, etc.). Avantages : facilite le diagnostic dans Search Console (taux d'indexation par sitemap), accélère la mise à jour ciblée, contourne les limites techniques. Pour un site de moins de 5 000 URLs, un seul fichier suffit largement.

Pourquoi Google n'indexe pas toutes les URLs de mon sitemap ?

C'est attendu. Le sitemap est une suggestion de découverte, pas une obligation d'indexation. Google choisit ce qu'il indexe selon la qualité perçue, la duplication, l'autorité du site et le crawl budget disponible. Les causes fréquentes : contenu jugé pauvre ou dupliqué (statut "Explorée non indexée"), canonical qui pointe ailleurs, qualité globale du site insuffisante pour justifier le crawl complet, page nouvelle pas encore crawlée. Le rapport Search Console > Indexation > Pages indique le statut exact pour chaque URL exclue. Si le ratio indexées/soumises est très bas (moins de 50 %), traiter en priorité la qualité éditoriale et la déduplication, pas le sitemap.

Comment générer un sitemap sur WordPress, Astro ou Next.js ?

WordPress : Yoast SEO, Rank Math ou SEOPress génèrent automatiquement un sitemap index à /sitemap_index.xml ou /sitemap.xml. Désactiver le sitemap natif WP (/wp-sitemap.xml) pour éviter les doublons. Astro : intégration officielle @astrojs/sitemap, génère /sitemap-index.xml au build, configurable pour exclure des routes. Next.js : générer manuellement via app/sitemap.ts (App Router) ou pages/sitemap.xml.ts (Pages Router) qui retournent le XML, ou utiliser la lib next-sitemap qui scanne le build automatiquement. Toujours vérifier que le sitemap généré ne contient que des URLs canoniques 200.

Faut-il mettre la balise lastmod ?

Oui, mais uniquement si elle est honnête. Google utilise réellement lastmod depuis 2023, à condition qu'elle reflète une vraie modification de fond du contenu (pas une régénération automatique du build). Trois règles : (1) ne pas mettre la date du jour à chaque génération si rien n'a changé, sinon Google ignore le signal pour tout le site ; (2) format ISO 8601 obligatoire (2026-05-08T10:00:00+02:00) ; (3) cohérence avec les en-têtes HTTP Last-Modified de la page. Un lastmod faux est pire que pas de lastmod du tout. Si le CMS ne sait pas distinguer une vraie maj d'un rebuild, retirer la balise.

Comment vérifier qu'un sitemap est valide ?

Trois niveaux. (1) Validation syntaxique XML : ouvrir l'URL dans un navigateur, le XML doit s'afficher sans erreur. Outil tiers : XML Sitemap Validator. (2) Validation Search Console : Sitemaps > ajouter l'URL > vérifier le statut "Réussi" et le nombre d'URLs détectées. Tout statut "Couldn't fetch" ou "Erreur" doit être traité immédiatement. (3) Audit qualité : crawler le sitemap avec Screaming Frog (mode List > From XML Sitemap) pour vérifier qu'aucune URL ne renvoie 404, 301, 5xx, ou n'est en noindex. Un sitemap propre = 100 % d'URLs canoniques en 200.

// passer à l'action

Diagnostiquer une URL listée dans le sitemap.

Vérifier en 10 secondes qu'une URL du sitemap est bien indexable : statut HTTP, robots, canonical, balises meta. Le diagnostic gratuit liste les blocages techniques exacts.