Check & monitor · Noindex checker
Noindex Checker: Find Noindex Tags, Meta Robots Rules and X-Robots-Tag Headers Across Your Site
A stray noindex is the most expensive typo in technical SEO. It costs nothing to ship, breaks no tests, throws no error, and takes an average team about six weeks to notice. The classic version arrives with a staging site that gets promoted to production with its blanket noindex still attached. The quieter version is a plugin setting, a CDN rule or a template partial that puts the rule on one section of the site and nowhere else, so traffic drops in a way that looks like an algorithm update.
Submit · monitor coverage · official methods only
Ready to check coverage
Paste a sitemap to sweep every URL for index status, then submit the missing ones through the official Google Indexing API and Bing IndexNow.
Coverage
indexed
Avg time to index
URLs submitted
Now eligible
Live, interactive · sample data · official methods only
Official Google Indexing API · Bing IndexNow · verified sitemaps · no spam, no PBNs
In short
A noindex checker scans a list of URLs and reports which ones carry a noindex rule, either as a robots meta tag in the HTML or as an X-Robots-Tag HTTP header. Both forms tell Google to keep the page out of search results. The exact syntax is <meta name="robots" content="noindex"> in the head of the page, or the response header X-Robots-Tag: noindex. Google only obeys the rule if it can fetch the page, so a URL that is also disallowed in robots.txt can stay indexed indefinitely because the crawler never reads the noindex. That is why directive checks and live index status have to be read together: one tells you what the page asked for, the other tells you what Google actually did.
Last updated July 2026
This page is both a reference for the noindex rule and the checker for it. You can read exactly how the robots meta tag and the X-Robots-Tag header work, which directive values Google still supports in 2026, and why noindex plus a robots.txt disallow cancel each other out. Then run your URLs through the console above: Indexing reads the indexing directives each page is serving, checks whether Google and Bing actually have the URL, names the reason for every gap in plain English, and resubmits the pages that should be indexed through the official Google Indexing API, Bing IndexNow and your sitemaps.
Official methods only
White hat · no spam, no PBNs
Why it works
What your team gets with noindex checker
Both places a noindex hides
Plenty of audits check the HTML and stop there. A noindex served as an X-Robots-Tag response header is invisible in view-source and just as final.
Directive plus real index status
Knowing a page says noindex is half an answer. Knowing whether Google still has it in the index tells you whether the rule ever landed.
Every URL, not the ten you remember
Accidental noindex spreads by template, so it hits a whole section at once. Checking a sample is how sections stay missing for months.
What it handles
Submitted, monitored and fixed, automatically
Indexing submits your URLs through the official Google Indexing API, Bing IndexNow and clean XML sitemaps, watches coverage across both engines, and flags any page that drops out with a plain-English reason so you can resubmit and get it back.
- Reads the robots meta tag and X-Robots-Tag header each URL actually serves
- Confirms whether Google and Bing still have the page in their index
- Names the reason a page is missing, including a noindex you did not intend
- Flags the noindex plus robots.txt disallow conflict that leaves pages stuck in the index
- Resubmits pages you meant to keep through the official Indexing API, IndexNow and sitemaps
- Monitors thousands of URLs so a template change shows up in days, not next quarter
Not indexed yet
/blog/seo-guide-2026 is discovered but not indexed
thin content signal, queued for re-crawl via the Indexing API
Why Indexing
One place to submit, monitor and fix coverage
Not a black-hat indexer that risks your site, not a free checker that only tells you the bad news. Indexing unifies official submission and live coverage monitoring, the white-hat way, across Google and Bing.
Submits the official way
Bulk-submit through the Google Indexing API, Bing IndexNow and clean XML sitemaps. We speed discovery and re-crawl using methods the engines support, never spam, PBNs or black-hat tricks.
Monitors coverage live
You do not refresh a search bar one URL at a time. Indexing watches which pages are in Google and Bing, catches anything that drops out, and tracks time-to-index across your whole site.
Diagnoses and resubmits
Every non-indexed page comes with a plain-English reason, then auto-resubmits through the official API so it gets another shot. Google still decides, but nothing waits in the dark.
At a glance
Every robots directive Google supports in 2026, and where you can set it
These values work in both the robots meta tag and the X-Robots-Tag HTTP header. Combine them with commas. Where two rules conflict, Google applies the more restrictive one, so nosnippet beats max-snippet:50.
| Directive | What it tells Google | Meta tag | X-Robots-Tag | Status in 2026 |
|---|---|---|---|---|
| all | No restrictions on indexing or serving. This is the default when you set nothing. | Yes | Yes | Supported |
| noindex | Do not show this page, media or resource in search results at all. | Yes | Yes | Supported |
| nofollow | Do not follow the links on this page. | Yes | Yes | Supported |
| none | Shorthand for noindex, nofollow together. | Yes | Yes | Supported |
| nosnippet | Show no text snippet and no video preview for this page. | Yes | Yes | Supported |
| indexifembedded | Index this content when it is embedded through an iframe, even though the page itself says noindex. | Yes | Yes | Supported |
| max-snippet:[number] | Cap the snippet at this many characters. | Yes | Yes | Supported |
| max-image-preview:[setting] | Cap the image preview size. Accepts none, standard or large. | Yes | Yes | Supported |
| max-video-preview:[number] | Cap the video preview at this many seconds. | Yes | Yes | Supported |
| notranslate | Do not offer a translation of this page in search results. | Yes | Yes | Supported |
| noimageindex | Do not index the images on this page. | Yes | Yes | Supported |
| unavailable_after:[date] | Stop showing the page after the given date and time. | Yes | Yes | Supported |
| noarchive | Historically suppressed the cached copy link. | Yes | Yes | No longer used by Google |
| nocache | A non-Google variant of noarchive. | Yes | Yes | Not used by Google |
| nositelinkssearchbox | Historically suppressed the sitelinks search box. | Yes | No | No longer used by Google |
What does noindex mean?
noindex is a rule you attach to a single page telling search engines not to show it in results. It is not a suggestion the way rel=canonical is a suggestion. When Google can fetch a page and reads a noindex on it, the page comes out of the index and stays out until the rule is removed. Everything else about the page keeps working normally: it is still crawled, links on it are still followed unless you also say nofollow, and users can still reach it directly.
The distinction people get wrong is noindex against a robots.txt disallow. They sound like they do the same job and they do the opposite. robots.txt controls crawling: it stops the fetch. noindex controls indexing: it requires the fetch, because the rule lives inside the response. A disallowed URL can still show up in Google, listed by URL with no title or snippet, harvested from the anchor text of links pointing at it. That is the situation Search Console labels Indexed, though blocked by robots.txt, and it surprises somebody new every week.
There is a second thing worth knowing before you reach for noindex at scale. A noindexed page still costs a crawl. Googlebot has to fetch it to see the rule, so noindex is the wrong tool for controlling crawl waste on an infinite parameter space or a faceted navigation with millions of combinations. Use robots.txt for waste you never want fetched and noindex for pages that must be fetchable but must not rank.
- noindex removes a page from search results. It does not block crawling.
- robots.txt blocks crawling. It does not remove a page from the index.
- A page can be disallowed and still appear in Google, without a snippet.
- noindex requires the page to be crawlable, or Google never reads the rule.
- noindex does not save crawl budget, because the fetch still happens.
How to add a noindex tag: meta robots and X-Robots-Tag
There are exactly two supported ways. The first is the robots meta tag, written as <meta name="robots" content="noindex"> and placed in the head of the HTML. Google recommends the head, and in practice it also honors robots meta tags found in the body, but nothing else does reliably, so keep it in the head. Swapping robots for googlebot in the name attribute makes the rule apply to Google only, which is how you keep a page in Bing while pulling it from Google.
The second is the X-Robots-Tag HTTP response header, written as X-Robots-Tag: noindex. This is the right choice for anything that is not HTML: PDFs, images, spreadsheets, generated exports, any file you cannot put a meta tag inside. It is also the practical option when the rule has to be applied by rule at the server or CDN edge rather than page by page in a template. You can target a specific crawler in the header too, with a syntax like X-Robots-Tag: googlebot: noindex, and you can stack multiple headers or comma separate the values.
Because both methods are equally binding, an audit that only reads HTML misses half the possible causes. A noindex header never appears in view-source. It shows up only if you look at the response headers, which is exactly why a CDN rule or a misapplied server config can strip a section out of Google while every page looks perfectly normal in a browser.
- HTML pages: <meta name="robots" content="noindex"> in the head.
- Google only: <meta name="googlebot" content="noindex">.
- Non-HTML files and edge rules: X-Robots-Tag: noindex as a response header.
- Target one crawler in the header with X-Robots-Tag: googlebot: noindex.
- Combine values with commas, as in content="noindex, nofollow".
- A header noindex is invisible in view-source. Check the headers, not just the markup.
Why noindex plus a robots.txt disallow cancel each other out
This is the single most common way a noindex fails to do anything. Somebody wants a section gone, so they add noindex to the pages and disallow the path in robots.txt on the same day, reasoning that two locks are safer than one. The disallow takes effect first. Googlebot stops fetching those URLs, never sees the noindex, and the pages that were already indexed simply stay indexed. Google is explicit about this: for the noindex rule to work, the page must not be blocked by robots.txt and must be otherwise accessible to the crawler.
The fix is a sequence, not a setting. Remove the disallow, leave the noindex in place, and let Google re-crawl the pages so it can read the rule. Once the URLs have dropped out of the index, you can add the disallow back if you also want to stop the crawling. Skipping the middle step is why teams end up filing removal requests for pages they thought they had handled months earlier.
Google also killed the shortcut people reach for here. The unofficial noindex directive inside robots.txt stopped being honored in September 2019, so a line reading Noindex: /private/ in robots.txt does nothing at all today. Anyone still carrying that from an old config has a set of pages they believe are hidden and are not.
- A disallowed page cannot be de-indexed by noindex, because the rule is never read.
- Correct order: remove the disallow, confirm the drop, then re-add the disallow if needed.
- noindex inside robots.txt has not worked since September 2019.
- For urgent removals, use the Removals tool in Search Console while the noindex takes effect.
- Verify with the URL Inspection tool, which shows the indexing rules Google actually saw.
How to find noindex pages on your site
Spot checks do not find this problem, because accidental noindex almost never lands on one page. It arrives through a template, a plugin default, a CMS toggle or an edge rule, which means it hits a whole section at once: every product variant, every paginated archive, every page under one route. If you check ten URLs you will very likely check ten of the wrong ones.
A workable method has three parts. First, read the directive each URL is actually serving right now, in both the HTML and the response headers, rather than trusting what the template is supposed to output. Second, compare that against real index status in Google and Bing, since a page carrying noindex that is still indexed and a page with no noindex that is missing are two completely different problems with opposite fixes. Third, keep the check running, because the failure mode is a change nobody remembers making. Most free noindex checkers cap you at ten or fifteen URLs pasted into a box, which is fine for confirming one suspicion and useless for a catalog.
That is the workflow the console on this page runs. Point it at your sitemaps or a URL list, and Indexing reads the indexing directives and the live index status for every URL together, groups the results so a template-wide problem shows as one block rather than four thousand separate rows, and resubmits the pages you meant to keep through the official Google Indexing API, Bing IndexNow and your sitemaps. It will never claim it can force a page into Google, because nothing can. What it does is make sure you are never the last to know.
- Check whole sitemaps, not samples. Accidental noindex is template-wide.
- Read HTML and response headers, since either can carry the rule.
- Pair directives with live index status. The combination names the actual problem.
- Watch for the pattern where one route or one CMS section is affected and nothing else.
- Re-check on a schedule. Deploys, plugin updates and CDN rules reintroduce it.
noindex, nofollow, canonical or 410: picking the right signal
Four different tools get used interchangeably for the same vague goal of making a page go away, and they produce four different outcomes. noindex keeps a page out of results while leaving it live and crawlable, which is what you want for thank-you pages, internal search results, thin tag archives, gated content and staging environments that must stay reachable. nofollow says nothing about indexing at all: it only stops Google following the links on the page, and using it to hide a page is a misunderstanding that shows up in audits constantly.
rel=canonical is for consolidation rather than removal. It tells Google that two URLs are the same thing and which one to keep, and Google treats it as a strong signal rather than a directive. Use it for duplicates, parameter variants and syndicated copies. Combining a canonical with a noindex on the same URL sends contradictory instructions and is on Google's own list of canonicalization mistakes, so pick one.
For pages that genuinely no longer exist, a status code beats a rule. 404 tells Google the URL is gone, 410 tells it the URL is gone permanently and tends to drop out slightly faster. Both are cleaner than leaving a stub page serving 200 with a noindex on it, which is a soft 404 waiting to happen. The test is simple: if the URL should never have existed, return the status code. If it should exist for users but not for searchers, use noindex.
- noindex: page stays live and crawlable, but out of search results.
- nofollow: only stops link following. It does not hide the page.
- rel=canonical: consolidates duplicates. It is a strong signal, not a directive.
- noindex plus canonical on one URL is contradictory. Choose one.
- 404 or 410: the correct answer when the page is genuinely gone.
Good questions
Questions about noindex checker
Explore more
More ways teams get every page indexed
Stop guessing. Get every page indexed and keep it that way.
Bulk-submit your URLs through the official Google and Bing channels, monitor coverage, and resubmit anything that drops out, automatically. White hat only, so we speed discovery without ever guaranteeing what Google chooses to index.
Google Indexing API · Bing IndexNow · sitemaps · coverage monitoring · official methods only