Excluded by noindex tag: check it is what you meant
You saw Excluded by noindex tag in Search Console. Good, the site is telling Google not to index those URLs. The task is to check that each one is meant, remove mistakes, and get important pages back into the index.
By Théophile Louvart, founder of Porteur · Updated 14 September 2026 · Markdown
What “Excluded by noindex tag” means in Search Console
Search Console’s Page indexing report lists every URL Google knows as Indexed or Not indexed, with a reason. Excluded by noindex tag means the page asked not to be indexed.
That instruction can come from a meta robots tag in the HTML, or an X-Robots-Tag in the HTTP header. Google obeys it when it can fetch the page and see the rule.
Each reason in the report lists example URLs, up to 1,000. Use them to spot patterns: types, templates, languages, parameters.
Where a noindex can come from
- A meta tag in the HTML head: <meta name="robots" content="noindex"> or <meta name="googlebot" content="noindex">.
- An HTTP response header: X-Robots-Tag: noindex, set by the server, CDN or proxy.
- A CMS switch: a site privacy or discourage indexing setting in WordPress, a visibility toggle in Shopify or Squarespace.
- A staging or preview flag shipped to production during a deploy.
- A plugin or app that marks thin or filtered pages noindex, such as tag archives or faceted lists.
Check the source first. On a single URL, view-source and look in the head for a robots meta tag. If none, check the headers for X-Robots-Tag.
curl -I https://yourproduct.com/guides/getting-started
# look for: X-Robots-Tag: noindex
Then check the CMS. In WordPress, read Settings, Reading, Search engine visibility. In hosted platforms, read any SEO or visibility panel per template or collection. Review plugins and theme options for a global or per-type noindex rule.
Also check deploy scripts and environment flags. A common mistake is shipping a staging config that sets X-Robots-Tag: noindex at the reverse proxy for all pages, or for a folder like /v2/ or /beta/.
Decide what should and should not be indexed
List the URL types you want in search, and the ones you do not. Be strict. Keep only pages with search intent and unique value.
- Keep indexed: /, /pricing, /features, /guides/getting-started, /blog/how-to-measure-x, /integrations/slack.
- Noindex on purpose: internal search results like /search?q=, order and thank-you pages like /checkout/thanks, tag archives like /tag/updates, thin filters like /blog?sort=asc, pagination duplicates where a canonical points to the main page.
If two URLs show the same content, solve duplication with rel=canonical. Use noindex for pages that exist only for users, not for discovery. A fixed page looks like /search?q=invoice still works for users, but does not appear in Google.
Read the Page indexing report and find mistakes fast
Open the Page indexing report
In Search Console, Indexing, Pages. Click Not indexed. Find Excluded by noindex tag.
Scan example URLs
Open the sample list. Look for patterns: a whole folder, a template, parameters. Example: all /blog/page/ pages.
Export and group
Export the list. Group by path and template. Match to your routes file or CMS collections.
Mark wrong cases
Highlight any that should rank: /features/ai, /guides/pricing-strategy. Note the source of the tag if you can see it.
Check the sitemap and links
A page you want indexed must be linked. Confirm it is in your sitemap and linked from / or a hub page like /guides/.
If a whole type is wrong, fix at the template or header rule. Do not edit one URL at a time when the source is global. The after state is the whole folder clean, not a single rescued page.
Confirm each URL with URL Inspection
Use the URL Inspection tool for a key URL in each pattern. It works for URLs in the verified property only. You are looking for whether crawling and indexing are allowed, and how Google saw the page last time.
- Is it on Google: yes or no.
- Last crawl date and crawler type.
- Discovered from: referring page or sitemap.
- Indexing allowed: yes or no. This reflects the noindex state Google saw.
- User-declared canonical vs Google-selected canonical.
- Enhancements found: structured data.
Test live URL
Fetch the live version. Open View tested page. Read the rendered HTML and HTTP response headers. Look for any noindex signal.
Check the headers
Confirm there is no X-Robots-Tag: noindex in the response. Check both 200 and any intermediate 301s, 302s.
Check the HTML
In the head, remove any <meta name="robots" content="noindex"> or page-level plugin output that marks the page noindex.
Request indexing
If you fixed it and the page is ready, click Request indexing. There is a small daily quota per property. This does not guarantee indexing.
Fix by cause: meta tag
If the page carries a meta noindex, remove it on templates meant to rank. Scope the change to the right layouts so you do not re-open thin pages to indexing.
Before:
<head>
<meta name="robots" content="noindex,nofollow">
</head>
After:
<head>
</head>
- In a static site or framework, edit the head component for the route group, for example pages/guides/[slug].tsx.
- In WordPress, edit the SEO plugin settings per post type. Ensure Posts and Pages are set to index. Leave search pages as noindex.
- In Shopify, check the theme.liquid head and any app-generated tags. Remove noindex from templates like article.liquid that should rank.
- In Squarespace and similar, use the built-in SEO panel to switch on or off indexing per collection.
If you used noindex,nofollow as a blanket, consider keeping links crawlable. nofollow at scale can slow discovery on small sites. A fixed /blog/how-we-built-x shows in search and still links out normally.
Fix by cause: X-Robots-Tag header
If the server sets X-Robots-Tag: noindex, remove or narrow the rule. Check the app server, reverse proxy and CDN. Headers can be added at any layer.
# Before: Nginx blocks entire /guides/
add_header X-Robots-Tag "noindex" always;
# After: header only on internal search results
location /search {
add_header X-Robots-Tag "noindex, nofollow" always;
}
Audit redirects too. A 301 or 302 can add or remove headers. Follow the chain in your browser devtools or with curl -I -L to see the final headers on the 200. The fixed /guides/getting-started returns 200 without X-Robots-Tag and renders the content in Test live URL.
Fix by cause: CMS settings, staging flags and plugins
- WordPress: Settings, Reading, untick Search engine visibility. In SEO plugins, set index for Posts, Pages and custom types that should rank. Leave internal search and archives you do not want as noindex.
- Hosted CMS: read the SEO or page settings for each collection or template. Some themes default tag archives or pagination to noindex. Keep that only if you also have canonical tags set correctly.
- Staging flags: search your config for noindex and X-Robots-Tag. Remove any environment-wide rules in production. If you need private previews, protect with a password instead.
- Plugins and apps: audit any module that auto noindexes thin or filtered pages. Keep the rule only if it matches your intent and internal links avoid those URLs.
If you use feature flags, add a test to your pipeline that crawls a few public URLs and fails the build if a noindex appears on them. A fixed /pricing after deploy should show no robots tag in source and no X-Robots-Tag in headers.
How long removal takes to reflect in Google
After you remove a mistaken noindex, Google must crawl the URL again to see the change. You can speed discovery with Request indexing, and by linking the page from / and key hubs. There is a small daily quota per property for Request indexing as of 2026.
In the Page indexing report, click Validate fix for the Excluded by noindex tag reason. This starts a re-check flow. It can take about two weeks. You will see counts update in stages as Google recrawls batches.
Indexing is not guaranteed. If a page is low quality, a crawl may remove the noindex state but still not add the page to the index. If that happens, you will see other reasons over time, such as Crawled, currently not indexed. Then work on quality, links and duplication. A fixed /guides/pricing-strategy with depth-2 links and unique copy tends to enter the index sooner.
Avoid repeats: sitemaps, links and canonicals
- Keep only indexable pages in your XML sitemap. Remove internal search, tag archives and thin filters. Update the sitemap daily on active sites.
- Link the pages you want indexed from your main navigation or hubs. A /guides/ hub linking to /guides/getting-started helps both discovery and quality judgement.
- Use rel=canonical to merge variants. Do not rely on noindex to fix duplication where a canonical is the right tool.
- Audit templates after theme or plugin updates. Regressions often add a noindex for entire post types.
Re-crawl your site after deploys with your crawler of choice. Compare headers and head tags for a set of key URLs. A fixed homepage returns 200, no noindex, canonical to itself, and is linked sitewide in the header and footer.
Questions
Find the source of the noindex. Check the HTML head for a robots meta tag, and the HTTP headers for X-Robots-Tag. If the page should rank, remove the tag at the template or header rule, then request indexing and validate the fix in Search Console.
It is a rule that tells search engines not to index a page. Use it for pages without search value, like internal search results, tag archives, login, order and thank-you pages. Do not use it to fix duplicates where a canonical is the right solution.
Open view-source and search for meta name="robots". Or run curl -I to read the HTTP headers for X-Robots-Tag. In Search Console, use URL Inspection, Test live URL, and View tested page. It shows rendered HTML and headers as Google sees them.
It varies. Use Request indexing to queue a crawl, link the page from key hubs, and click Validate fix in the Page indexing report. Re-checks can take about two weeks. Indexing is not guaranteed if the page is weak or duplicative.
Use noindex if the page is accessible to users and you want Google to fetch it but not index it. Use robots.txt to prevent crawling only when you never need Google to fetch it. If you block crawling, Google cannot see a meta noindex on that page.
Google can crawl links on a noindexed page. You do not need nofollow unless you truly do not want links followed. On small sites, blanket nofollow can slow discovery, so keep it for specific cases like internal search results pages.
Sources
Check my site, free
Paste a URL and get a free check: in about thirty seconds Porteur reads your site, the searches around it and the rivals on them, and shows three findings you can act on.
- Free check, no card
- Read-only, your own accounts
- Readable by your agent
Read next
- GuideHow to use the URL Inspection tool in Search Console
- GuideHow to use Google Search Console in ten minutes a week
- GuideCrawled, currently not indexed: what it means and what to do
- GuideDiscovered, currently not indexed: why Google has not crawled the page
- GuideCanonical tags: what they do and the mistakes that cost rankings
- GuideBlocked by robots.txt: what Google can still do with the URL
- GuideDuplicate without user-selected canonical: the fix in three steps
- GlossaryX-Robots-Tag