To check if a page is noindex, look in two places: the HTML <head> for a tag like <meta name="robots" content="noindex">, and the HTTP response headers for X-Robots-Tag: noindex. Either one is enough to keep the page out of Google, and the header version never shows up in the page source. The quickest way to do both: paste the URL into our free meta tags checker for the meta tag, then into the HTTP headers lookup for the header. Both tools are free, need no account and work from your browser (they fetch the URL from our server, so you can check any public page).
Every result quoted below comes from real runs of those two tools on November 2, 2026, plus curl to double-check. The rules about how Google reads noindex come from Google Search Central's documentation, which we re-read the same day.
The two places a noindex can hide
Google treats both forms the same way. Its documentation says plainly that the meta tag and the HTTP header "have the same effect".
- Robots meta tag, inside the HTML:
<meta name="robots" content="noindex">. The name can also begooglebot(Google only) orgooglebot-news. Google says it ignores other crawler names in this tag. - X-Robots-Tag header, sent by the server before any HTML:
X-Robots-Tag: noindex. This is the only option for PDFs, images, XML and JSON, because those files have no<head>. It can also name a crawler:X-Robots-Tag: googlebot: noindex.
Look for two values: noindex, and none, which Google defines as noindex, nofollow. A page that says none is noindexed even though the word "noindex" never appears.
How to check if a page is noindex, step by step
- Check the meta tags. Open the meta tags checker, paste the full URL (with
https://) and submit. Look for a row namedrobotsorgooglebot. If its value containsnoindexornone, that's your answer. - Check the headers. Paste the same URL into the HTTP headers lookup and look for an
x-robots-tagrow. Check the first row too: it's the HTTP status line, and anything other than 200 changes how you read step 1 (more on that below). - Check robots.txt. Open
https://the-site.com/robots.txtand see whether aDisallowline matches the path. If it does, Google never fetches the page and never sees the noindex. This catches a lot of people out. - Confirm with Google if it's your site. In Search Console, the URL Inspection tool shows "Indexing allowed?" for the version Google crawled. Click Test live URL to check the current version.
Try it now: run your URL through the free meta tags checker and the HTTP headers lookup. Both take seconds and need no sign-up.
Worked examples from real checks
Example 1: a login page with a meta noindex
We ran our own sign-in page, https://mybotsy.com/login, through the meta tags checker. It returned four rows, including:
robots noindex, follow, noarchive
That page is deliberately noindexed: a login form has no value in search results. follow lets crawlers follow its links. noarchive does nothing on Google today: Google lists it among the rules it no longer uses, because the cached-page link it controlled is gone.
Example 2: an XML sitemap with a header noindex
Next we checked https://yoast.com/sitemap_index.xml with the HTTP headers lookup. The status row read HTTP/2 200, and further down:
content-type text/xml; charset=UTF-8
x-robots-tag noindex, follow
A meta tag checker would find nothing here, because XML has no robots meta tag. The header is the only signal. This is also normal: sitemaps are meant to be read by crawlers, not listed in search results. curl -I showed the same header on WordPress REST API addresses (/wp-json/) on both yoast.com and developer.wordpress.org. Our own RSS feed, https://mybotsy.com/blog/feed, sends x-robots-tag: noindex too.
Example 3: a noindex that Google can't see
yoast.com's robots.txt contains Disallow: /wp-json/, and https://yoast.com/wp-json/ also returns x-robots-tag: noindex. Those two rules work against each other. Google's documentation says that if robots.txt blocks a URL, its indexing rules "will not be found and will therefore be ignored". Google also notes that a blocked URL can still appear in search results, for example when other pages link to it. For an API endpoint this hardly matters. For a page you really want out of Google, don't block it in robots.txt; let Google crawl it so it can see the noindex.
Example 4: a page with two robots tags
To test a common CMS problem (a theme and an SEO plugin each printing a robots tag), we served a small test page through httpbin.org whose head contained <meta name="robots" content="noindex"> followed by <meta name="robots" content="index, follow">. Our meta tags checker showed one row: robots index, follow.
That's misleading. Our checker keeps only the last value when a tag name repeats, but Google applies the more restrictive rule when rules conflict, so Google treats this page as noindex. If a page looks indexable but still won't index, open View Source (Ctrl+U, or Cmd+Option+U on a Mac), press Ctrl+F and search for robots. You may find a second tag.
Example 5: an error page in disguise
We also checked a Wikipedia page-history URL. In a browser it contains <meta name="robots" content="noindex,nofollow,max-image-preview:standard">. Our meta tags checker showed only color-scheme light dark, with no robots row. The reason: our server doesn't send a browser user agent, and Wikipedia answered it with a 403 "Wikimedia Error" page. The meta tags checker reads whatever page it receives and doesn't report the HTTP status.
The lesson applies to every tool: a missing robots row only counts if the page loaded normally. Check the status line in the HTTP headers lookup first. If it isn't 200, or the meta list looks too short for the site, don't trust the result. Check in a browser with View Source instead.
Pitfalls that cause wrong answers
- Redirects. Both tools follow redirects silently. When we ran a URL that 301-redirects to a page sending
X-Robots-Tag: noindex, the headers lookup listed the status asHTTP/2 301, merged both responses' headers (twocontent-typevalues), and showedx-robots-tag noindexwithout saying which response sent it. If you see alocationrow, run the final URL directly, or trace the chain with the URL redirect checker. Our guide to checking 301 and 302 redirects explains how to read the chain. - Noindex added or removed by JavaScript. Our checkers read the HTML the server sends and don't run scripts. Google's JavaScript SEO guide warns that when Google sees a noindex, it may skip rendering. So removing a noindex with JavaScript may not work. If you want the page indexed, the original HTML must not contain noindex.
- Crawler-specific rules.
<meta name="googlebot" content="noindex">blocks Google but not Bing. Google combines the restrictive rules from all tags it obeys: a page withrobots: nofollowplusgooglebot: noindexcounts asnoindex, nofollowfor Googlebot. - Staging settings that went live. WordPress's "Discourage search engines from indexing this site" setting prints
noindex, nofollowon every front-end page. It's the first thing to check after a site launch or migration. Our guide on checking meta tags covers other tags left over from staging. - Thinking robots.txt can noindex. Google says putting
noindexin robots.txt "is not supported". robots.txt controls crawling; only the meta tag or the header controls indexing.
Checking many URLs at once
To audit a whole site, start from the sitemap: pull every address out of it with the URL extractor (our walkthrough on extracting URLs from a sitemap shows how), then spot-check your most important templates: home page, a category, an article, a product. A noindex usually comes from a template or a site-wide setting, so one page of each type tells you most of what you need to know. Any URL in your sitemap should be indexable. A sitemap that lists noindexed pages sends Google mixed signals.
When you've fixed a page, request indexing in Search Console. Google says it can take months to recrawl a page on its own, depending on how important the page is.
Frequently asked questions
How do I know if a page is noindex without Search Console?
Check the HTML for a robots or googlebot meta tag containing noindex or none, and the HTTP headers for X-Robots-Tag. Our free meta tags checker and HTTP headers lookup do both in seconds, with no account needed. Also check robots.txt, because a blocked page hides its noindex from Google.
Is X-Robots-Tag noindex the same as the meta robots tag?
Yes. Google says both have the same effect. The header also works for PDFs, images, XML and JSON files, which can't hold a meta tag, and it never appears in the page source.
What does none mean in a robots tag?
Google defines none as noindex, nofollow. A page with content="none" is not indexed, and its links aren't followed.
Can a page blocked in robots.txt still show up in Google?
Yes. If robots.txt blocks a URL, Google can't crawl it, so it never sees the noindex. Google notes the URL can still appear in results, for example when other pages link to it. To remove it, allow crawling and serve noindex.
Why does my page still appear in Google after adding noindex?
Usually Google hasn't recrawled the page yet. Use URL Inspection in Search Console to request a recrawl. Also make sure robots.txt doesn't block the page, and that the page returns 200 with the tag in the original HTML, not added by JavaScript.
What happens if a page has two different robots tags?
Google applies the more restrictive rule, so noindex wins over index. Some checkers, including ours, show only the last tag with the same name, so search the page source for robots to see every copy.
Check your page now: the meta tags checker and HTTP headers lookup are 100% free, need no account, and give you an answer in seconds. Visitors get 5 checks a day, and a free account (no spam) removes that limit. For more free SEO tools, try the URL redirect checker, the URL extractor and the slug generator, and read how to create an SEO-friendly URL slug.