Your Site Has a Hidden Noindex Tag. Here Is How to Find It
Google has not indexed your site for three months and you can't figure out why. The answer is almost always a leftover noindex tag from development. Here is how to find it and fix it in five minutes.
Published April 12, 2026
Key takeaways
- Leftover noindex tags from development are one of the most common and most damaging SEO mistakes.
- Noindex can live in three places: meta tags, HTTP response headers, or robots.txt. You need to check all three.
- The fastest check: Google "site:yourdomain.com". If you get zero results, something is blocking indexing.
- Fixing it doesn't instantly restore rankings. Google takes days to weeks to re-index after you remove the block.
You launched three months ago. You've been posting on X, sharing on Indie Hackers, getting some traffic. But when you Google your own site, nothing shows up. Not your homepage. Not any page. It's like you don't exist.
This is one of the most common SEO disasters for indie builders, and it's almost always caused by the same thing: a leftover noindex tag from development. Here's how to find it.
The quick test
Open Google. Search site:yourdomain.com. If you see zero results after your site has been live for more than a week, something is blocking Google from indexing it.
If you see some results but not all your pages, the problem might be partial (some pages have noindex, others don't).
Where noindex can live
There are three places a noindex can come from. You have to check all three.
1. Meta robots tag in the HTML
The most common. Somewhere in your HTML, you have a tag like this:
<meta name="robots" content="noindex" />
<meta name="robots" content="noindex, nofollow" />
<meta name="googlebot" content="noindex" />This tells search engines not to index the page. It usually gets added during development so staging doesn't get indexed, then forgotten when the site goes live.
2. X-Robots-Tag HTTP header
A server-level version of the meta tag. You can't see it by viewing source. It looks like this in the HTTP response:
X-Robots-Tag: noindexNginx, Apache, Cloudflare, and some hosting providers can add this header at the server level. If it's there, the meta tag doesn't even matter - Google respects the header.
3. Robots.txt disallow rule
A different thing, but has the same effect for your SEO. If your robots.txt has:
User-agent: *
Disallow: /Google is blocked from crawling your entire site.
How to check each one
Check the meta tag
Right-click your homepage, click View Page Source (not Inspect Element). Search the page for noindex. If you find anything, that's your problem.
Important: Inspect Element shows the post-JavaScript DOM. If your noindex tag is added server-side but removed by JavaScript, Inspect Element will lie to you. Always use View Page Source.
Check the HTTP header
Open Chrome DevTools (F12). Go to the Network tab. Reload the page. Click the first request (the HTML document itself). Look at Response Headers. Search for X-Robots-Tag.
Or, from the command line:
curl -I https://yoursite.com | grep -i robotsIf anything comes back with noindex in it, that's your problem.
Check robots.txt
Open https://yoursite.com/robots.txt in your browser. Look for:
Disallow: /If you see that on a line by itself under User-agent: *, you're blocking all crawlers. Fix it by removing the line or changing it to Allow: /.
Use Google Search Console
The most authoritative check. Go to Google Search Console. Click URL Inspection at the top. Paste your homepage URL. Google will tell you exactly whether the page is indexable and, if not, why.
Common messages:
- "URL is not on Google" with reason "Excluded by noindex tag" - found it
- "Crawled - currently not indexed" - Google found it but hasn't decided to index yet (different problem, usually content quality or thin content)
- "Discovered - currently not indexed" - Google saw the URL but hasn't crawled yet (just need to wait)
- "Blocked by robots.txt" - robots.txt is blocking the page
Where the noindex tag usually comes from
If you find a leftover noindex tag, it probably came from one of these:
- Environment-based config. Your
NODE_ENVwas set to "development" in production, and your code only adds noindex in dev, so you accidentally shipped with the dev env var. - CMS setting. WordPress, Wix, Squarespace, and Ghost all have a "discourage search engines" setting in Settings → Reading or similar. Toggle it off.
- Framework default. Some static site generators include a noindex tag in the default template for the root layout. Check your base layout file.
- Cloudflare or hosting rule. Some providers add X-Robots-Tag to protect a staging environment. Check your deployment config.
- Password-protected preview. Vercel, Netlify, and others add noindex to preview deployments by default. If you're accidentally pointing your domain at a preview URL, that's why.
How to fix it
The fix depends on where it's coming from. Once you know the source, remove the tag, redeploy, and verify with Google Search Console.
For a meta tag in your HTML:
- Find the tag in your template or layout file
- Remove it (or change
noindextoindex) - Redeploy
- View Page Source on the live site to confirm it's gone
For an X-Robots-Tag header:
- Check your server config (nginx, Apache, next.config.js headers)
- Check your hosting provider's dashboard
- Check any CDN rules (Cloudflare, Fastly)
- Remove the rule, clear the cache, test with curl
For robots.txt:
- Edit the file
- Change
Disallow: /toAllow: /or remove the line - Redeploy
- Verify by visiting
/robots.txt
After you fix it
Removing the block doesn't instantly restore your rankings. Google has to re-crawl and re-index the pages, which takes days to weeks. Speed it up:
- Go to Google Search Console
- URL Inspection → your homepage
- Click "Request Indexing"
- Repeat for your most important pages
- Make sure your sitemap.xml is submitted in Search Console
Expect initial indexing within 1-7 days after requesting. Full re-indexing of all pages can take 2-6 weeks.
How to never do this again
The root cause is always the same: development-only config that leaked into production. The fix is to check for noindex on every deploy, or to use a tool that does it for you.
CalmLaunch's scan checks for noindex tags, X-Robots-Tag headers, and robots.txt disallow rules automatically. It's part of the Discoverability category in the eight launch categories. If you run a scan before launch, you catch this in the first 30 seconds.
Common questions
How do I know Google has finished re-indexing?
Search site:yourdomain.com in Google. The result count should match (roughly) the number of pages you have. If you had 50 pages before and you're seeing 5 in search, Google hasn't finished.
Does Bing use the same noindex rules?
Yes. Bing, DuckDuckGo, and most search engines respect the same noindex meta tag and X-Robots-Tag. Fixing for Google fixes them all.
Does Perplexity or ChatGPT respect noindex?
Mostly yes for training data crawlers, but AI answer engines that crawl live pages (Perplexity, for example) behave differently. A noindex tag blocks your page from appearing in web search but may not block it from being cited in AI answers. To block AI crawlers specifically, you need separate directives like User-agent: PerplexityBot in robots.txt.
What if my homepage is indexed but my blog posts aren't?
Check each blog post's View Page Source for noindex. Sometimes a template used for one section of the site has a noindex tag that the homepage doesn't.
CalmLaunch checks this for you automatically.
112 launch constants across 8 categories. Adaptive to your project type. Free for 3 projects, no credit card required.
See what I'm missingRelated reading
The 8 Categories Every Launch Needs
The real map of what your project needs before you ship. Brand, trust and legal, discoverability, conversion, monetization, analytics, launch ops, and support. A reference for solo founders who keep forgetting the same things.
The SaaS Launch Checklist (For People Who Have Launched Before)
A real SaaS launch checklist. Not 60 generic bullet points. The specific 35 things that actually need to be done before you ship a SaaS in 2026, grouped by category, with the why for each one.
Your OG Image Is Broken. Here Is How to Test and Fix It in 10 Minutes
Your link preview shows a gray box on Twitter, LinkedIn, and Slack. Here is exactly why Open Graph tags break, how to test them, how to fix them, and how to clear the stale cache so your launch post looks right.