CronCanary DocsPricingCompareOpen app

Know the instant a cron job goes silent

CronCanary is a dead man's switch for scheduled tasks. Your job pings a URL on every run — if a ping is late or never arrives, we alert you. It catches the failures your job's own error handling never can: the daemon that never fired, the host that went offline, the job that hung.

No credit card. Email · Slack · Discord · Telegram · webhook alerts on every plan.

# add one line to the end of your crontab job: 0 4 * * * /usr/local/bin/backup.sh && curl -fsS https://ping.croncanary.dev/your-uuid-here # miss the 4am run? CronCanary alerts you within ~1 minute of the grace window.
🔔

Inverted monitoring

Alert on the absence of a signal — the only way to catch a job that never ran at all.

🗓️

Simple or cron schedules

Expect a ping every N seconds, or match a real cron expression with full IANA timezone + DST handling.

⏱️

Grace periods

Tolerate normal jitter. Only alert when a job is genuinely late — no flapping.

🚦

Start / fail / exit codes

Signal /start to measure duration and catch hung jobs, /fail for instant alerts, or pipe a shell exit code.

📡

Five free channels

Email, Slack, Discord, Telegram, and generic webhooks — all included, even on the free plan.

🟢

Public status badges

Drop a live status badge in your README. One ping URL, zero dashboards to share.


Simple, honest pricing

Every plan has every alert channel. Paid tiers only raise the check count and log retention.

Free

$0/mo
  • 20 checks
  • 30-day log retention
  • All 5 alert channels
  • Public status badges
Get started

Pro

$19/mo
  • 250 checks
  • 365-day log retention
  • All 5 alert channels
  • Priority support
Upgrade

Works with everything that runs on a schedule