You log into Google Search Console, open the Sitemaps or Pages report, and see a list of warnings tied to sitemap.xml or sitemap_products_1.xml, URLs marked “Submitted URL not found (404)”, “Submitted URL marked noindex”, or “Couldn’t fetch.” The instinctive next step for most merchants is to try to open and edit the sitemap file. On Shopify, that’s not possible, and trying to find a workaround usually wastes time better spent fixing the actual underlying pages.
Shopify generates and manages its sitemap automatically, and that’s a good thing, it means the sitemap structure itself is rarely the problem. The warnings you’re seeing in Search Console are almost always a symptom of something happening on the pages the sitemap references, not a flaw in the sitemap file itself. This post walks through what Shopify’s sitemap actually contains, what each common GSC warning means in a Shopify context, and exactly what levers you have to fix each one.
How Shopify’s Sitemap Actually Works
Every Shopify store has a sitemap index at yourdomain.com/sitemap.xml, which doesn’t list individual pages directly, it points to a set of child sitemaps, typically including:
sitemap_products_1.xml(and_2,_3etc. once you pass roughly 1,000 products per file)sitemap_collections_1.xmlsitemap_pages_1.xml(your static pages, like About or Contact)sitemap_blogs_1.xml(blog posts)
These files are generated dynamically by Shopify’s core platform, not stored as static files you can access via the admin, theme editor, or file system. When you publish a new product, unpublish one, or change a page’s status, the sitemap updates automatically on Shopify’s side, typically within a day, sometimes faster. There is no Shopify admin setting, theme file, or app that lets you manually add, remove, or reorder individual URLs inside these sitemap files. This is different from platforms like WordPress or custom-built sites, where the sitemap is often a plugin-generated file you can edit directly, and it trips up a lot of merchants coming from those platforms.
Only active products, published collections and pages, and visible blog posts are included. Draft and archived products are automatically excluded, which is your main lever for controlling what appears, more on that below.
Common GSC Errors and What They Actually Mean on Shopify
“Submitted URL not found (404)”
Google tried to crawl a URL listed in the sitemap and got a 404. On Shopify, this almost always means one of two things: the product or page was deleted (rather than archived) without a redirect being set up, or the URL handle was changed (for example, editing a product’s SEO-friendly URL in the admin) and the old handle now resolves to nothing.
Because Shopify’s sitemap regenerates automatically, a genuinely deleted product should drop out of the sitemap on its own reasonably quickly. If you’re still seeing the 404 warning well after deletion, it usually means Google is still working through its crawl queue for that URL, or the URL is still being linked to internally or externally somewhere, which keeps drawing Google back to it.
“Submitted URL marked noindex”
This means the page is still listed in the sitemap, but its <meta name="robots" content="noindex"> tag tells Google not to index it, a direct contradiction. On Shopify, noindex tags typically come from either manual theme.liquid edits or an SEO app that lets you exclude specific pages. Shopify’s sitemap does not automatically check for and exclude noindexed pages, so if you’ve deliberately noindexed a page (a duplicate landing page, an old promotional page you’ve kept live for a discount code, etc.), it’s normal, if slightly untidy, for it to keep showing this warning. It only needs action if the noindex was unintentional.
“Submitted URL blocked by robots.txt”
Shopify ships with a sensible default robots.txt, but merchants and developers can customise it via the robots.txt.liquid template (available on Online Store 2.0 themes). This warning almost always means a custom rule in that file is blocking a path, like an entire collection prefix or a URL pattern, that’s still being included in the sitemap. It’s a genuine conflict worth fixing, since it means you’re asking Google to crawl a URL with one hand and blocking it with the other.
“Couldn’t fetch”
This applies to the sitemap file itself rather than an individual URL within it, and it’s usually transient, a timeout during Google’s crawl, a brief outage, or a Shopify platform hiccup. If it clears on its own after a day or two, no action is needed. If it persists, check whether any apps are interfering with server responses, or whether a custom domain/DNS or CDN configuration is affecting how sitemap.xml resolves.
Redirected URLs still appearing in the sitemap
If you’ve set up a 301 redirect (via Settings > Apps and sales channels > Online Store > Navigation > URL Redirects, or automatically when Shopify detects a handle change) but the old URL is still appearing in the sitemap or Search Console, this is typically a timing issue, the sitemap should stop referencing the old URL once it’s regenerated, but GSC’s own reporting can lag behind by days or weeks as it reprocesses previously submitted URLs.
Out-of-stock or archived products lingering in search results
Technically not always a sitemap “error” in GSC’s eyes, but a common merchant frustration: a product that’s sold out is still indexed and showing in search results. This comes down to product status, not the sitemap. A product set to “Active” with zero inventory stays in the sitemap and stays indexable, Shopify treats “out of stock” and “unavailable for indexing” as separate concepts, deliberately, since many merchants want sold-out products to stay discoverable while they restock. If a product is genuinely discontinued rather than temporarily out of stock, archiving it (rather than deleting it) removes it from the sitemap while preserving its record in your admin, though for pages with existing backlinks or rankings, pairing that with a 301 redirect to a relevant replacement or collection page is usually the better move for preserving SEO value.
What You Can and Can’t Control
It’s worth being blunt about this, because a lot of wasted effort comes from merchants looking for a sitemap “edit” button that doesn’t exist.
You cannot:
– Manually add, remove, or reorder individual URLs in sitemap.xml
– Upload a custom sitemap file to replace Shopify’s generated one
– Exclude a specific product or page from the sitemap while leaving it published and active
You can:
– Change a product or page’s status (active/draft/archived), this directly controls sitemap inclusion
– Add or edit noindex tags via theme edits or an SEO app, which affects indexing even though it doesn’t remove the URL from the sitemap
– Fix the underlying cause of a 404 by restoring the page or adding a URL redirect
– Edit custom rules in robots.txt.liquid if you or a developer added them
– Prompt Google to reprocess a fixed URL through Search Console’s re-indexing request
A Step-by-Step Framework for Working Through GSC Sitemap Warnings
- Pull the full list. In Search Console, go to Indexing > Pages and also check the Sitemaps report, export or screenshot every affected URL along with its specific warning type.
- Group by error type, not by page, you’ll usually find a handful of root causes (one bad redirect setup, one over-broad robots.txt rule) explain a large chunk of the list at once.
- For each 404, check the Shopify admin: was the product/page intentionally removed? If yes, add a 301 redirect from the old handle to the closest relevant live page. If it wasn’t intentional, restore it.
- For each noindex warning, confirm whether the noindex tag was deliberate. If it was, no action is needed, it’s cosmetic in GSC’s report. If it wasn’t, check recent theme or app changes that might have applied noindex broadly.
- For robots.txt blocks, open
robots.txt.liquidin the theme editor (or ask your developer to) and check for customDisallowrules that conflict with pages still in the sitemap. - For “couldn’t fetch”, wait 48 hours and recheck before investigating further, most resolve on their own.
- Fix the underlying page or redirect first, then use “Validate Fix” in Search Console rather than trying to force a sitemap resubmission, resubmitting the sitemap itself rarely speeds anything up on Shopify, since it regenerates automatically regardless.
- Re-check after one to two weeks. Google’s re-crawl and reprocessing of previously flagged URLs isn’t instant, particularly on larger catalogues, so give it a proper cycle before assuming a fix hasn’t worked.
Working through this list product by product is manageable for a small catalogue, but on a store with a few thousand SKUs, sitemap warnings often point to a systemic pattern, a bulk product archive that didn’t get redirects, a theme update that accidentally broadened robots.txt, or an app that started applying noindex tags in bulk. Our Shopify SEO guide covers how these technical foundations fit into your broader SEO setup if you want the full picture beyond just clearing Search Console warnings.
FAQ
Can I manually edit or replace Shopify’s sitemap.xml?
No. Shopify generates sitemap.xml and its child sitemap files automatically based on your published products, collections, and pages, and there’s no admin setting, theme file, or officially supported app method to directly edit its contents. Your control lever is page status and metadata, not the sitemap file itself.
Do I need to resubmit my sitemap in Search Console every time I fix an error?
Not really. Shopify’s sitemap updates automatically as your catalogue changes, and Google recrawls submitted sitemaps on its own schedule. Resubmitting won’t hurt, but it doesn’t force Google to recrawl any faster, using the “Validate Fix” option on the specific issue in Search Console is generally more useful for tracking whether your fix worked.
Why does an out-of-stock product still appear in my sitemap and in search results?
Because “out of stock” and “excluded from indexing” are different things on Shopify. A product set to Active stays in the sitemap and indexable even at zero inventory, which is intentional, many merchants want sold-out products to keep ranking while they restock. If a product is permanently discontinued, archiving it (ideally with a redirect to a relevant page) removes it properly.
What’s the difference between “Submitted URL not found (404)” and “Submitted URL blocked by robots.txt”?
A 404 means the page genuinely doesn’t exist at that URL anymore, Shopify returned a “not found” response. A robots.txt block means the page might still exist, but a rule in your robots.txt.liquid file is telling search engines not to crawl it, while the sitemap is simultaneously telling them it exists. They need different fixes: one usually needs a redirect, the other needs a robots.txt review.
How long does it take for Google Search Console to update after I fix a sitemap issue?
It varies, but expect anywhere from several days to a few weeks, depending on how often Google crawls your site and the size of your catalogue. Larger stores with more pages generally see slower reprocessing of previously flagged URLs than smaller ones.
If sitemap warnings keep resurfacing across your store and you’re not confident diagnosing whether it’s a redirect gap, a robots.txt conflict, or something else entirely, it’s worth getting a second set of eyes on it, book a call with our team and we’ll help you work out what’s actually going on.