Back to articles

URL Marked 'noindex' in Search Console: Fix or Leave It

SEOReport Team·
noindexsearch-consolex-robots-tagindexabilitytechnical-seo

URL marked 'noindex' means Google obeyed a noindex rule in a meta tag or X-Robots-Tag header. How to tell an intentional noindex from a leftover, and fix it.

"URL marked 'noindex'" means Google crawled the page, found an instruction not to index it, and followed that instruction. On most sites the status is correct for most of its URLs: checkout pages, account pages and internal search results are meant to stay out of Google. It becomes a problem when a page you want in search is on the list, or when your own XML sitemap submits a page that also tells Google to stay away.

What the status means, and the labels it used to have

Google's Page Indexing report documentation (checked October 2026) lists "URL marked 'noindex'" among the reasons a page is not indexed and describes it in one line: "When Google tried to index the page it encountered a 'noindex' directive and therefore did not index it." The same documentation says that if you do not want the page indexed, nothing needs to change; if you do, remove the directive.

The directive can reach Google in 2 places:

  • In the HTML, as a robots meta tag: <meta name="robots" content="noindex">, or a Google-only version, <meta name="googlebot" content="noindex">.
  • In the HTTP response, as a header: X-Robots-Tag: noindex. Google also accepts the value none, which it treats as noindex, nofollow. The header can target one crawler, as in X-Robots-Tag: googlebot: noindex.

Google can only obey a rule it can read. A page that robots.txt blocks is never fetched, so a noindex on it is never seen. That is a different status, covered in the robots.txt and crawl access guide.

If you searched for "Excluded by 'noindex' tag", you are looking at the same status under its older name. Before Google reorganized the report in 2022, it sat in an "Excluded" group as "Excluded by 'noindex' tag", and a separate error, "Submitted URL marked 'noindex'", covered noindexed pages that a sitemap submitted. Google's help page on the updated issue categorization says each "Submitted" error was combined with its excluded counterpart into one issue.

Is it a problem? Fix, leave or monitor

Decide what each URL is for before you change anything.

A thank-you, cart, checkout, account, login or internal search pageLeave it. The noindex is doing its job.
A staging, preview or test copy of the siteLeave it, and confirm the production copy is clean.
An archive, tag or filter page you chose to keep out of searchLeave it, if that choice was deliberate.
A product, service, article or landing page you want foundFix it.
Your homepageFix it immediately.
Listed in your XML sitemapFix it: either the noindex or the sitemap entry is wrong.
Fine for months, then the count jumped after a launch, migration or plugin updateMonitor: find the change behind the jump.
nonoyesyesnoyesrobots meta tagX-Robots-Tag headerURL marked 'noindex'Should this page appear inGoogle?Is it listed in your XMLsitemap?Leave it. Status is correct.Remove it from the sitemapLive test still showsnoindex?Already fixed. Requestindexing and wait for arecrawl.Where was it detected?Fix the template, CMSsetting or pluginFix the server, CDN orhosting rule
Diagram source
flowchart TD
    A["URL marked 'noindex'"] --> B{"Should this page appear in Google?"}
    B -->|no| C{"Is it listed in your XML sitemap?"}
    C -->|no| D["Leave it. Status is correct."]
    C -->|yes| E["Remove it from the sitemap"]
    B -->|yes| F{"Live test still shows noindex?"}
    F -->|no| G["Already fixed. Request indexing and wait for a recrawl."]
    F -->|yes| H{"Where was it detected?"}
    H -->|robots meta tag| I["Fix the template, CMS setting or plugin"]
    H -->|X-Robots-Tag header| J["Fix the server, CDN or hosting rule"]

Where the noindex comes from

1. It was put there on purpose. Pages with no search value, private pages and duplicate views are noindexed by design. On a healthy site, most URLs in this report belong here.

2. A staging setting survived the launch. A site built behind a noindex keeps it when the template, environment file or theme option reaches production unchanged. Pages drop out of Google as they are recrawled, while visitors notice nothing.

3. A site-wide CMS switch. WordPress has a checkbox under Settings > Reading, "Discourage search engines from indexing this site". WordPress documentation says that since version 5.3 the option adds a robots meta tag with noindex,nofollow to the head of the site's pages; current versions write it with single quotes: <meta name='robots' content='noindex, nofollow' />. One box left checked on a staging copy and carried to production in a database import is enough.

4. Plugin and theme defaults. SEO plugins and themes often control indexing per content type: tag archives, author archives, media attachment pages, paginated lists. An update, a settings import or a changed default can switch a whole group of URLs to noindex at once, which is why the count tends to jump rather than creep.

5. An X-Robots-Tag header nobody sees. The header is set at the web server, CDN or hosting platform, so it never appears in the page source. Typical sources: a header rule written for PDFs that matches every path, a staging rule left on the production host, or a hosting platform that adds X-Robots-Tag: noindex to preview deployments automatically. If the page source is clean and Search Console still reports noindex, check the headers.

6. JavaScript that tries to remove it. Some single-page applications ship noindex in the initial HTML and remove it with JavaScript after load. Google's JavaScript SEO documentation warns that when Google sees noindex it may skip rendering and JavaScript execution, so the removal may never run. Our JavaScript rendering guide covers the wider gap between served and rendered HTML.

The serious case: noindexed pages your sitemap submits

A sitemap lists the URLs you want indexed; a noindex on one of them says the opposite. Google follows the noindex, and the contradiction shows that your own systems disagree about the page.

