Page is set to “noindex” in React
A <meta name="robots" content="noindex"> tells search engines to leave the page out of results entirely — the single most damaging SEO mistake because the page simply disappears. It is very often a leftover from a staging or “coming soon” environment that shipped to production. If it is not deliberate, it is an emergency.
Framework fixes
Symptoms
How VibeCheck catches it
In your widget · Problems
Page is set to "noindex"
To your coding agent · MCP
agent › get_detected_issues
→ { detector: "seo", issue: "Page is set to "noindex"", threshold: "<meta name="robots" content> includes 'noindex'" }
The same string in your widget and in your agent’s context — no screenshot, no copy-paste.
Root causes
The fix for React
Only render the robots meta tag in non-production environments.
{import.meta.env.PROD ? null : <meta name="robots" content="noindex" />}Steps
- Search the codebase for “noindex” (meta tag and
X-Robots-Tagheader) - Ensure production never emits it; gate it strictly to non-prod
- Request re-indexing in Search Console once removed
FAQ
- How fast will my page come back after removing
noindex? - It returns on the next crawl, which can be hours to weeks. Request indexing in Google Search Console to speed it up once the tag is gone.
- Is there a header version of
noindexI might be missing? - Yes — the
X-Robots-TagHTTP header does the same thing and is easy to overlook. Check your server/CDN config as well as the meta tag. - What is the correct tag for pages I do want indexed?
- You do not need any robots tag for the default indexable behaviour. Only add a robots meta when you specifically want to restrict indexing.