CronWarden
CronWarden

Monitoring for cron jobs, backups, and scheduled tasks — down to the result.

CronWarden alerts you when a job doesn't check in on time, and when it checks in but the value it reports — rows, bytes, records — says the work didn't actually happen.

0 3 * * * /opt/backup.sh && curl -fsS "https://cronwarden.com/ping/a1b2c3?value=$(wc -c < /backups/db.sql)"

Free plan includes 20 monitors — no credit card required.

How it works

One URL per job. One curl per run.

Step 01

Create a monitor

Name the job and set its schedule — a cron expression or a simple interval. CronWarden generates a unique ping URL for it.

Step 02

Check in with a value

End your script with a curl to that URL. Add ?value= to report what the run did: rows processed, bytes written, records synced.

Step 03

Get paged when it matters

A confirmed miss or a failed assertion goes to the right channel at the right severity. A merely late check-in stays silent through its grace window (unless you opt in to early warnings) — nothing pages until it's real.

Built around what your jobs report

Every check-in can carry a number. Everything else follows from that.

Outcome assertions

Send a value with each ping — rows processed, backup size, records synced. Alert when it drops below a floor, above a ceiling, or drifts from its trailing average. A success with no value is a failure too.

Warning vs. critical

Nothing pages until the grace window confirms it's real. A late job stays silent (or nags your warning channel, if you opt in) and a confirmed miss pages. Graduated states (up, late, degraded, down) so a slow night doesn't wake anyone at 3 a.m. — unless you want it to.

Duration and drift

Track every run's duration with a sparkline on the detail page. Catch the run that finished suspiciously fast, or one that's creeping past its usual window.

Embeddable status badges

Drop a live SVG badge on any status page or README — per monitor or a worst-of rollup across a tag. Shows degraded, not just up or down.

Alerts where you already work

Slack, Discord, Teams, Telegram, ntfy, PagerDuty, Opsgenie and more — filtered by severity, with an escalation ladder that keeps nagging and falls back until the alert is acknowledged.

Monitors as code

Provision monitors with a team-scoped API key and an upsert-by-slug API, import straight from a crontab, and scrape a Prometheus endpoint. No click-ops required.

Pricing

Start free. Upgrade when you outgrow it.

Free
For personal projects and side gigs.
$0/mo
  • 20 monitors
  • 1-minute check-ins
  • 7-day ping history
  • 1 team member
  • Tier 1 integrations (all 16)
  • Monitor tags & filtering
  • Status badges
Starter
Most popular
For teams running real workloads.
$9/mo+tax
  • 100 monitors
  • 30-second check-ins
  • 30-day ping history
  • 5 team members
  • Tier 1 integrations
  • Escalation ladder
  • Monitor tags & filtering
  • Monitors-as-code (API, crontab, Prometheus)
Pro
For heavy production use.
$24/mo+tax
  • 300 monitors
  • 10-second check-ins
  • 12-month ping history
  • 25 team members
  • Tier 1 + Tier 2 integrations
  • Escalation ladder
  • Monitor tags & filtering
  • Monitors-as-code (API, crontab, Prometheus)
Business
For teams that have outgrown Pro.
$59/mo+tax
  • 1,000 monitors
  • 10-second check-ins
  • 18-month ping history
  • 50 team members
  • Tier 1 + Tier 2 integrations
  • Escalation ladder
  • Monitor tags & filtering
  • Monitors-as-code (API, crontab, Prometheus)

Enterprise — need more than 1,000 monitors?

Custom limits, retention, and check-in frequency for enterprise workloads, billed to fit your scale.

Contact sales

Start monitoring in two minutes.

20 monitors free. No credit card. One curl to start.