Start a monitor
- From a template: fill in the form and press Watch for changes.
- From a preset: on the Presets page, open a preset’s menu and choose Watch for changes.
- For pages: on the Monitors page, press New monitor and paste up to 50 URLs.
What you can watch
A monitor can watch up to 10 sources and sends one alert per check for all of them.
What counts as a change
Two optional filters cut the noise:
- A rule on a field: is below, is at most, is above, is at least, equals, contains, drops by % or more, rises by % or more. For example “price drops by 10% or more”, or “rating is at least 4”.
- Only if it matters: a goal in plain words, such as “only dental clinics with 4 or more stars”. When something changed, AI reads the changes and decides whether they match, with a one-line reason. It runs only on checks where something changed. If it can’t decide, the alert goes out anyway.
Schedule
Every 5, 15 or 30 minutes, every hour, every 6 or 12 hours, every day at a time, or every week on a day at a time, in your time zone. Over the API you can also give a cron expression. Check now runs one straight away. Your plan sets the shortest schedule and how many monitors you can have:
Paused monitors count toward the limit.
Where alerts go
- Email to your account’s address, on by default. One email per check, with the monitor’s name and a summary in the subject (“3 new”) and a table of what changed. You can add up to 10 more addresses. Each one gets a confirmation email first and receives nothing until it confirms, and every alert has a link to stop them.
- Webhook: a
POSTto your https URL. See below. - Slack: an incoming webhook URL (
https://hooks.slack.com/...). - Discord: a webhook URL (
https://discord.com/api/webhooks/...).
Webhooks
Each check that alerts sends a JSON body with the headerX-Spidra-Event: monitor.check.completed. This is the one Send a test sends:
monitor and check hold your monitor’s and check’s IDs, check.url opens the check in the dashboard, and each source can also have rows (with “every run”) or error. added, changed, removed and pages have the same shape as in Get a Monitor Check.
Every webhook is signed. The monitor has a secret (set your own, or read the generated one from Get a Monitor under notify.webhook.secret), and X-Spidra-Signature is sha256= followed by the HMAC-SHA256 of the raw request body with that secret. Check it before trusting the payload:
The monitor page
Each monitor has a timeline of checks, newest first: “3 new places”, “No change”, “Price dropped on 1 item”. Open a check to see the changed rows, with old and new values side by side. Check now, Pause, Edit and Delete are at the top.What it costs
A check costs exactly what the same run costs: a template check costs what the template costs, a page costs 1 credit. The panel shows the credits per month before you save, and Estimate a Monitor gives it over the API. A Google Maps leads search checked daily is about 30 credits a month. The “only if it matters” goal adds a little AI on checks where something changed.- When you’re out of credits, checks are skipped, not failed, and the monitor stays on.
- A check that is still running when the next one is due makes the next one skip.
- After 5 failed checks in a row, the monitor is paused and you get an email, so a broken source doesn’t keep using credits.
- Checks are kept for 30 days.
Good to know
- A monitor sees what its source returns. If a site can’t be read in a check, that check reports the error and the next one tries again.
- Page watching compares the page’s text. Busy pages with counters or rotating content change often; a goal helps filter that out.
- Monitors aren’t real time. The fastest schedule depends on your plan.

