indexing.io

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

Coverage Console
White-hat · official methods
Presets

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.

Not indexed Discovered, not indexed Indexed ✓

Coverage

indexed

Submitting via

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.

GOOGLE API INDEXNOW SITEMAPS COVERAGE RE-CRAWL

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
COVERAGE Live

Not indexed yet

/blog/seo-guide-2026 is discovered but not indexed

crawled, not indexed resubmit

thin content signal, queued for re-crawl via the Indexing API

1 Submitted to Google Indexing API OK
2 Pinged Bing via IndexNow OK
Google + Bing · one status Official · white hat

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

A noindex tag is a rule that tells search engines not to show a page in their results. Google reads it in two forms: the robots meta tag <meta name="robots" content="noindex"> placed in the head of the HTML, and the X-Robots-Tag: noindex HTTP response header. The page stays live and crawlable, it simply stops appearing in search results until the rule is removed.
For an HTML page, add <meta name="robots" content="noindex"> inside the head section. For a PDF, image or other non-HTML file, send the response header X-Robots-Tag: noindex instead. Make sure the URL is not also disallowed in robots.txt, because Googlebot has to be able to fetch the page to read the rule. Then confirm with the URL Inspection tool in Search Console.
noindex controls whether the page itself appears in search results. nofollow controls whether Google follows the links on that page. They are independent, so a page can be indexed with nofollow links, or noindexed with links Google still follows. Using nofollow to keep a page out of Google does not work. The shorthand none is equivalent to writing noindex, nofollow together.
Check Settings then Reading for the Discourage search engines box, which applies a site-wide noindex and is the usual culprit after a launch. Then check your SEO plugin, where Yoast, Rank Math and SEOPress each set per-post and per-archive index settings. Themes and page builders can inject their own tag too, so confirm the final output by viewing the rendered source and the response headers rather than the settings screens.
It means Google crawled the URL, found a noindex rule on it, and kept the page out of the index as instructed. It is a report of your own configuration, not an error or a penalty. If the page should not rank, nothing needs fixing. If it should, remove the noindex from the HTML or the response headers, then request indexing so Google re-crawls and sees the change.
It takes effect the next time Googlebot crawls the page, which can be hours for a popular URL and months for one Google rarely visits. Google notes that a page may wait a long time for a revisit, so noindex alone is not a fast removal method. For anything urgent, use the Removals tool in Search Console, which hides the URL within about a day while the noindex works through.

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.

See pricing

Google Indexing API · Bing IndexNow · sitemaps · coverage monitoring · official methods only