Skip to content
AlertPing

Guides

Heartbeat monitoring explained and how it works

| Guides | 7 min read

Heartbeat monitoring watches for a regular signal from a job or service and alerts you when that signal is late or missing. Instead of your monitor reaching out to check something, the thing being watched reaches in to say "I ran." When the expected heartbeat does not arrive on time, the monitor raises an alarm. It is the only reliable way to catch a background job that fails silently, because a job that never runs cannot send an error.

Most monitoring is active: a checker somewhere loads your website or calls your API on a schedule and reports what it saw. That works for anything with a public address you can poke. It does nothing for the work that has no address, the scheduled jobs, cron tasks, backups, queue workers and data syncs that run on their own and finish without anyone watching. Heartbeat monitoring exists for exactly that blind spot.

What is heartbeat monitoring?

Heartbeat monitoring, sometimes called dead man's switch monitoring, works by expecting a signal on a schedule. You give the monitor a rule, "I will hear from this backup job every day by 2:15am", and the job sends a small HTTP request, the heartbeat or ping, each time it finishes successfully. As long as the pings keep arriving on time, the monitor stays quiet. The moment one is late past a grace period, it alerts you.

The logic is deliberately inverted. A normal check fails when it sees something wrong. A heartbeat check fails when it sees nothing at all. That difference is the whole point, because the worst job failures are the ones that produce no error, no log line, and no output. The job simply did not run, and silence is not something an active check can detect.

How does heartbeat monitoring work?

In practice it is three small pieces working together. Get them right and a job that quietly dies at 3am wakes you instead of surprising you a week later.

  • A unique ping URL. The monitor gives you a URL for each job. Your job sends a request to it on success, usually one line added to the end of the script or a curl call after the command.
  • An expected schedule. You tell the monitor how often to expect the ping, matching the job's own schedule, plus a grace period for a run that starts late or takes longer than usual.
  • An alert when the ping is late. If the deadline plus grace passes with no ping, the monitor fires your alert over SMS, email, Slack or webhook, the same way an uptime alert would.

Better setups let the job ping twice: once when it starts and once when it finishes. That way the monitor knows the difference between a job that never started and a job that started but hung or crashed halfway, which points you at very different problems.

Heartbeat monitoring vs uptime monitoring

They are two halves of one coverage map. Uptime monitoring watches the things with an address; heartbeat monitoring watches the things without one. Neither replaces the other.

Aspect Uptime monitoring Heartbeat monitoring
DirectionMonitor calls your serviceYour job calls the monitor
Fails whenIt sees an error or timeoutIt sees no signal at all
Best forWebsites, APIs, servers, portsCron jobs, backups, queue workers, syncs
CatchesOutages, slow responses, bad contentJobs that never ran or died silently

A team that only runs uptime checks has a clean dashboard and no idea that its nightly backup stopped completing three weeks ago. A team that only runs heartbeats knows its jobs finish but not that its checkout is down. You want both, pointed at the right things, which is why most teams pair heartbeats with ordinary website uptime monitoring on the public-facing side.

alertping

Heartbeat checks for the jobs that fail without an error

AlertPing gives every scheduled job a ping URL and alerts you the moment a heartbeat is late, with SMS on every plan and 30-second uptime checks. One tool for the jobs with an address and the ones without.

What should you use heartbeat monitoring for?

Anything that runs on a schedule and matters when it stops. The common cases share a trait: nobody is watching them run, so a failure is invisible until something downstream breaks.

  • Backups. The classic. A backup that silently stopped running is only discovered the day you need to restore, which is the worst possible day to learn it.
  • Data pipelines and syncs. A nightly import that fails leaves stale data behind a perfectly healthy-looking app. Pairing a heartbeat with proper checks on data freshness and volume catches both the job that never ran and the run that produced garbage.
  • Billing and invoicing runs. A scheduled charge job that skips a night is money not collected, and often nobody notices until reconciliation.
  • Queue and worker processes. A worker that crashes and does not restart stops processing quietly. A heartbeat on each cycle catches the stall.
  • Certificate and token renewals. A renewal cron that fails leaves you with an expired certificate days later, at which point it is an outage, not a warning. This is the case where a heartbeat and SSL expiry monitoring cover each other: one catches the failed renewal, the other catches the clock running out.

What makes heartbeat monitoring reliable?

The value is entirely in catching the silent case, so the setup has to be trustworthy in a few specific ways or it produces noise instead of signal.

  • Ping only on success. If the job pings before it does its work, you learn it started, not that it worked. Send the heartbeat at the very end, after the job has done the thing that matters.
  • Set a realistic grace period. Too tight and a normally slow run pages you for nothing. Too loose and a genuinely dead job goes unnoticed for hours. Match it to how late a healthy run can be.
  • Alert off your own infrastructure. If the monitor that expects the heartbeat runs on the same server as the jobs, a server outage takes both down and no alarm goes out. The expectation has to live somewhere independent.
  • Route to a channel people see. A missed backup at 3am is not urgent enough to page, but an email nobody reads for a week defeats the purpose. Slack or a low-priority SMS usually fits.

