Guide : Ecommerce XML Sitemaps

Générique sitemap advice breaks bas à catalog scale. Ce est comment segment an ecommerce sitemap par type, stay sous le 50 000-URL/50MB limites avec a sitemap indexer, decide ce que se produit à out-de-stock et discontinued produit URLs, garder lastmod honest as inventory turns over daily, et pair sitemaps avec IndexNow — plus pourquoi splitting par category est pour monitoring, pas budget d’exploration.

Première publication : 3 juil. 2026 · Dernière mise à jour : 3 août 2026 · Avancé
1 indice probant sur cette page

An ecommerce XML sitemap listes l’URL canoniques a store veut exploré, split par contenu type (produits, categories, brands, static pages) sous un sitemap indexer. Le difficile limites vous design autour: 50 000 URLs / 50MB per fichier, up à 50 000 fichiers per indexer. Segmentation est pour monitoring dans Search Console et Bing Webmaster Outils — pas a explorer-budget or classement lever (Mueller). Seulement inclure canonical, indexable, 200-status URLs; garder lastmod honest à le dernier significant modifier et ignore priority/changefreq (Google ignores les deux). Le differentiator la plupart guides skip est out-de-stock et discontinued produits: handle les avec a documented arbre de décision (permanent vs. temporary vs. unknown) et sync sitemap removal avec internal-lien cleanup, pas blanket 404s. Automate generation donc le fichier jamais goes stale, et pair lastmod avec IndexNow pour rapide price/stock changements.

TL;DR — Segment an ecommerce sitemap par type (produits / categories / brands / static) sous un sitemap indexer, et know pourquoi: c’est a monitoring outil pour Search Console et Bing Webmaster Outils, pas a explorer-budget or classement lever (Mueller). Le limites vous design autour: 50 000 URLs / 50MB per fichier, up à 50 000 fichiers per indexer, et — pour le enterprise ceiling — GSC accepts up à 500 sitemaps et Bing states son indexer model scales à billions de URLs. Seulement inclure canonical, indexable, 200-status URLs; exclude facets, tracking params, thin variants, redirections, 4xx, et noindex. lastmod est le seulement attribut les deux moteurs utiliser — garder il honest à le dernier significant modifier; ignore priority et changefreq (Google explicitly ignores les deux). Automate generation donc le fichier jamais goes stale, et pair lastmod avec IndexNow pour rapide price/stock changements. Le differentiator la plupart guides skip: out-de-stock et discontinued produits besoin a documented arbre de décision (permanent vs. temporary vs. unknown), avec sitemap removal synced à internal-lien cleanup — pas blanket 404s.

Pourquoi generic sitemap advice breaks at catalog scale

Chaque “how to make a sitemap” article covers le même choses: le 50 000-URL limite, splitting dans an indexer, excluding junk URLs, keeping lastmod précis. c’est tout vrai, et none de il est où an ecommerce store en réalité struggles. Le store-scale problèmes sont operational: a catalog que turns over daily, out-de-stock et discontinued SKUs par le thousand, near-duplicate size/color variants, et automation que quietly arrête running. Ce piece assumes vous déjà ont a sitemap et besoin à handle ceux.

«The reason sitemaps earn their keep more as a store grows is straightforward. Google: “Generally, on large sites it’s more difficult to make sure that every page is linked by at least one other page on the site.” A sitemap is how you make sure a product that’s under-linked internally still gets discovered. John Mueller has called XML sitemaps “a minimal baseline for any serious website.” The Mueller “minimal baseline” line is relayed via Search Engine Roundtable’s coverage of an X/Twitter reply; treat it as reported, not a self-fetched primary quote. » (Traduction) (Résumé en français de la section vingt-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)

The hard limites you’re designing autour

Le sitemap protocol caps a unique fichier and donne vous a sitemap index to obtenir past it:

  • Per fichier: Google — “Tout formats limite a unique sitemap à 50MB (uncompressed) or 50 000 URLs. Si vous ont a plus grand fichier or plus URLs, vous doit break votre sitemap dans plusieurs sitemaps.” Preuve à l’appui de cette affirmation Each Google sitemap file is limited to 50,000 URLs or 50 MB uncompressed. Portée : Protocol and Search Console submission limits are separate constraints. Niveau de confiance : élevé · Vérifié : Google: Large sitemaps
  • Sitemap indexer: “A sitemap indexer fichier peut ont up à 50,000 loc balises” — je.e. il peut référence up à 50 000 child sitemaps. Vous pouvez “submit up à 500 sitemap indexer fichiers pour chaque site dans votre Search Console account.”
  • Bing’s stated ceiling est plus generous encore: up à 50 000 URLs per fichier et 50 000 child fichiers per indexer, donc “a unique sitemap indexer fichier peut référence up à 2,5 billion URLs. À scale, plusieurs indexer fichiers peut prise en charge up à 2,5 trillion URLs à travers a domain, making ce approche ideal pour grand, complexe sites.”

