PulseWatchPulsewatch
Cron job & uptime monitoring

Know the moment your cron jobs stop running.

Your backup script pings PulseWatch on every run. The ping stops — you get alerted, in seconds, by email, Telegram or webhook. Uptime checks for your URLs included.

Free forever for 3 monitors · no credit card

crontab
# nightly backup — pings PulseWatch on success
0 3 * * * ./backup.sh && curl -fsS https://…/ping/9f2c…a41b

Nightly DB backup

Up

Queue worker heartbeat

Up

Invoice sync

Down

Up and running in 60 seconds

1

Create a monitor

Tell us how often your job runs — every 5 minutes, hourly, daily — plus a grace window for slow runs.
2

Add one line to your job

Append the ping URL to your cron job or script:curl -fsS --retry 3 https://api.yourdomain.com/ping/9f2c1e7a-…-a41b > /dev/null
3

Get alerted

Miss a ping past the grace window and we alert every channel on the monitor — and again the moment it recovers.

Heartbeat monitors

For cron jobs, queues, backups — anything that should run on a schedule. Your code pings us; silence means trouble. Explicit /fail pings alert instantly.

Uptime monitors

We request your URL as often as every minute. Bad status, timeout or connection failure — confirmed by a retry to avoid flapping — and you're the first to know.

Simple pricing

Start free. Upgrade when you outgrow it.

Free

$0/mo

  • 3 monitors
  • Uptime checks every 5 min+
  • Email alerts
  • Badges, tags, history & weekly digest
  • Read-only REST API
Most popular

Pro

$7/mo

  • 25 monitors
  • Uptime checks every 1 min+
  • Email · Telegram · signed webhooks (Slack/Discord)
  • Cron schedules, SSL & keyword checks
  • Status page + incidents
  • Maintenance windows & repeat alerts
  • Full REST API

Business

$19/mo

  • 100 monitors
  • Uptime checks every 1 min+
  • Email · Telegram · signed webhooks (Slack/Discord)
  • Cron schedules, SSL & keyword checks
  • Status page + incidents
  • Maintenance windows & repeat alerts
  • Full REST API

FAQ

How is this different from a normal uptime checker?

Uptime checkers only see what is public. Heartbeat monitoring catches the invisible failures — the backup that silently stopped, the queue worker that crashed at 3am — because your own code confirms every successful run.

What exactly happens when a ping goes missing?

After the expected period the monitor turns "late" (visible in the dashboard, no alert). After period + grace it goes "down" and every attached channel is alerted once. When pings resume you get a recovery alert. No alert spam in between.

Can I get alerts in Slack or Discord?

Yes — add a webhook channel with your Slack or Discord webhook URL. Our payload includes the fields both expect, plus structured JSON for anything custom.

What counts as a monitor?

One heartbeat (one cron job/script) or one uptime check (one URL). Paused monitors still count until you delete them.

Do I need a credit card for the free plan?

No. Free gives you 3 monitors with email alerts, forever. Paid plans are handled by Lemon Squeezy and can be cancelled anytime.

What if PulseWatch itself goes down?

The worker restarts automatically and all state lives in Postgres, so it resumes exactly where it left off. Worst case alerts are delayed by the outage — we are honest about that; monitoring your monitoring is what status pages are for.

Your crons deserve a pulse.

Three monitors free, forever. Set up your first heartbeat in under a minute.