How to Fix “Sitemap Could Not Be Read” for Hashnode in Google Search Console
Hashnode serves the correct sitemap when you add one small query parameter.

My Hashnode sitemap opened perfectly in the browser:
https://blog.technopathy.club/sitemap.xml
The XML looked valid, all URLs were present, and there was no obvious problem.
Google Search Console still refused to process it.
The error was:
Sitemap could not be read
In the submitted sitemap overview, Google showed:
Couldn't fetch
The solution turned out to be a single query parameter:
/sitemap.xml?sitemap=1
For my publication, the working URL is:
https://blog.technopathy.club/sitemap.xml?sitemap=1
The Google Search Console Error
I first submitted the standard Hashnode sitemap:
https://blog.technopathy.club/sitemap.xml
Google Search Console detected no pages and displayed:
Sitemap could not be read
The sitemap overview showed:
Type:
UnknownStatus:
Couldn't fetchDiscovered pages:
0Discovered videos:
0
This was confusing because the same sitemap URL worked without any visible issue in a normal browser.
The Sitemap Looked Fine in the Browser
Opening this URL directly displayed a normal XML sitemap:
https://blog.technopathy.club/sitemap.xml
That made the failure look like a Google Search Console issue at first.
But a browser successfully displaying XML does not prove that the server is returning the correct HTTP headers.
Browsers are often tolerant and render the response based on its contents. Search engines and validators may be stricter.
The Actual Problem: The Wrong Content-Type Header
My troubleshooting path eventually led to the sitemap validator at:
The validator reported the exact error:
Incorrect http header content-type: "text/html; charset=utf-8" (expected: "application/xml")
It also marked the sitemap as invalid:
Sitemap is valid: No
That explained the contradiction:
the sitemap content looked correct in the browser,
but the server returned it as
text/html,while the validator expected
application/xml,and Google Search Console therefore refused to process it.
The One-Line Fix
Instead of submitting:
/sitemap.xml
submit:
/sitemap.xml?sitemap=1
For my Hashnode publication, that means:
https://blog.technopathy.club/sitemap.xml?sitemap=1
For another Hashnode publication, use:
https://your-domain.example/sitemap.xml?sitemap=1
That small query parameter makes Hashnode return the working sitemap response.
The Successful Result
After submitting the parameterized URL, Google Search Console accepted it.
The overview showed:
Type:
SitemapStatus:
SuccessDiscovered pages:
39Discovered videos:
0
The detail page confirmed:
Sitemap processed successfully
The difference was only this:
/sitemap.xml
became:
/sitemap.xml?sitemap=1
How to Submit the Correct Hashnode Sitemap
Open Google Search Console and go to:
Indexing → Sitemaps
Submit:
sitemap.xml?sitemap=1
Or use the full URL:
https://your-domain.example/sitemap.xml?sitemap=1
Google should then recognize the type as Sitemap, fetch the file, and discover the contained pages.
Verify the Headers Yourself
You can inspect the response headers with curl.
Check the standard URL:
curl -I "https://your-domain.example/sitemap.xml"
Then compare it with:
curl -I "https://your-domain.example/sitemap.xml?sitemap=1"
The broken response may contain:
Content-Type: text/html; charset=utf-8
For a proper XML sitemap response, you would expect an XML content type such as:
Content-Type: application/xml
You can also inspect the response body:
curl -L "https://your-domain.example/sitemap.xml?sitemap=1"
The sitemap should contain valid XML and normally begin with something similar to:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
No Proxy or Custom Wrapper Required
Before finding this solution, I considered creating a wrapper on a separate subdomain that would:
fetch the Hashnode sitemap,
replace the incorrect HTTP header,
return it as
application/xml,and expose the corrected response to Google.
That would have worked, but it would also have added unnecessary infrastructure and another possible point of failure.
The query parameter solves the problem without:
PHP,
a reverse proxy,
a redirect,
a custom sitemap generator,
or additional hosting.
Final Fix
The standard Hashnode sitemap may look correct in a browser but still fail in Google Search Console because of the HTTP Content-Type header.
Do not submit:
https://your-domain.example/sitemap.xml
Submit:
https://your-domain.example/sitemap.xml?sitemap=1
This fixes the Google Search Console errors:
Sitemap could not be read
and:
Couldn't fetch
In my case, Google then processed the sitemap successfully and discovered all 39 pages.
I hope this quick fix saves you some time if Google Search Console refuses to process your Hashnode sitemap even though it looks perfectly valid in the browser.
Follow me on GitHub, Mastodon, X, and LinkedIn, or join Telegram for updates on my latest publications. Constructive feedback is always appreciated.
Thank you for reading, and happy indexing! ¯_(ツ)_/¯