Pour nearly chaque store, le practical takeaway est: 50 000 URLs per fichier, split par type, un indexer. Le billions/trillions figures seulement matter si vous êtes architecting pour tens de millions de SKUs — mais ils tell vous le protocol ne va pas être votre bottleneck.

Segmentation strategy — and ce que it’s en réalité pour

Split le catalog dans logical sitemap fichiers — produits, categories/collections, brands, static/CMS pages — referenced par a unique indexer. Ici’s le partie la plupart guides obtenir incorrect: ils imply que splitting le sitemap par type améliore budget d’exploration or obtient plus pages indexé. Il ne fait pas. Mueller est explicit que ce est a diagnostic choice, pas a explorer lever:

  • “Le size & number de sitemap fichiers généralement ne va pas affecter le exploration, unless votre serveur est donc bogged bas que même fetching a handful de sitemap fichiers voudrait lent il bas…”
  • “Je généralement recommend splitting a sitemap fichier dans logical parties de votre site donc que vous pouvez monitor ceux parties individually…” Les deux relayed via Moteur de recherche Journal’s rapport de a Reddit AMA; le split-pour- monitoring point est le operative un.

Donc le payoff de a produits sitemap séparé depuis a categories sitemap est que GSC’s Sitemaps rapport et Bing Webmaster Outils montrer vous a submitted-vs-indexé ratio per segment. Quand “product pages” montre 40% indexé mais “category pages” montre 95%, vous know exactly où à regarder. Segmentation surfaces le problème; il ne fait pas corriger il, et il ne fait pas buy vous budget d’exploration.

Ce que belongs in le sitemap — and ce que doesn’t

Google’s règle est le entier filter: “Inclure l’URLs dans votre sitemap que vous vouloir à voir dans Google’s résultats de recherche. Google généralement montre l’URL canoniques dans son recherche résultats, qui vous pouvez influence avec sitemaps.” Donc a sitemap URL devrait être canonical, indexable, et retourner a 200. Preuve à l’appui de cette affirmation Google recommends listing the canonical URLs that a site wants shown in Search. Portée : Sitemap inclusion is a canonicalization hint and does not override noindex or response status. Niveau de confiance : élevé · Vérifié : Google: Build and submit a sitemap

Inclure: canonical product pages (PDPs), category/collection pages vous vouloir ranked, brand pages, indexable static pages.

Exclude:

  • Faceted / filtered / sorted URLs — ?sort=, ?color=, filter combinations. Ces belong dans votre facet stratégie (bloquer or canonical), pas le sitemap. Joshua Hardwick’s Ahrefs sitemap guide flags le ecommerce-spécifique version de ce: c’est “worth checking pour duplicate et near-duplicate pages on ecommerce sites as ces souvent slip via le net.”
  • Session IDs et tracking parameters.
  • Redirections (3xx) et erreurs (4xx / 410) — a sitemap de redirection URLs est a sitemap de URLs vous êtes telling Google pas à montrer.
  • noindex pages — contradicting yourself (submit + noindex) simplement wastes explore.
  • Thin near-duplicate variants. A séparé size/color URL avec aucun unique contenu ne devrait pas être a séparé sitemap entry — liste le canonical produit URL. Google’s 2024 produit-variants données structurées (ProductGroup / hasVariant / variesBy) est le modern façon à express que a définir de size/color options est un produit avec variants plutôt que N near-duplicate pages; let que, pas le sitemap, carry le variant relationship.

