← Back to blogRSS feed

shopify / sitemap / seo

Shopify Sitemap: Submit sitemap.xml and Fix Child Errors

Shopify builds sitemap.xml for you. Submit the parent once per domain, then use the child URLs to find errors, missing pages, and private-mode blocks.

Shopify generates sitemap.xml at the root of every domain. You do not build the XML; you submit that file in Google Search Console and diagnose errors by opening the child files it lists. The parent is an index, and most “sitemap error” confusion starts with submitting a child instead of the parent.

Quick answer

  • Your sitemap URL is https://your-domain.com/sitemap.xml.
  • Submit sitemap.xml once per domain. Do not submit sitemap_collections_1.xml on its own.
  • The parent lists child files for products, collections, pages, blogs, and articles.
  • A password-protected store returns Couldn’t fetch; turn private mode off before verifying.
  • Submitting does not guarantee indexing or a timeline.

What Shopify’s sitemap contains

The file you open in a browser is a sitemap index. It links to separate child files:

Child file What it lists Submit it yourself?
sitemap.xml The index at the root of the domain Yes
sitemap_products_1.xml?from=…&to=… Product URLs No
sitemap_pages_1.xml?from=…&to=… Online store pages No
sitemap_collections_1.xml?from=…&to=… Collection URLs such as /collections/shoes No
sitemap_blogs_1.xml Blog index URLs No
sitemap_articles_1.xml Individual blog posts No

Numbers increase when a child gets too large: sitemap_products_2.xml, sitemap_collections_2.xml, and so on. Submit the parent.

Shopify keeps the file current when you add a product, collection, page, image, or blog post. You cannot edit the XML by hand.

How to submit sitemap.xml

  1. In Google Search Console, add a URL prefix property for the domain, including https://.
  2. Verify the domain. The HTML tag method is the common route: copy the meta tag, paste it under the opening <head> in theme.liquid, save, then click Verify.
  3. Open Indexing → Sitemaps.
  4. In Add a new sitemap, enter sitemap.xml. The domain is already filled in, so the submitted URL is https://example.com/sitemap.xml.
  5. Click Submit.

Your robots.txt already names the parent on a standard Shopify store. You do not need to edit robots.txt.liquid to submit the sitemap.

One submission per domain, not per language

International domains are separate properties. yourstore.fr/sitemap.xml is a different submission from yourstore.com/sitemap.xml.

  • On Basic or higher, submit the sitemap for each international domain.
  • Languages added to a market are written into that domain’s sitemap files. You do not submit a second file name for each language.
  • A subfolder such as /fr/ lives on the domain you already submitted. A subdomain or country domain needs its own verification and submission.

Domains you own but do not use for international targeting should redirect to the primary domain. Otherwise they can stay discoverable.

Why a child URL may not open on its own

The parent lists product, page, and collection children with a query string: ?from= and &to=, followed by long numbers. The bare name sitemap_collections_1.xml is a different address. Open the exact URL from the parent; do not retype the child name.

A child can also fail because the store is in private mode, the sitemap is stale, or the child is too large and has been split into a numbered sibling. Check those before calling the parent broken.

In Search Console, a submitted sitemap shows Success, Has errors, or Couldn’t fetch. For a sitemap index, a broken child usually appears as errors on the sitemap.xml row. Click that row, or submit the full child URL with from and to if you need a status line for that child.

Before you call the sitemap broken:

  • The store is not in private mode.
  • The submission you rely on is sitemap.xml.
  • The child URL you open matches the parent, query string included.
  • A numbered sibling is another child inside the same index, not a replacement for the parent.

Private mode blocks the fetch

A password-protected store is in private mode. Google cannot fetch the sitemap while every page is behind a password, so expect Couldn’t fetch.

Remove the password, verify the domain with private mode off, then submit or resubmit. You can turn private mode back on after verification if the store is not ready to launch, but that blocks the fetch again. Leave the store public when you want the submitted sitemap read.

What the sitemap does not do

  • Tag views are not included. The collections child lists the collection URL, such as /collections/shoes, not /collections/shoes/some-tag. Filtered collection URLs are also disallowed in the default robots.txt.
  • Redirects are separate. Change a product or collection handle and the old URL can 404. The sitemap updates to the new URL; it does not send shoppers there. Use a redirect.
  • Removal follows the product setting. Set a product to Unlisted, or set the seo.hidden metafield to 1, and the generated file follows that setting.
  • There is no indexing clock. Shopify Help says crawling can take time and Google does not guarantee how long. Submitting is not a launch date.

Common mistakes

  1. Submitting a child URL such as sitemap_collections_1.xml instead of sitemap.xml.
  2. Submitting once for every language instead of once per domain.
  3. Verifying while private mode is on, then wondering why the fetch fails.
  4. Opening the bare child URL, seeing an error, and assuming the parent is broken.
  5. Expecting submission to index the store within a fixed number of days.

FAQ

What is my Shopify sitemap URL?

https://your-domain.com/sitemap.xml for that storefront. Each international domain has its own file at its own root.

Should I submit sitemap_collections_1.xml?

No. Submit sitemap.xml. The collections child is listed with from and to parameters; use the exact URL from the parent. If you need a status line for that child, submit the full URL.

Can Google read the sitemap while the store has a password?

Not while the storefront is password-protected. That is private mode, and Google reports Couldn’t fetch. Remove the password before verifying and submitting.

Do collection tag pages get sitemap URLs?

The collections files list collection URLs only, not tag paths. Filtered tag URLs are also disallowed in the default robots.txt.

Will Google index the store within a few days of submitting?

There is no guaranteed window. Submitting asks Google to read a file that already exists; it does not schedule when a product URL appears in search.

Sources