Is heartbeat monitoring the same as a dead man's switch?

Effectively, yes. A dead man's switch is any mechanism that triggers when an expected signal stops, and heartbeat monitoring is that idea applied to jobs and services. The name captures the logic well: the alarm is armed by silence, not by an error. We went deeper on the concept in what a dead man's switch is in monitoring, and on the practical setup in how to monitor a cron job. If you want the pattern set up rather than explained, that is what dead man's switch monitoring gives you.

The takeaway is small but easy to miss: your quietest failures are your most dangerous ones, because nothing announces them. Active checks cover the loud failures. Heartbeat monitoring covers the silent ones, and most teams do not add it until a backup they trusted turns out to have stopped weeks ago.

keep reading

More from the blog

· Comparisons

Dynatrace synthetic monitoring pricing and what HTTP and browser monitors cost per month

8 min read ▸

· Comparisons

CloudWatch Synthetics pricing and what a canary costs per URL, per interval and per Region

8 min read ▸

· Comparisons

OpManager vs WhatsUp Gold pricing for 50 to 1,000 devices, per edition and per add-on

8 min read ▸

· Comparisons

Site24x7 vs PRTG pricing for 50 to 1,000 network devices, with and without add-ons

8 min read ▸

· Comparisons

OpManager pricing 2026 and what ManageEngine OpManager costs per device, per edition and per add-on

9 min read ▸

· Comparisons

Splunk On-Call pricing and cost per user from the published $5 rate to a yearly bill

7 min read ▸

· Comparisons

Rootly pricing and Rootly cost per user for Incident Response and On-Call

7 min read ▸

· Comparisons

FireHydrant pricing and what FireHydrant costs per responder after Freshworks

8 min read ▸

· Comparisons

Zabbix pricing and Zabbix Cloud pricing by tier with the real Zabbix cost per year

8 min read ▸

· Comparisons

Checkmk pricing 2026 and Checkmk cost per host for Pro, Ultimate and Cloud

8 min read ▸

· Comparisons

Nagios XI pricing and Nagios license cost per node, renewal included

8 min read ▸

· Comparisons

incident.io pricing and incident.io cost per user for response and on-call seats

8 min read ▸

· Comparisons

Datadog On-Call pricing vs PagerDuty cost per seat for 4 to 30 person rotations

8 min read ▸

· Comparisons

Datadog On-Call pricing and what a paging seat costs next to PagerDuty and Splunk On-Call

7 min read ▸

· Comparisons

LogicMonitor vs PRTG pricing for a 100 device network, per device against per sensor

7 min read ▸

· Comparisons

SolarWinds alternatives and competitors priced on one estate, from PRTG and LogicMonitor to Datadog

8 min read ▸

· Comparisons

LogicMonitor competitors and alternatives with Datadog, Dynatrace, New Relic, SolarWinds and PRTG priced on one estate

8 min read ▸

· Comparisons

SolarWinds pricing 2026 and how much SolarWinds costs per node, per module and per year

8 min read ▸

· Comparisons

LogicMonitor pricing 2026 and how much LogicMonitor costs per Hybrid Unit, per package and per year

8 min read ▸

· Comparisons

WhatsUp Gold pricing 2026 and how much WhatsUp Gold costs per device, per edition and per year

8 min read ▸

· Comparisons

Cronitor pricing 2026 and how much Cronitor costs per monitor, per user and per year

8 min read ▸

· Comparisons

Hyperping pricing 2026 and how much Hyperping costs per plan, per seat and per monitor

8 min read ▸

· Comparisons

Uptime.com pricing 2026 and how much Uptime.com costs per tier, per check and per year

8 min read ▸

· Comparisons

StatusCake pricing 2026 and how much StatusCake costs per plan, per monitor and per year

8 min read ▸

· Comparisons

PRTG pricing 2026 and what PRTG Network Monitor costs per sensor, per device and hosted

9 min read ▸

· Comparisons

New Relic Synthetics pricing 2026 and what synthetic checks cost per check, per edition and per month

9 min read ▸

· Comparisons

Sentry pricing 2026 and what Sentry costs per plan, per event and per monitor

9 min read ▸

· Comparisons

Checkly pricing 2026 and how much Checkly costs per check run, module by module

9 min read ▸

· Comparisons

Grafana Cloud pricing 2026 and how much Grafana Cloud costs, meter by meter

10 min read ▸

