seodev
SEO Technique

Sitemap XML : 7 erreurs qui plombent l'indexation

Lastmod erroné, URLs non canoniques, priorités absurdes : 7 erreurs de sitemap XML qui freinent votre indexation, et comment les corriger une par une.

FT
Fathellah TAHIRI
21 fév. 20265 min

Le sitemap XML, c'est le fichier qui liste les URLs de votre site que vous voulez voir indexées par Google. Bien construit, il accélère la découverte de vos pages. Mal construit, il envoie des signaux contradictoires qui freinent votre indexation. Les 7 erreurs qu'on rencontre le plus souvent, et ce qu'elles coûtent.

À retenir
  • lastmod doit refléter la vraie date de modification du contenu, sinon Google finit par l'ignorer.
  • Un sitemap ne contient que des URLs indexables en 200 : pas de noindex, pas de redirections, pas de paramètres de filtre.
  • priority est un signal relatif entre vos pages, pas un levier de ranking.
  • Déclarez le sitemap dans robots.txt et segmentez en sitemap index au-delà de 50 000 URLs.

Erreur 1 : un lastmod figé ou inexact#

Ce que ça coûte : Google utilise lastmod pour décider quand revenir crawler une page. Un lastmod toujours à la date du jour (parce qu'il pointe sur la date de génération du sitemap, pas sur la vraie modification du contenu) finit par être ignoré : le moteur ne sait plus quelles pages ont réellement changé.

La règle est simple : lastmod reflète la date de dernière modification du contenu, rien d'autre.

Le bon vs le mauvais lastmod, pour vos devs

// Mauvais : la date de génération du sitemap, jamais stable
{ url: 'https://seodev.fr/blog/post', lastModified: new Date() }
 
// Bon : la vraie date de modif du contenu
{ url: `https://seodev.fr/blog/${post.slug}`, lastModified: new Date(post.updatedAt) }

Erreur 2 : inclure des URLs en noindex#

Ce que ça coûte : une URL en noindex placée dans le sitemap envoie deux ordres contradictoires (« indexe-la » via le sitemap, « ne l'indexe pas » via la balise). Google tranche dans le doute, et ça brouille la lecture de tout votre site. C'est l'une des causes classiques quand un site n'apparaît pas sur Google.

La règle : ne mettre dans le sitemap que les URLs que vous voulez réellement voir indexées. Tout le reste (pages noindex, espaces privés) en est exclu à la génération.

Erreur 3 : inclure des redirections#

Ce que ça coûte : une URL qui répond en 301 ou 302 dans le sitemap fait perdre du temps de crawl et signale une liste mal tenue. Le sitemap ne doit contenir que des URLs qui répondent en 200.

Vérifier les codes de réponse en une commande, pour vos devs

while IFS= read -r url; do
  status=$(curl -s -o /dev/null -w "%{http_code}" "$url")
  echo "$status $url"
done < sitemap-urls.txt | grep -v "^200"

Tout ce qui sort de ce filtre n'a rien à faire dans le sitemap.

Erreur 4 : laisser passer les paramètres de tri et de filtre#

Ce que ça coûte : les URLs à paramètres (?sort=prix&couleur=rouge) multiplient les variantes d'une même page et diluent le crawl sur des pages quasi identiques.

Mauvais  https://monsite.fr/produits?sort=prix&couleur=rouge
Bon      https://monsite.fr/produits
Bon      https://monsite.fr/produits/rouge (si page canonique séparée)

Ces URLs doivent avoir un canonical vers l'URL propre et rester hors du sitemap.

Erreur 5 : remplir priority au hasard#

Ce que ça coûte : rien de direct, et c'est justement le piège. priority est un signal relatif entre vos propres pages, pas un levier de classement. Mettre 1.0 partout revient à n'envoyer aucun signal de hiérarchie.

Une échelle qui a du sens :

  • Homepage : 1.0
  • Pages piliers et catégories : 0.8
  • Articles récents : 0.7
  • Articles anciens : 0.5
  • Pages légales : 0.3

Erreur 6 : oublier de déclarer le sitemap dans robots.txt#

Ce que ça coûte : sans la ligne Sitemap: dans le robots.txt, Google découvre votre sitemap plus tard, voire pas du tout s'il n'est pas soumis dans la Search Console. C'est une ligne, souvent oubliée.

# robots.txt
User-agent: *
Allow: /

Sitemap: https://monsite.fr/sitemap.xml

Erreur 7 : un seul sitemap pour 50 000+ URLs#

Ce que ça coûte : au-delà de 50 000 URLs ou 50 MB, le fichier dépasse la limite officielle et n'est plus lu correctement. C'est le quotidien des gros catalogues, où il faut passer à un sitemap index qui référence plusieurs fichiers segmentés. On détaille cette logique dans nos règles d'indexation e-commerce à 50 000 URLs.

Notre sitemap de référence#

Sur un site Next.js, le sitemap se génère depuis le code et reste donc toujours à jour : chaque nouvelle page entre automatiquement, avec sa vraie date de modification.

Le sitemap Next.js qu'on réutilise, pour vos devs

// app/sitemap.ts
import type { MetadataRoute } from 'next'
import { getAllPosts } from '@/shared/content/posts'
 
export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
  const posts = await getAllPosts()
  const siteUrl = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://seodev.fr'
 
  const staticPages: MetadataRoute.Sitemap = [
    { url: siteUrl, lastModified: new Date(), changeFrequency: 'weekly', priority: 1 },
    { url: `${siteUrl}/blog`, lastModified: new Date(), changeFrequency: 'daily', priority: 0.8 },
  ]
 
  const blogPages: MetadataRoute.Sitemap = posts.map((post) => ({
    url: `${siteUrl}/blog/${post.slug}`,
    lastModified: new Date(post.updatedISO ?? post.dateISO),
    changeFrequency: 'monthly',
    priority: 0.7,
  }))
 
  return [...staticPages, ...blogPages]
}

Un sitemap valide, à jour et sans erreur, c'est la base d'une indexation propre, pas un bonus. Si vous voulez vérifier que le vôtre coche toutes ces cases, c'est ce qu'on contrôle dans notre audit SEO technique.

Questions fréquentes

À quoi sert le sitemap XML pour le SEO ?

Le sitemap XML liste les URLs que vous voulez voir indexées et aide Google à les découvrir plus vite. Il ne garantit pas l'indexation, mais il accélère le crawl et signale les mises à jour via le champ lastmod.

Faut-il mettre toutes les pages dans le sitemap ?

Non. Le sitemap ne doit contenir que des URLs indexables qui répondent en 200 : pas de pages noindex, pas de redirections, pas d'URLs avec paramètres de filtre. Inclure ces URLs envoie des signaux contradictoires à Google.

Quelle est la limite de taille d'un sitemap XML ?

Un fichier sitemap est limité à 50 000 URLs et 50 MB. Au-delà, il faut passer à un sitemap index qui référence plusieurs fichiers segmentés, par type de page ou par section du site.

Le champ priority du sitemap influence-t-il le ranking ?

Non, priority est un signal relatif entre vos propres pages, pas un levier de classement. Mettre 1.0 partout n'a aucun effet. Il sert surtout à hiérarchiser vos pages aux yeux du crawler.

#sitemap#indexation#xml
Partager cet article
FT
Fathellah TAHIRI
Fondateur seodev

Fondateur de seodev, l'agence dev et SEO. On y conçoit des sites, des SaaS et des apps solides, avec le référencement pensé dans le code dès le départ : visibles sur Google au lancement et conçus pour convertir. On écrit ici ce qu'on déploie en production.

Discuter de votre projet

Ce qu'on applique vraiment, par email

Nos méthodes de terrain en dev web, mobile, SaaS et SEO, pas de théorie recopiée. Un email quand on publie, jamais de spam.

Un projet en tête ?

On en parle gratuitement et on vous dit ce qui est faisable, dans quel délai et à quel prix.

Obtenir mon devis gratuit →
  • Réponse sous 24h
  • Sans engagement
  • Prix fixe sur le devis
SEO Technique

Référencement naturel : le guide complet

Le guide complet du référencement naturel pour une PME : comment être visible sur Google, par où commencer, ce que ça coûte et combien de temps ça prend.

Fathellah TAHIRI4 min
SEO Technique

Audit de site web : 4 signaux qui coûtent cher

Un audit de site web révèle ce qui vous fait perdre des visiteurs et des clients sans que vous le voyiez. Les 4 signaux à vérifier sur votre site.

Fathellah TAHIRI6 min
SEO Technique

Pourquoi votre site n'apparaît pas sur Google

Site lancé mais absent des résultats Google ? Les 5 causes les plus fréquentes et les actions concrètes pour corriger ça, par ordre de priorité.

Fathellah TAHIRI4 min
Retour au blog