Produit images ride on le owning page entry, pas a séparé liste. ne pas construire a standalone sitemap de image URLs — ajouter an <image:image> bloquer à le canonical produit URL’s propre <url> entry en utilisant le image sitemap extension. Google: “Chaque <url> balise peut contenir up à 1,000 <image:image> balises” — plenty pour a PDP’s gallery. Preuve à l’appui de cette affirmation Product images can be added to an existing product URL entry with the image sitemap extension instead of a separate image sitemap. Portée : Each <url> entry can carry up to 1,000 <image:image> tags, and the images still have to be crawlable (not blocked by robots.txt) and, if served from another domain, verified in Search Console. Niveau de confiance : élevé · Vérifié : Google: Image sitemaps Deux crawlability requirements que sont facile à miss à catalog scale: ne pas disallow le image paths dans robots.txt, et si produit images sont servi depuis a séparé domain or CDN, vérifier que host dans Search Console or le images ne va pas être picked up. Qui variant’s image obtient le entry suit le même canonical-architecture appel as l’URL itself — attach images à le canonical produit entry, pas à chaque thin variant URL vous avez déjà excluded ci-dessus.

Le out-de-stock et discontinued produit arbre de décision

Ce est où an ecommerce sitemap article peut en réalité differentiate, parce que presque none de les handle il avec quelconque nuance — et c’est le exact décision que determines si une URL belongs dans le sitemap. j’ai written le complet framework on le Ahrefs blog (Comment Devrait Vous Handle Out-de-Stock Produits? Il Dépend), et il y a a raison c’est appelé “il depends.” il y a aucun perfect solution — le job est à establish consistent règles aligned avec votre entreprise goals, pas à memorize un réponse.

The decision splits on two axes: is it gone permanently or temporarily, and fait lune page encore have valeur (trafic, reviews, utile info)?

  • Temporarily out, confirmed returning → garder lune page actif et dans le sitemap. Offer a restock estimate, a waitlist, a notify-me. ne pas churn il dans et out de le sitemap on chaque stock toggle — c’est noise.
  • Temporarily out, status unknown → deprioritize il dans le UI et maillage interne (reorder, filter il bas) plutôt que pulling il depuis le sitemap immédiatement. Premature removal risques Google treating lune page as abandoned et losing rankings que sont difficile à win back.
  • Permanently gone, bon replacement exists → 301 redirection à a similaire produit à preserve popularité des liens, et supprimer il depuis le sitemap.
  • Permanently gone, aucun replacement, mais lune page encore earns trafic or a utile contenu (reviews, a buying guide) → il peut stay actif et dans le sitemap.
  • Permanently gone, aucun valeur → delete et retourner 404/410, et supprimer il depuis le sitemap.

A critical operational point: removal est a coordinated cleanup, pas a unique sitemap edit. As Je put il dans que article, “quand redirecting une page, nombreux systèmes va automatiquement supprimer lien internes depuis categories, facets, sitemaps, et internal recherche pages” — donc pull l’URL depuis le sitemap et clean up le lien internes que point à il (category modules, related-produit widgets, internal recherche) dans le même workflow. A dead URL c’est gone depuis le sitemap mais encore lié depuis twenty category pages hasn’t vraiment été cleaned up.

Et le chose Google’s propre guidance warns contre: ne pas reflexively mass-404 chaque discontinued produit. Google favors keeping l’URL actif avec alternatives, or redirecting à a pertinent category, over blanket 404s — et il warns contre generating grand numbers de soft 404s. A wall de newly-404’d produit pages est exactly le modèle que triggers que.

Mettre à jour frequency, lastmod, and automation

«Automate generation. This is non-negotiable on a catalog that changes daily. My standing advice on enterprise sites is: “Add sitemaps. I would make sure this is automated. If you are asked to manually create them, you can do it, but just know that if it’s manual these will rarely be kept up-to-date.” Bing has documented the exact failure mode — “Too often, Bing discovers stalled sitemaps which have the same URLs listed for months – sometimes years” — and recommends the sitemap “should ideally be automatically generated at least once a day.” » (Traduction) (Résumé en français de la section cinquante, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)

lastmod est le un attribut que matters. Les deux Google et Bing actively utiliser il; nobody utilise le others. Garder il honest:

«- Google: “Google uses the <lastmod> value if it’s consistently and verifiably (for example by comparing to the last modification of the page) accurate.” And it should “reflect the date and time of the last significant update to the page… an update to the main content, the structured data, or links on the page is generally considered significant, however an update to the copyright date is not.” » (Traduction) (Résumé en français de la section cinquante-deux, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- Bing is blunt about the anti-pattern: “Do not set the <lastmod> value set to the time you generate the sitemap. <lastmod> should be the date of the last modification of the content.” Use ISO 8601 with a time component. » (Traduction) (Résumé en français de la section cinquante-deux, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)

Ici’s a genuine gray area worth flagging: est a price modifier or a stock-status flip a “significant” mettre à jour? Par Google’s definition (principal contenu / données structurées / liens), a bare price modifier est arguably pas — mais si il changements votre Product données structurées (availability, price), c’est closer à significant. Mon honest lire: ne pas essayer à être clever à propos de il. ne pas bump lastmod on chaque trivial toggle (que simplement ajoute noise), et ne pas rely on lastmod alone à propagate a time-sensitive price drop rapide.

«Pair lastmod with IndexNow for fast-moving changes. Bing frames the two as complementary, not either/or: “While real-time URL submission protocols such as IndexNow help notify search engines of immediate content changes, sitemaps remain a foundational signal for ensuring comprehensive URL coverage across your site.” And for AI-powered surfaces specifically: “The lastmod field in your sitemap remains a key signal, helping Bing prioritize URLs for recrawling and reindexing, or skip them entirely if the content hasn’t changed since the last crawl.” So: sitemap for coverage and daily freshness, IndexNow (Bing/Yandex/others — not Google) to push individual price/stock flips without waiting for the next recrawl cycle. » (Traduction) (Résumé en français de la section cinquante-quatre, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)

Ignore priority and changefreq

«Don’t spend engineering time maintaining these. Google is unambiguous: “Google ignores <priority> and <changefreq> values.” Gary Illyes reportedly called the priority field “essentially a bag of noise.” The Illyes line is relayed via Search Engine Roundtable’s SMX Advanced 2017 coverage, not a self-fetched primary source; the point stands regardless because Google’s docs now say both fields are ignored. Whatever value your platform auto-populates for these is harmless; just don’t build logic to compute them. » (Traduction) (Résumé en français de la section cinquante-six, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)

Monitoring and diagnosis

Ce is ce que the segmentation was pour:

  • GSC Sitemaps rapport — per-segment submitted-vs-indexé. A produit-sitemap ratio c’est beaucoup pire que votre category sitemap points vous straight à a produit-page problème (contenu pauvre, bloqué variants, canonical problèmes).
  • Bing Webmaster Outils — le même segment-level view on Bing’s side, plus IndexNow submission status.
  • GSC Page Indexation rapport — watch le excluded buckets pour facet/parameter URLs ballooning, qui signifie votre facet stratégie est leaking dans discovery.
  • Site explorer / audit (Ahrefs Site Audit, Screaming Frog) — catch produits encore showing an out-de-stock message, orphaned produits ne … plus lié depuis anywhere, et le broken lien internes left behind après a redirection or removal.

«## Enterprise-scale architecture — a worked shape » (Traduction) (Résumé en français de la section soixante et un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)

Pour a catalog dans le millions de SKUs, plan le hierarchy autour votre réel volume et le submission ceilings plutôt que bolting on fichiers reactively:

/sitemap-index.xml            ← the one index you submit to GSC + BWT
  ├── /sitemaps/products-1.xml      (URLs 1–50,000)
  ├── /sitemaps/products-2.xml      (50,001–100,000)
  ├── … products-N.xml              (chunk every 50,000 canonical PDPs)
  ├── /sitemaps/categories.xml      (all category / collection pages)
  ├── /sitemaps/brands.xml          (all brand pages)
  └── /sitemaps/static.xml          (homepage, guides, policy pages)

À 5M produits c’est ~100 produit sitemap fichiers plus a handful de others — bien dans le 50 000-fichiers-per-indexer limite et GSC’s 500-sitemap acceptance. Si vous somehow exceed a unique indexer (50 000 × 50 000 = 2,5B URLs), vous split dans plusieurs indexer fichiers et submit chaque. Le point est à size le chunks up front donc daily regeneration simplement rewrites chaque fichier’s contents, et vous jamais ont à re-architect le tree parce que vous outgrew a guess.

Où ce sits

Ecommerce sitemaps overlap heavily avec lune pages ils liste. Ce que belongs dans le sitemap est decided par votre category-page et faceted-navigation stratégie (qui filtered URLs sont canonical et indexable). Ce que se produit à une URL quand a produit sells out est le out-de-stock et discontinued-produit décision. Et le sitemap est un de plusieurs façons robots d’exploration découvrir a store — alongside lien internes, IndexNow, et (pour Google Shopping) a Merchant Center produit feed. Le sitemap ne fait pas remplacer quelconque de ceux; c’est le coverage backstop que rend certain rien obtient stranded.

Ajouter une note d’expert

Épingler une citation d’expert

Nouvelle personne ? Créez son profil non revendiqué à /admin/experts/ → Épingler une citation d’expert d’abord.