nilkick
Crawlability 5 min read

The leftover noindex tag that is hiding your whole launch

A single line left over from staging can tell Google to keep your entire site out of search, while everything looks perfect to you. The noindex tag is the quietest launch-killer there is. Here is how it works, why it leaks, and how to catch it.

Last updated June 17, 2026
Key takeaway

A leftover noindex is the single most common reason a finished, working site is completely missing from Google. It explicitly tells search engines to keep a page out of the index, and it silently overrides everything else you do. It usually leaks from a staging or preview build that uses noindex to stay out of search, then ships to production unremoved. Find it by checking your page source and HTTP headers, confirm it in Search Console’s page report, then remove it and request reindexing.

  • noindex lives in a <meta name="robots"> tag or an X-Robots-Tag HTTP header, and it tells Google to keep the page out of search entirely.
  • It leaks because staging and preview environments add it on purpose to stay out of search, and it gets promoted to production by accident.
  • It only works if the page is crawlable. If you also block the page in robots.txt, Google never sees the noindex and the page can stay indexed.
  • Catch it by viewing your live page source and HTTP headers, and by checking the ‘Excluded by noindex tag’ status in Search Console.

A leftover noindex tag is the single most common reason a finished, working site is completely absent from Google. It explicitly tells search engines to keep your page out of the index, it overrides every other signal you have, and it leaves no visible trace on the page itself, so it can hide your entire launch for weeks while everything looks fine to you. Here is how noindex works, why it ends up on production by accident, and how to find and clear it.

01 · The instructionHow noindex works

noindex is a direct instruction to search engines: do not put this page in your index. It is delivered one of two ways, and you need to check both, because one is invisible in your page source.

as a meta tag, in your <head>
<meta name="robots" content="noindex">
or as an HTTP response header
X-Robots-Tag: noindex

The meta tag sits in your HTML <head>. The header is sent by your server and does not appear anywhere in the page source, which makes it the sneakier of the two. Both have the same effect: a page carrying either will be kept out of Google entirely, no matter how good it is. There is no partial version. A single noindex on your homepage can remove your whole site from search.

02 · The staging trapWhy it leaks to production

noindex is not a bug; it is a feature being used in the wrong place. Staging and preview environments add it on purpose, because you genuinely do not want your half-built site showing up in Google. Many frameworks and hosting platforms apply noindex to preview and staging deployments automatically.

The accident happens at promotion. When the staging configuration, or a preview build, becomes production without someone explicitly stripping the noindex, the tag or header rides along. Your live site is now telling Google to ignore it, and because nothing on the page looks wrong, you have no reason to suspect it. This is why a polished launch can sit at zero search visibility with no obvious cause.

The robots.txt interaction makes this worse

For noindex to work, Google has to be able to crawl the page and see it. If you also block the page in robots.txt, Google never fetches it, never sees the noindex, and the page can stay indexed as a bare URL, which is the opposite of what you wanted. So never pair a noindex with a robots.txt block on the same page. To remove a page from search, allow crawling and use noindex; to keep it out of crawling, that is a separate robots.txt decision with its own tradeoffs.

03 · The checkHow to find it and fix it

Three checks will catch every case:

  1. View your live page source. Look in the <head> for <meta name="robots" content="noindex">. Do this on the production URL, not your local build.
  2. Check your HTTP headers. The header version is invisible in source, so inspect it directly:
check for a noindex header
curl -sI https://pagewatch.dev | grep -i x-robots-tag
  1. Check Search Console. The URL Inspection tool tells you whether a page is indexable, and the Page indexing report lists anything “Excluded by noindex tag.” This is the most reliable confirmation, and it covers your whole site at once.

To fix it: remove the meta tag or header from production, confirm the page is crawlable (not blocked in robots.txt), then request indexing in Search Console. Google will re-crawl, see the page is now indexable, and add it.

04 · The indexable floorWhere it fits

Being indexable at all is the most basic Crawlable signal in getting indexed, and a stray noindex is the cheapest possible way to fail it. It costs nothing to check and everything to miss, so make “read the live page source and headers” a step in every launch. A finished product hidden by one leftover line is not a search problem you need to out-rank; it is a tag you need to delete.


FAQ

Common questions

It tells search engines to keep a page out of their index, so it will not appear in search results at all. It is a deliberate instruction, useful for pages you genuinely want hidden like staging sites or thank-you pages. The problem is when it is left on a page, or a whole site, you actually want found. A noindex overrides everything else: a perfect, fast, well-linked page with a noindex on it simply will not show up.
The nudge off zero

Get your free launch-readiness score

See what else is between your product and its first real users — Nilkick scores your readiness and hands you the map. Free, no login.

https:// optional · no account · we don't email you

Keep going · Indexing cluster All guides →