Docs
Drift monitoring
Pin URLs, get notified when their crawler-facing signals change. Pro feature - currently in development.
The pain
You ship a redesign on Tuesday. The new template silently changes og:image. You find out from a Slack share that looks broken on Friday afternoon.
The industry calls this template drift — one CSS or partial change cascades across thousands of pages and nobody notices until rankings move or shares stop converting.
Existing solutions (ContentKing, Conductor, Lumar Monitor) start at $61,000/year and target enterprise crawl budgets. Drift monitoring brings the same workflow to single-URL granularity at a price the rest of us can afford.
What it watches
For each URL you pin:
- Audit score — does the weighted 0-100 number change?
- Title and description — text, pixel-width, rewrite-likelihood signal.
- Canonical — points elsewhere? Now a chain?
- og:image — URL changed, dimensions changed, content-type changed, byte-size changed.
- Twitter card — type changed, image silent-downgrade triggered (under 300x157).
- JSON-LD — schema type changed, required property dropped, content cross-check mismatch surfaced.
- AI crawler row — robots.txt changed for any of the 11 monitored AI bots.
- Sitemap presence — URL added to or removed from sitemap.xml.
- Indexability verdict — flipped from indexable to conflict / excluded.
How it works
- Pin a URL from the extension or from
/account/monitor. - We re-scan it on a schedule (daily by default; webhook trigger available for CI/CD).
- Each scan is diffed against the previous one.
- If anything changed at or above your alert threshold, you get a notification.
Notification channels
- Email — daily digest by default, or instant on warning-or-worse change.
- Slack webhook — paste a webhook URL, get a card per alert with score + top 3 changed rules.
- Discord webhook — same as Slack.
- Webhook trigger endpoint — POST to
https://metaspry.com/api/monitor/trigger?url=...from your CI/CD pipeline to force a re-scan + alert on deploy.
Thresholds
To avoid notification fatigue:
- Default: alert only on warning-or-worse rule changes. Cosmetic changes (description rewording, image alt text) are tracked silently and visible in the diff view.
- Aggressive: alert on any change.
- Critical only: alert only when the page becomes uncrawlable / unindexable / loses required tags.
Quotas
| Tier | Monitored URLs | Re-scan frequency | Webhooks |
|---|---|---|---|
| Free | - | - | - |
| Pro | 50 | Daily | Slack + Discord |
| Team | 500 | Daily + on-demand webhook | Slack + Discord + per-channel |
What you’ll see in the UI
/account/monitor will list your pinned URLs:
- Score (current + delta vs last scan)
- Last-change date
- Sparkline of score over time
- Click into per-URL detail for the timeline + diff viewer
Per-URL detail shows:
- Score timeline (chart)
- Diff viewer: added / removed / value-changed tags, color-coded by severity
- Download per-scan CSV
- Notification settings per URL (channels + threshold)
Differences from competitors
| Tool | Granularity | Frequency | Price |
|---|---|---|---|
| Metaspry Pro | Per-URL | Daily + webhook | $9/mo |
| Conductor / ContentKing | Whole site | 10-min | $61,000+/yr |
| SE Ranking change monitor | URL list | Daily | $39+/mo |
| Lumar Monitor | Whole site | Configurable | $15,000+/yr |
| Sitebulb Cloud | Whole site | Scheduled crawl | $95+/mo |
The differentiator is per-URL focus + price. You probably don’t need to crawl 50,000 URLs every 10 minutes. You need to know if the 50 pages that drive your traffic broke overnight.
Related
- Audit rules - what gets scored
- AI crawler signals - what gets watched in the Site tab
- Indexability conflicts - the four-signal cross-check