Indexing problem guide

A noindex tag is blocking the page

A noindex directive is an explicit request not to include a URL in a search index. It can arrive in the HTML, in an HTTP response header, or through a CMS setting that writes one of those signals for you. The fix is usually simple once you know which layer added it, but removing the wrong setting can expose an entire staging area or a private template.

Start here

Run the Run an indexing preflight before changing templates. It checks what a public crawler can see; Google Search Console remains authoritative for Google’s own indexing decision.

What the directive looks like

In HTML, look for <meta name="robots" content="noindex"> or a Googlebot-specific variant. A server can send the same instruction as X-Robots-Tag: noindex, which will not appear in View Source. A page can also inherit the directive from a WordPress setting, a Shopify theme rule, a Next.js route configuration or a deployment environment variable.

Do not confuse nofollow with noindex. Nofollow changes link hints; it does not by itself keep the current URL out of the index.

How to diagnose the real source

  1. Fetch the public URL and inspect both the raw HTML and response headers. A browser extension that only reads the rendered DOM can miss a header-level directive.
  2. Check the canonical at the same time. Removing noindex while leaving a canonical to another page can still make Google choose a different URL.
  3. Search the template or CMS setting that generated the directive. Common causes are a “discourage search engines” checkbox, a staging flag left in production, or a page type configured as hidden.
  4. Use Search Console URL Inspection after the fix. It is the authoritative source for Google’s current indexed state; an external fetch can only tell you whether the door is open.

Fix it without creating a second problem

Remove the directive only from URLs that should be searchable. Keep noindex on account pages, internal search results, test routes and duplicate utility pages. If a whole site section inherited it from a shared layout, change the layout condition rather than editing hundreds of generated pages one by one.

Once the page returns index, follow (or no robots directive at all), make sure it has a useful title, a self-referencing or intentionally chosen canonical, internal links and a sitemap entry. Then request a recrawl for the priority URL and let the normal crawl process handle the rest.

The common mistake is deleting a noindex tag from the page but leaving a CDN rule or X-Robots-Tag header in place. Check the response that Googlebot receives, not just what your CMS editor displays.

Not sure this is your problem? Start from how Google indexing works and what to expect, which covers the whole process and links to every diagnosis from one place.

Related checks and guides