Robots directive changes after JS: fix this now
When a page's indexability flips after JavaScript renders, Google may index or drop it unexpectedly. Find these dangerous mismatches and fix them fast.
What it means
The page starts with a noindex directive in the raw HTML, then JavaScript removes it after the page renders. Googlebot may see the initial noindex and skip rendering entirely, so the rendered content never gets indexed.
Why it matters
noindex in the original HTML prevents Google from rendering the page—this means the content stays invisible to both search indexing and AI crawlers. Even if the directive is removed in the rendered output, Google may not revisit the page to re-evaluate it.
How to fix it
- Remove noindex from the initial HTML output; prefer server-set rel="canonical" over JS injection.
- If noindex is unavoidable, ensure the page returns a 200 status code so rendering proceeds.
- Verify the final state with URL Inspection → Rendered HTML, confirming the directive is absent in the rendered output.
Example
<!-- Initial HTML Google sees first -->
<meta name="robots" content="index,follow"><!-- After the JS framework runs on the client -->
<meta name="robots" content="noindex,follow">JS rewrote the robots directive after load. Google may act on either version — never let client JS flip indexability. Set the final directive in the server HTML.
When it's not a problem
This is a false alarm if the page is already indexed and the noindex is being reliably removed by JS before Googlebot's render pass. It's also fine when the page is intentionally noindexed (e.g., staging or draft pages) and the noindex persists in the rendered HTML.
How Crawlinx detects it
We fetch the page twice — the raw HTML and the JS-rendered DOM — and compare the robots directive. When indexability differs between the two, we flag it as a dangerous render-time change.
How common is it?
Not yet observed in our audit sample. We publish this explainer because the check runs on every crawl; once an audited site trips it, this page will break the issue down by platform, gatekeeper, vertical and country.
Related guides
Audit your own site — free
157 checks, internal PageRank, render-diff. No signup, results in ~30s.