Excluded by ‘noindex’ tag: find where the noindex comes from
“Excluded by ‘noindex’ tag” in Google Search Console means Google fetched the page and was told not to index it. The instruction comes from either a robots meta tag in the page's HTML or an X-Robots-Tag HTTP header, which doesn't appear in the page source at all. If the page should be on Google, find which of the two is present, remove it at its source, and then ask Google to crawl the page again.
Is it actually a problem?
Often it isn't. Thank-you pages, internal search results, login pages, tag archives and drafts are commonly set to noindex on purpose, and seeing them in this report means the setting works. Only act on URLs you want people to find through search.
Where a noindex can come from
- A robots meta tag in the page's
<head>. It can address all crawlers or only Google:<meta name="robots" content="noindex"> <meta name="googlebot" content="noindex, follow"> - An HTTP response header, set by the server, a CDN, a hosting platform or a framework:
You won't find this with View Source or a search through your theme files, which is why it is easy to miss.X-Robots-Tag: noindex - A CMS or site-builder setting that writes one of the two for you. In WordPress, Settings → Reading → Discourage search engines from indexing this site outputs
noindex, nofollowon every page (WordPress 5.3 and later). SEO plugins and site builders usually have a per-page "hide from search results" option as well. - A staging leftover. A noindex added to keep a test site out of Google, which came along when the site was copied to its real address.
How to check one URL
You can look by hand: View Source (Ctrl+U, or ⌘+Option+U) and search for noindex to find a meta tag; then open your browser's developer tools, reload, select the page itself in the Network tab and read its response headers for X-Robots-Tag. From a terminal, curl -I https://example.com/page prints the headers.
Or paste the address below. The checker reads the robots and googlebot meta tags and the X-Robots-Tag header, shows the exact line it found, and flags conflicting instructions (index and noindex on the same page) and a noindex combined with a canonical pointing to another URL.
How to remove it
- Meta tag in your own template: delete it, or change it to
index, follow(which is also what search engines assume when there is no tag). - CMS or plugin setting: switch the setting off for that page or the site. Removing the tag from the template won't help if the setting writes it back.
- HTTP header: find where it is added: server config (for example an Apache or nginx rule), your host's or CDN's header rules, a
_headersfile, or framework middleware. Staging environments often add it globally.
Check robots.txt at the same time. If the URL is also blocked by robots.txt, Google can't fetch the page to see that the noindex has gone. The checker above includes the robots.txt verdict for Googlebot; if it says the URL is blocked, fix that too (see Blocked by robots.txt).
How to confirm the fix
- Run the check again. It should report No noindex in meta robots or X-Robots-Tag. If you use a CDN or page cache, clear it first, or you may still be served the old version.
- In Search Console, open URL Inspection, choose Test live URL to confirm Google now sees the page as indexable, then Request indexing. For many URLs at once, use Validate fix on the report.
Recrawling and reindexing happen on Google's schedule. There is no way to force or predict the timing.
What this check can't tell you
It reads the raw HTML and headers without running JavaScript. If your site adds or removes the robots tag with script, what we see and what Google eventually processes can differ, so keep robots instructions in the server-rendered HTML. It also can't see whether Google has recrawled the page yet: only Search Console can.
Fixed this one? Before you send people to the page, run the full pre-publish check for everything else: indexing signals, link preview, broken links, alt text, structured data and HTTPS in one pass.