In 29 external websites whose sitemap pages SEOReport fetched between May and October 2026, 4 (14%) listed at least one page marked noindex in their own XML sitemap. The pattern we saw: shop cart, checkout and account pages left in the sitemap. The homepages in the same audits were clean: none of 45 external homepages SEOReport audited between May and October 2026 carried a noindex in a meta tag or an X-Robots-Tag header. The noindex problems worth finding sit deeper in the site.

Sitemap entries that send mixed signals, 29 external sites, May–Oct 2026

To see this subset in Search Console, open the Page indexing report and change the filter above the chart from "All known pages" to "All submitted pages". A URL counts as submitted if a sitemap you submitted or listed in robots.txt includes it, even if Google also found it through links. Every URL left under "URL marked 'noindex'" with that filter on needs a decision: remove the noindex, or remove the URL from the sitemap. Our XML sitemap guide explains how to keep a generated sitemap limited to indexable URLs.

The same contradiction appears when a canonical tag or an alternate-language link points at a noindexed page. The indexability conflicts analysis covers those combinations across a whole site.

How to confirm which cause applies

Start with URL Inspection. In the Page indexing section of the result, the "Indexing allowed?" field states the reason, for example "'noindex' detected in 'robots' meta tag" or "'noindex' detected in 'X-Robots-Tag' http header". That one line tells you whether to look in the HTML or in the server configuration.

Check the date. The default result is the version Google last crawled, and the "Last crawl" field shows when that was. If you changed the page after that date, the result describes the old page.

Run the live test. Select "Test live URL", then "View tested page". The live test shows the HTML and the HTTP response headers Google receives now, including headers your browser never displays. It does not check sitemaps or referring pages; the indexed result covers those.

Reproduce it from a terminal. These 2 commands show the header and the meta tag for any URL. The second pattern matches single and double quotes, because WordPress writes its tag with single quotes:

bash
# Response headers only: look for x-robots-tag
curl -s -D - -o /dev/null https://www.example.com/pricing/ | grep -i "x-robots-tag"
# Robots meta tags in the HTML the server returns
curl -s https://www.example.com/pricing/ | grep -i -o -E "<meta[^>]*name=[\"']?(robots|googlebot)[\"' >][^>]*>"

No output from either command means the server sent no noindex to curl. If Search Console still disagrees, repeat both commands with -A "Googlebot" added after curl -s: some servers and CDNs answer crawler user agents differently.

Read the results together:

noindexcleancleanAlready fixed; Google has not recrawled yet
noindex in meta tagnoindexnoindexTemplate, CMS setting or plugin
noindex in meta tagnoindexcleanJavaScript adds the tag after load, or the server or CDN serves Google different HTML
noindex in headernoindexcleanServer, CDN or hosting rule

Fix it by cause, then verify

  • CMS switch: clear "Discourage search engines from indexing this site" on the production site, and check it again after every staging-to-production copy.
  • Plugin or theme setting: set the content type or archive back to indexable, then confirm on 1 sample URL that the tag is gone from the HTML the server returns.
  • Template or environment variable: make production the default and noindex the exception, so a missing setting can never hide the live site.
  • X-Robots-Tag header: find the rule at the web server, CDN or hosting platform and narrow it to the paths that need it, such as staging hostnames or PDF files you do not want indexed.
  • JavaScript removal: take the noindex out of the initial HTML for pages you want indexed.
  • Intentional page in the sitemap: keep the noindex and remove the URL from the sitemap.

Do not add a robots.txt Disallow to a page you want removed. It hides the noindex from Google, and the page can still appear in search results.

Then verify in this order. First, run the live test again and confirm "Indexing allowed?" now reads "Yes". Second, use "Request indexing" for your most important fixed pages; Search Console has a daily limit on these requests, and Google's URL Inspection documentation says indexing typically takes a day or so but can take much longer. Third, select "Validate fix" on the issue in the Page indexing report. Google's documentation says validation typically takes up to about 2 weeks and sometimes much longer.

One caution: validation rechecks the URLs listed under the issue, and Google stops a validation when it finds a remaining instance. If the list also holds pages you deliberately keep noindexed, the validation will not pass. In that case, track the fixed URLs individually in URL Inspection and watch them move to indexed.

Search Console shows which URLs Google excluded and, 1 URL at a time, where it found the rule. A full SEOReport diagnosis reads the pages your sitemap lists and names each one whose robots meta tag says noindex, with a count of the pages it examined. On your homepage it reads both the meta tag and the X-Robots-Tag header and checks whether the homepage's canonical tag points at a noindexed page; it also flags alternate-language links that point at noindexed pages. That gives you 1 list to sort into intentional and accidental. Checking URL by URL is the same scale problem we describe in why one AI session cannot audit a whole website.

Common questions

Does noindex stop Google from crawling the page?

No. Google has to crawl the page to read the rule. Stopping Google from fetching a section is a robots.txt decision, and it should not be combined with a noindex you need Google to see.

How long does it take for a page to return after I remove noindex?

Nothing changes until Google recrawls the page, and Google's documentation says a less important page can wait months for that. "Request indexing" asks for a recrawl of 1 URL, but does not guarantee the page will be indexed.

Why does Search Console show noindex when my page source has none?

Usually for 1 of 3 reasons: the result comes from a crawl before you fixed the page, the noindex arrives in an X-Robots-Tag header that page source does not show, or your server or CDN responds differently to Google's crawler than to your browser. The live test settles it, because it shows the HTML and headers Google receives now.

Should tag, category and author archives be noindexed?

Only if they give a searcher nothing the articles themselves do not. Decide once per archive type, apply the decision through 1 setting, and keep noindexed archives out of the sitemap.

Get the complete diagnosis of your site

An evidence-backed report and a prioritized action plan, on a plan with monthly credits.