The noindex that reached production
A single tag removes a page from Google:
<meta name="robots" content="noindex">
It renders nothing. It breaks nothing. The page looks perfect in every browser. And it reaches production more often than any other catastrophic SEO error, because every safeguard we normally rely on is blind to it.
Why it survives every check
It is correct on staging. You want noindex on a staging site. So it is not a mistake in the file — it is a mistake in which file, or which environment, reached the server.
Visual QA cannot see it. Nobody notices the absence of an effect.
Automated tests do not assert it. A test suite checks that pages return 200 and contain expected content. Almost nobody asserts the absence of a meta tag.
Analytics does not react. Sessions from organic search fall gradually as Google re-crawls and drops pages, over days to weeks. By the time anyone connects the decline to a deploy, several deploys have happened.
The first reliable signal is a Search Console coverage report, which most people check monthly at best.
The variants
noindex is not the only one:
robots.txtwithDisallow: /— blocks crawling entirely, which is worse in an important way: Google cannot see the noindex tag either, so pages linger in the index as bare URLs.- An
X-Robots-Tag: noindexHTTP header — the same instruction, invisible in page source, and consequently even harder to spot. - A canonical tag pointing at staging, which does not deindex you but hands your ranking signals to a host nobody can reach.
How to make it impossible
Assert it in the test suite. One test, on your production build: fetch the homepage, assert no noindex directive in the markup or the headers. It costs nothing and it is the only check that runs every time.
Check the header, not just the HTML. curl -I on the deployed URL. If the header carries X-Robots-Tag, no amount of reading page source will reveal it.
Make the environment obvious. If staging robots rules come from an environment variable, log it at boot. A deploy that silently inherited the wrong value should be visible in the first log line.
If it already happened
Remove the tag, then request indexing for the most important URLs in Search Console. Recovery is usually fast — days, not months — because Google is re-adding pages it already knows and already ranked.
The lasting damage is rarely the ranking. It is the four weeks of paid traffic that landed on a site whose organic listings had quietly disappeared, and the report that showed a "channel mix shift" instead of a bug.