Sitemap "Couldn't fetch": working out whether Google tried and failed, or has not tried yet
"Couldn't fetch" covers two different situations. Either Google requested your sitemap and got an error, a block or a timeout, or the request is still queued and the label is a placeholder. Click the row to see which, test the sitemap URL from outside your network, and fix or simply wait accordingly.
A sitemap in this state is not being read, so new URLs are discovered only through links. Pages already indexed are unaffected.
Step one: open the row
In Indexing → Sitemaps, click the sitemap's row. The detail page says more than the list does:
- "Sitemap could not be read" with a reason such as a general HTTP error means Google made a request and it failed. Carry on with the checks below.
- No error detail and a "Last read" column that is empty usually means the fetch has not happened yet. This is common in the first hours after submitting, particularly on a new property.
For a second opinion, paste the sitemap URL into the URL Inspection bar and run Test live URL. Page fetch: Successful proves Googlebot can retrieve the file right now. The test may also say indexing is not allowed. On Hydrogen SEO sitemaps that is expected: the plugin sends X-Robots-Tag: noindex, follow with the sitemap so the XML file itself does not show up as a search result. It has no effect on Google reading the URLs listed inside.
Step two: fetch it yourself
curl -sI https://example.com/sitemap.xml
Check four things in the output.
- Status. It must be
200. A 301 or 302 means you submitted an address that redirects; submit the final URL instead. A 404 on WordPress usually means stale rewrite rules: open Settings → Permalinks and click Save Changes without altering anything. - Content type.
application/xmlortext/xml. If it saystext/html, see Sitemap is HTML. - Protocol and host. The submitted URL must match the property. An
http://sitemap submitted to anhttps://property, orwwwagainst non-www, fails. - Speed. Time the full download with
curl -s -o /dev/null -w "%{time_total}\n". A sitemap that takes many seconds to generate can time out. Hydrogen SEO caches generated sitemaps and splits large post types into pages of 1,000 entries by default, which keeps each file quick; a sitemap built on the fly with tens of thousands of entries per file is a likely timeout.
Step three: look for something blocking Google specifically
A sitemap that loads in your browser can still be refused to a crawler.
- robots.txt. A rule such as
Disallow: /*.xml$orDisallow: /sitemapblocks it. Test the sitemap path in our robots.txt tester with Googlebot selected. - Firewall and bot rules. CDN bot protection and security plugins sometimes challenge requests for XML files. Exempt verified search engine crawlers, and look in the firewall log for blocked requests to the sitemap path.
- Authentication. A site still behind HTTP basic auth returns 401 to Google.
- An index whose children fail. If you submitted a sitemap index, each child sitemap must load too. Open two or three of the
<loc>URLs listed in it.
Step four: validate the file
A sitemap Google can download but cannot parse produces different errors, but it is quick to rule out. Paste the XML into our XML sitemap validator, which checks the namespace, URL format, lastmod dates and the protocol's size limits. If the browser shows a parse error at the top of the file, the cause is stray output before the XML declaration; see XML declaration allowed only at the start.
Resubmitting properly
Once the URL returns 200 with valid XML:
- In the Sitemaps report, open the old entry's menu and choose Remove sitemap.
- Submit the same URL again. Type only the path if the report shows your domain as a fixed prefix.
- Check back the next day rather than refreshing. The status changes to "Success" with a discovered URL count once Google reads it.
If you run Hydrogen SEO, copy the address from Hydrogen SEO → Sitemap → View Sitemap so you submit the index the plugin actually serves. The full procedure is in submit your sitemap to Google, and our free SEO audit checks from outside that a sitemap exists, parses and is referenced in robots.txt.
Common questions
How long should I wait before treating "Couldn't fetch" as a real error?
If the live URL test succeeds and the file validates, give it a few days. If the detail page shows an explicit read error, do not wait; fix the cause.
Does "Couldn't fetch" stop my pages being indexed?
No. Google also discovers pages by following links. The sitemap speeds up discovery and gives you reporting, so it is worth fixing, but indexed pages stay indexed.
The URL Inspection test says "URL is not on Google" for my sitemap. Is that the problem?
No. A sitemap file is not supposed to be indexed as a page. What matters in that test is that the page fetch succeeded.
Should I submit every child sitemap separately?
No. Submit the index. Google reads the children from it, and the report lists them under the index.