Production matches the state you accepted.
The canonical, status and indexability are recorded with an exact timestamp.
It happens quietly: a website update flips a hidden switch, Google stops showing your pages, and the first sign is traffic that never comes back. We watch your key pages — a short list you pick — and email you within minutes. When nothing breaks, we stay quiet. We never alter your pages.
The canonical, status and indexability are recorded with an exact timestamp.
Your deploy hook starts a focused check. No SDK and no JavaScript snippet.
It reports the drift. It never decides what should be indexed and never edits the page.
This page now sends noindex (meta or X-Robots-Tag). If it should rank, remove the directive or roll back the deploy. If it should stay out of the index (filters, thank-you pages or thin taxonomies), commit this state and we stop treating it as a break. We never change the tag for you.
The directive is set either in the page template head, in middleware, or as an X-Robots-Tag header added by your CDN or web server. Search your codebase for "noindex" and check your CDN header rules.
An SEO monitor flagged a change on a site I run. Find the cause in this codebase and correct it.
What the monitor reports: Page blocked from search results (noindex)
Page: https://saas-project.com
Platform detected: not detected
Value before: index,follow
Value now: noindex
Where this setting usually lives: The directive is set either in the page template head, in middleware, or as an X-Robots-Tag header added by your CDN or web server. Search your codebase for "noindex" and check your CDN header rules.
Rules for this task:
- Fix production only. Staging and preview deployments must stay noindexed.
- Show me the diff before you apply anything.
- Do not touch any other SEO setting, redirect, canonical or meta tag.
- If you cannot locate the cause with confidence, tell me what you ruled out rather than guessing.
If this directive is supposed to apply to preview or staging builds only, then the environment condition around it is what needs fixing, not the directive itself. Leave non-production environments noindexed.
One message when it breaks. One when it recovers. Nothing repeated in between.
drag the timeline · arrow keys step 5s
Call the hook after every deploy and your critical list is rechecked within ~2 minutes, instead of waiting for the next scheduled pass. No SDK, no JavaScript snippet — anything that can run curl works.
curl -X POST https://noindexed.com/api/hooks/deploy/nx_9f2ma7
curl --fail-with-body -X POST https://noindexed.com/api/gate/nx_9f2ma7 -d url=https://staging.example.com/
The gate checks a staging or preview URL against the state you accepted — indexability, canonical host, status — and answers pass or fail, synchronously. A non-zero exit fails the pipeline, so a noindex never reaches production at all. Works from any CI that can run curl.
No pipeline? Then there is nothing to install at all. WordPress, Webflow, Shopify, a custom build — if it has an address, we can watch it. We also watch your homepage for a new build and recheck the critical list when one ships, hook or no hook. Beyond that, your key pages are checked around the clock — every 15 minutes on Pro, hourly on Indie.
One grouped message per check: a template bug that flips 200 pages to noindex arrives as one incident, not 200 emails. When a release landed just before, the alert says so — first observed 11 minutes after deploy a281fc. Critical alerts carry a fix hint that names the screen on your platform. Your own tooling can get the same group as JSON through a webhook.
This page now sends noindex (meta or X-Robots-Tag). If it should rank, remove the directive or roll back the deploy. If it should stay out of the index (filters, thank-you pages or thin taxonomies), commit this state and we stop treating it as a break. We never change the tag for you.
The directive is set either in the page template head, in middleware, or as an X-Robots-Tag header added by your CDN or web server. Search your codebase for "noindex" and check your CDN header rules.
An SEO monitor flagged a change on a site I run. Find the cause in this codebase and correct it.
What the monitor reports: Page blocked from search results (noindex)
Page: https://saas-project.com
Platform detected: not detected
Value before: index,follow
Value now: noindex
Where this setting usually lives: The directive is set either in the page template head, in middleware, or as an X-Robots-Tag header added by your CDN or web server. Search your codebase for "noindex" and check your CDN header rules.
Rules for this task:
- Fix production only. Staging and preview deployments must stay noindexed.
- Show me the diff before you apply anything.
- Do not touch any other SEO setting, redirect, canonical or meta tag.
- If you cannot locate the cause with confidence, tell me what you ruled out rather than guessing.
If this directive is supposed to apply to preview or staging builds only, then the environment condition around it is what needs fixing, not the directive itself. Leave non-production environments noindexed.
noindexed APP
noindexed▮ saas-project.com: 1 change, 2026-08-12 09:32 UTC
CRITICAL Page blocked from search results
saas-project.com
before: index,follow
after: noindex
Open the full event feed →
Three severities: critical alerts the moment a crawl confirms it, warning alerts once a day, info only lands in the event feed.
| Signal | What it detects | Severity |
|---|---|---|
| on your critical list — deploy hook + the fast pass (15 min on Pro, hourly on Indie) | ||
| Indexability | meta robots and X-Robots-Tag; drift in either direction — losing an intended noindex is an incident too | critical |
| Canonical | points to another host (staging, for example), or the tag is removed; a same-host change only goes to the feed | critical / info |
| Status codes | errors (4xx/5xx, unreachable) — and pages accepted as gone that come back alive | critical |
| Redirects | a redirect chain appearing, or an accepted redirect disappearing | critical |
| robots.txt | the live file differs from the version you accepted, byte for byte | critical |
| full site — once a day | ||
| sitemap.xml | unreachable, or the URL count drops by more than 20 % | warning |
| SSL | certificate expires in under 14 days | warning |
| Bulk meta | titles or descriptions changed on more than 30 % of pages in one run | warning |
| Title / description | a single page's title or snippet changed | info, feed only |
Not another bot hammering the site. Transparent UA (NoindexedBot/1.0), short list, no JS rendering. Read the bot page.
Other monitors diff against the last crawl — so an intentional change alarms forever, and a slow drift becomes the new normal. Noindexed diffs against the state you accepted. Commit a change when it's intentional. Mark it fixed and we keep it red until a crawl proves it. We never alter your pages.
Incidents, diffs, deployments and crawl history are available over MCP — the protocol Claude Code, Cursor and friends already speak. The agent that shipped the bug can look up what changed, see the correlated deploy, and request the recheck that proves the fix. Read-only by default; the one action, recheck, is rate-limited and audited. Included on Pro.
Example roster
Keep the real-time deploy monitoring without buying an enterprise suite. Free tier for one site. Paid from $9/mo — not an enterprise contract.
Add your first site tonight, know about the next silent break tomorrow.
private beta: free, no card, nothing metered · beta accounts keep these launch prices
Nothing to install, no code on your site. We only read your pages — we never alter them.
Email and a password, or a signed link to your inbox — takes a minute, your first site is watched right after.