Monitoring
Told when something changed, not when something ran
Scans on a schedule and alerts built to survive being left on: nine events, into Slack, a signed webhook or email.
- events to subscribe to
- 9events to subscribe to
- kinds of channel
- 4kinds of channel
- HMAC on every webhook
- SignedHMAC on every webhook
- or across the account
- Per siteor across the account
What it will tell you
- A scan finished - one per crawl, with the score
- The health score fell - 5+ points, and only when the two scans were measured the same way
- New critical issues - present now, absent last time - not counting checks we added
- Two scans failed in a row - one failure is weather; two is a broken setup
- A competitor's score moved - either direction, on the same checks
- Keywords crossed the top 10 - one summary a day, not one message per keyword
- AI answers changed - started or stopped citing you, naming the searches
- A scheduled scan was skipped - credits, verification, or the previous scan still running
- A Google connection was removed - unattached for 30 days, so we stopped storing the credential
Watching what Googlebot gets, not only what you publish
With Cloudflare connected, the crawler’s own side of the visit is accumulated night after night - the requests it made, the paths it asked for, and what each one answered.
Two things fall out of that history and nothing else can produce either: Googlebot getting errors on pages your crawl reads cleanly, and the share of its budget spent on URLs you already know are not worth indexing. Cloudflare keeps eight days on a free plan; the history is ours from the day you connect.
What a visit count says
1,480 requests, steady
What the response codes say
286 of them answered 404
A crawler that comes as often as ever and is refused looks healthy in anything that counts visits.
What it will not tell you
That a scan ran and found the same thing as yesterday. That the score moved a point. That a hundred keywords each shifted a place. That your score fell because we added twelve checks - the comparison is refused outright when the two scans were not measured the same way.
Every one of those is a message somebody would have to read and decide to ignore, and a channel full of them is a channel on mute - which is worse than no channel, because everybody believes it is still working.
Where it goes
Slack
An incoming webhook for alerts, or the app for asking - /seodar answers with your sites and scores in the channel where the team is already arguing about them.
Any webhook
Named JSON fields rather than a sentence in someone else's chat format, signed, retried, and deduplicated by a delivery id that survives the retries.
Email
Per event, to a verified colleague on your account - or the nightly digest, which groups a bad day into one message instead of a hundred.
Discord
The same events, in the shape Discord renders.
A channel that dies quietly is the failure this is built around
Consecutive failures are counted on the channel. Ten in a row switches it off, stamps the row, and notifies the account - so the answer to “why did we stop hearing about anything” arrives at the time it happens rather than at the post-mortem.
Questions
- No, and that is a design decision rather than a promise. Rank movement is a daily summary per site - '2 entered the top 10, 1 dropped out' - instead of a message per keyword. A score that fell is only reported when both scans were measured with the same checks and the same crawler, so our own catalogue growing never wakes anybody.
- Every delivery carries an HMAC-SHA256 signature over the body, with the timestamp inside the signed string, so a captured request stops verifying within minutes. The recipe is on the developers page.
- Three attempts on a timeout, a 5xx or a 429 - and a 4xx is tried once, because retrying a 404 is how a sender ends up blocked. After ten consecutive failures the channel is switched off and you are told, rather than the alerts going quiet.
- Yes - /seodar lists your sites and their scores, /seodar example.com gives the last scan and what to fix first. Read-only: nothing you type in Slack can start a scan or spend a credit.
Start free
One site and 100 credits - up to 200 pages a scan, about 5 scans, and the whole report. No card. Paid plans add more sites, bigger crawls and the AI rewrites.