· Comparisons

Statuspage pricing and Atlassian Statuspage costs per subscriber for public and private pages

9 min read ▸

· Comparisons

Opsgenie pricing 2026 and how much Opsgenie costs, plus what you pay to replace it

8 min read ▸

· Comparisons

PagerDuty pricing 2026 and how much PagerDuty costs per user, per plan and per year

8 min read ▸

· Comparisons

Pingdom pricing 2026 and how much Pingdom costs per check, per plan and per year

8 min read ▸

· Comparisons

Uptime monitoring software to pair with Datadog, New Relic or Dynatrace

8 min read ▸

· Comparisons

How much does Splunk Observability Cloud cost? Hosts, editions and synthetic monitoring

8 min read ▸

· Comparisons

AppDynamics pricing 2026 and how much AppDynamics costs, from license cost per vCPU to synthetics

8 min read ▸

· Comparisons

Dynatrace pricing 2026 and how much Dynatrace costs for hosts, synthetic monitoring and log ingest

8 min read ▸

· Comparisons

How much does New Relic cost? Users, data ingest and synthetic checks

9 min read ▸

· Comparisons

Datadog synthetic monitoring pricing and what synthetics really cost per test run

9 min read ▸

· Guides

Uptime guarantee vs uptime monitoring and why your host reports 99.9% when your site was down

9 min read ▸

· Guides

Cloudflare uptime monitoring with health checks, origin monitoring and the blind spots behind the proxy

11 min read ▸

· Comparisons

Status page pricing and what a hosted status page actually costs in 2026

8 min read ▸

· Guides

API monitoring best practices on what to check, how often and how to keep alerts worth answering

10 min read ▸

· Guides

SSL certificate 200 days as the new validity limit and the 47-day lifetime coming next

9 min read ▸

· Guides

SSL certificate expired? What happens and how to fix it

8 min read ▸

· Guides

How often should you check website uptime?

7 min read ▸

· SLAs

Error budget formula, burn rate alerts and the policy that makes it work

11 min read ▸

· Playbooks

Runbook template for incident response that gets used

8 min read ▸

· Guides

What causes website downtime, and how to catch each cause

8 min read ▸

· Playbooks

Incident postmortem template that teams actually use

8 min read ▸

· Playbooks

On-call rotation best practices that keep engineers sane

8 min read ▸

· SLAs

MTTR (mean time to recovery) explained and how to cut it

7 min read ▸

· Guides

Status page examples and what the good ones get right

7 min read ▸

· Guides

API uptime SLA service credit tiers, downtime limits and what a good one costs

8 min read ▸

· Guides

How to create a status page in 6 steps

7 min read ▸

· Guides

Uptime SLA report and what to include, with a worked example

9 min read ▸

· Guides

SLA service credits and how to claim what you get back

8 min read ▸

· Guides

Synthetic monitoring vs uptime monitoring with what each one costs and when you need it

8 min read ▸

· Guides

What is a status page?

6 min read ▸

· Guides

Status page vs uptime monitoring and what the difference is

6 min read ▸

· Guides

What does 99.9% uptime mean?

6 min read ▸

· Guides

What is five nines (99.999%) uptime?

8 min read ▸

· Guides

How to calculate uptime percentage

7 min read ▸

· Guides

SLA vs SLO vs SLI and what the difference is

7 min read ▸

· Guides

Downtime alerts and how to get notified by email, SMS or phone when your website goes down

7 min read ▸

· Guides

How to monitor an online store for downtime

9 min read ▸

· Guides

Why is my Shopify store unavailable?

8 min read ▸

· Comparisons

Better Stack pricing and how much Better Stack costs

8 min read ▸

· Comparisons

UptimeRobot pricing and how much UptimeRobot costs

7 min read ▸

· Comparisons

Site24x7 pricing and how much Site24x7 costs

8 min read ▸

· Guides

What is a dead man's switch in monitoring?

9 min read ▸

· Guides

Why is my WordPress site down?

9 min read ▸

· Guides

How to monitor WooCommerce uptime and checkout

8 min read ▸

· Guides

How to monitor an API for errors, not just uptime

8 min read ▸

· Economics

How much does website downtime cost?

8 min read ▸

· Guides

How to monitor a cron job

9 min read ▸

· Comparisons

Synthetic monitoring vs real user monitoring

8 min read ▸

· Benchmarks

What is a good uptime percentage?

7 min read ▸

· SLAs

99.99 uptime meaning for SLAs and the real cost of each nine

8 min read ▸

· Guides

How to monitor website uptime

8 min read ▸

· Playbooks

Incident communication examples, templates and outage communication best practices

9 min read ▸

Know the second your site goes down

Checks every 30 seconds, confirmed from a second region, alerts on every channel.

See pricing