> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spidra.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Monitors

> Watch a page, a site, or a search query on a schedule and get notified when something meaningful changes.

A monitor watches something on a schedule, a page, a crawl, or a search query, and tells you when it changes. Set it up once from the [Monitors page](https://app.spidra.io/dashboard/monitors) in your dashboard, and Spidra runs the check for you and delivers an alert to Slack, Discord, Telegram, email, or your own webhook.

<Note>
  Monitors replaced the older Automations feature. If you used automations before, the concept is the same, watch something, get notified, but monitors add real change detection (not just "run on a schedule") and support scrape, crawl, and search targets, not just presets.
</Note>

## Creating a monitor

<Steps>
  <Step title="Describe what you want to watch">
    Type it in plain language, for example "Watch openai.com/pricing and anthropic.com/pricing every 6 hours, tell me when any tier changes." Spidra parses this into one or more targets, a starting schedule, and a suggested name. Pick one of the example templates (GitHub releases, a status page, competitor pricing, job postings, and more) if you're not sure what to write, or click **Configure manually** to skip AI parsing and set everything yourself.
  </Step>

  <Step title="Set your targets">
    A target is what actually gets checked: a scrape (one or more known URLs), a crawl (a starting URL plus how many pages to follow), or a search (one or more queries). You can combine multiple targets in one monitor.
  </Step>

  <Step title="Decide what counts as a change">
    Choose whether the monitor should alert on additions, removals, content changes, or any combination. For structured or list-like data, set a field that uniquely identifies each item (so a re-ordered list doesn't look like new items), and optionally add rules like "price is less than \$50" to only alert when a specific field crosses a threshold.
  </Step>

  <Step title="Filter out noise with AI (optional)">
    Turn this on and describe what actually matters, for example "Only alert when the price drops by more than 10%, ignore minor wording changes." An AI judge reviews each detected change against that goal before you get notified. This costs extra credits per check, since it's an added AI call, so it's off by default.
  </Step>

  <Step title="Choose where to get notified">
    Turn on any combination of Email, Webhook, Slack, Discord, and Telegram. Each channel needs its own small piece of setup, see below.
  </Step>

  <Step title="Set the schedule">
    Pick Daily, Weekly, or Monthly, then a time and timezone. A monitor created from a plain-language description may get a tighter schedule automatically if you described one, like "every 6 hours."
  </Step>

  <Step title="Name it and create">
    Give the monitor a name you'll recognize later, then create it. It runs on its own from here.
  </Step>
</Steps>

## Notification channels

Every channel is configured the same way: turn it on and fill in one or two fields, no separate setup wizard.

| Channel      | What you need                                              |
| :----------- | :--------------------------------------------------------- |
| **Email**    | One or more recipient addresses.                           |
| **Webhook**  | An endpoint URL. Spidra sends a JSON `POST` request to it. |
| **Slack**    | An incoming webhook URL from your Slack workspace.         |
| **Discord**  | A webhook URL from your Discord server's channel settings. |
| **Telegram** | A bot token and a chat ID.                                 |

You can enable more than one channel on the same monitor, an alert isn't limited to a single destination.

<Note>
  Getting a Slack or Discord webhook URL happens entirely on Slack's or Discord's side (in each app's own webhook settings), not in Spidra. Spidra just needs the URL once it's generated.
</Note>

## Managing monitors

Each monitor's detail page shows its recent checks, whether a change was detected, and (for the AI judge) why it did or didn't alert. From there you can:

* **Test it** to run a check immediately, without waiting for the schedule, and confirm your notification channels are actually receiving alerts.
* **Pause or resume it** without deleting its configuration.
* **Edit targets, rules, channels, or schedule** at any time.
* **Delete it** when you no longer need it.

## Credits

Each scheduled check costs credits the same way a manual scrape, crawl, or search would, since a monitor is really just that job running on a timer. A tighter schedule (checking every hour instead of daily) means more checks and more credits used per month. The monitor creation wizard shows an estimated monthly credit cost based on your targets and schedule before you commit to it. Turning on the AI judge adds a small per-check cost on top, since it's an extra AI call.
