Skip to content
Feature · 2026

Heartbeat monitoring: when silence is the alarm

Normal monitoring probes your service from outside and alerts when a probe fails. Heartbeat monitoring points the arrow the other way: the thing being watched sends a periodic signal (the heartbeat), and the alert fires when that signal stops arriving. It is the only monitoring shape that works for things an external probe cannot see: cron jobs, queue workers, backups, on-prem scripts behind a firewall, IoT devices, and any process whose failure mode is simply not running.

Last updated
Active checks and heartbeats answer different questions; most stacks need both
ToolDirectionBest forCatchesCannot catch
Active uptime check
UptimePad probes your endpoint
Outside-inWebsites, APIs, anything with a URLDowntime, errors, slow responsesA job that silently stopped
Heartbeat monitor
Your process pings UptimePad
Inside-outCron jobs, workers, backups, firewalled hostsA process that stopped runningA process running but serving errors

How heartbeat monitoring works

Each heartbeat monitor gets a unique ping URL and an expected schedule. The process being watched hits the URL on every successful run (or on a fixed interval for long-running daemons). UptimePad tracks the arrival times; when the gap since the last ping exceeds the expected schedule plus a configurable grace period, the monitor goes down and your alert channels fire. When pings resume, the first one triggers an immediate re-check and the incident closes in seconds.

Two refinements matter in practice. First, the grace period: real jobs drift, so the deadline is schedule plus grace, not a hair-trigger. Second, explicit failure pings: a job that crashes with error handling can call the ping URL with /fail appended and alert you immediately, instead of waiting for the silence to be noticed.

What belongs on a heartbeat

  • Scheduled jobs. Cron jobs, systemd timers, Windows Task Scheduler tasks, Kubernetes CronJobs, scheduled GitHub Actions. See cron job monitoring.
  • Backups. The classic silent failure; ping on success and the missing backup pages you the same night. See backup monitoring.
  • Queue and background workers. A worker loop that pings every few minutes turns “the queue is quietly backing up” into an alert.
  • Hosts an external probe cannot reach. On-prem servers, NAT-ed devices, air-gapped-ish networks with outbound-only access: outbound pings work where inbound probes cannot.
  • Data pipelines. A nightly ETL that pings on completion protects tomorrow's dashboards today.

Heartbeats are not a replacement for uptime checks

A heartbeat proves a process ran; it says nothing about what your users see. A web server can ping faithfully while serving 500s. The two shapes complement each other, which is the argument for having them in one product: UptimePad puts heartbeat monitors on the same timeline as uptime checks, SSL monitoring, and DNS monitoring, with one set of alert channels and one flat price. Heartbeats are included on every plan; the free tier covers 10 monitors of any type.

FAQ

What is heartbeat monitoring?+

Heartbeat monitoring is inverted monitoring: the watched process sends a periodic ping to a monitoring service, and the alert fires when pings stop arriving on schedule. It is also called dead man’s switch monitoring or passive check monitoring, and it is the standard way to watch cron jobs, backups, and background workers.

How is a heartbeat different from a normal uptime check?+

Direction. An uptime check is outside-in: the monitoring service probes your URL. A heartbeat is inside-out: your process reports in. Uptime checks catch a broken service; heartbeats catch a service or job that is not running at all, including things behind firewalls that no external probe can reach.

What interval and grace period should I use?+

Match the expected schedule to how often the process should ping (every 5 minutes for a worker liveness signal, daily for a nightly job), then set the grace period to absorb normal drift: a few minutes for frequent pings, 30-60 minutes for long nightly jobs. Silence beyond schedule plus grace triggers the alert.

Do I need to install an agent?+

No. A heartbeat ping is a plain HTTP GET or POST to your monitor’s unique URL. curl, wget, or any HTTP client in any language works. This is different from server monitoring agents that collect metrics; a heartbeat only proves liveness.

Is heartbeat monitoring free on UptimePad?+

Yes. Heartbeat monitors are ordinary monitors on every plan including Free (10 monitors, schedules from every 5 minutes, no credit card, commercial use allowed). Faster schedules come with paid tiers: 1 minute on Starter and Pro, 30 seconds on Scale.

Give your quietest process a heartbeat

Create a free account, add a heartbeat monitor, and wire the ping with one curl line. 10 free monitors, no card, commercial use allowed.

Start monitoring free