Know When a Cron Job Stops Running

Your job pings a unique heartbeat URL after every successful run. If the pings stop, Nexio Watch alerts you before silent failures pile up.

Create a monitor, copy the ping URL, and call it from your cron, worker, or deploy hook.

Job ran on time

  1. Cron job finishes
  2. POST to heartbeat URL
  3. Timer resets
  4. Healthy

Job missed its window

  1. Expected ping never arrives
  2. Grace period ends
  3. Alert sent

Silent Failures Are Easy to Miss

A cron that exits with an error, a worker that never starts after deploy, or a schedule that quietly drifts — HTTP uptime checks will not catch any of that. Heartbeat monitoring watches for the signal that the job actually finished.

  • A nightly import fails and nobody notices until reports are wrong
  • A worker dies after a deploy and queue depth climbs overnight
  • A schedule drifts or is disabled and the job simply never runs

How it works

  1. 1

    Create a heartbeat monitor

    Name the job and set how often it should ping, plus an optional grace period for late runs.

  2. 2

    Ping the unique URL

    After each successful run, your cron or worker sends an HTTP POST to the heartbeat URL Nexio Watch generates for you.

  3. 3

    Get alerted when pings stop

    If no ping arrives within the expected window (plus grace), Nexio Watch marks the monitor down and alerts your channels.

Alert channels

  • Email
  • SMS
  • Slack
  • Discord
  • Telegram
  • Outbound webhook

Alerts follow your existing Nexio Watch routing, including escalation steps and quiet hours.

You choose the expected interval and an optional extra wait time so slightly late jobs do not false-alarm.

What you ping

Each heartbeat monitor gets a unique URL. Call it with HTTP POST when the job succeeds. You can rotate the URL anytime to invalidate the previous one.

Example ping

curl -X POST https://nexiowatch.com/api/heartbeat/<your-token>

Rotating the URL immediately invalidates the old token.

What an alert looks like

When a heartbeat is overdue, you get the same clear DOWN alert as your other monitors.

Nexio Watch alert — Heartbeat overdue
nightly-import is DOWN
No heartbeat received in the last 60 minutes.
We'll notify you when it recovers.

Recovery alerts fire automatically when the next successful ping arrives.

Who uses it

  • Ops & platform teams

    Catch missed batch jobs, backups, and ETL runs before dashboards go stale.

  • Agencies

    Watch client-side cron tasks and scheduled WordPress or Shopify jobs.

  • Developers

    Verify deploy hooks, queue workers, and one-off scripts actually completed.

  • Founders

    Sleep knowing the jobs that keep the product running still pinged tonight.

Built for scheduled work

  • Unique ping URL per monitor

    Each job gets its own token. Rotate anytime to cut off an old endpoint.

  • Configurable grace period

    Add extra wait time so late-but-successful runs do not create noise.

  • Same alert routing as uptime

    Email, SMS, Slack, Discord, Telegram, and webhooks — with escalations and quiet hours.

  • Hosted in the EU

    Operational data is hosted in Finland and checks run from European regions.

Access

Pro and Business

Heartbeat (scheduled job) monitoring is available on Pro and Business plans, alongside website, SSL, DNS, and visual checks.

See pricing

Questions

  • What is heartbeat monitoring?

    Your cron job or worker pings a unique URL when it finishes successfully. If Nexio Watch stops receiving those pings on schedule, it alerts you — so you catch missed runs and silent failures, not just HTTP downtime.

  • How do I ping the heartbeat URL?

    Send an HTTP POST to the unique URL shown on the monitor. A simple curl from your cron, a one-line request in your worker, or a deploy-hook call is enough.

  • What happens if a job runs late?

    You can set an extra wait time (grace period) in seconds. The monitor only goes DOWN after the expected interval plus that grace has passed without a ping.

  • Can I rotate the heartbeat URL?

    Yes. Generating a new URL invalidates the previous token immediately, so an old script or leaked URL stops counting.

  • Does this replace uptime checks?

    No. Heartbeat monitoring complements HTTP uptime checks. Use heartbeats for jobs that push a signal; use uptime checks for URLs that must respond when polled.

  • Which plans include heartbeat monitors?

    Pro and Business. Existing heartbeat monitors on Free continue to work, but new ones require a paid plan.

  • Which alert channels are supported?

    Email, SMS, Slack, Discord, Telegram, and outbound webhooks — the same routing, escalations, and quiet hours as your other monitors.

Stop Discovering Broken Jobs Too Late

Create a heartbeat monitor, add one POST to your cron or worker, and get alerted when the pings stop.