Cron job & heartbeat monitoring

Know when your cron jobs don’t run.

Get an alert when a job misses its schedule or reports a failure. Add one heartbeat URL to your script.

20 checks free · No credit card required

backup.sh — example⌘
# Your job does its thing.
$ ./backup.sh
✓ Backup complete

# Tell CronPulse it finished.
$ curl -fsS -m 10 --retry 3 \
  "$CRONPULSE_PING_URL"
OK 
Database backupIllustrative check

Built by SupaDesign in Ireland.

View live service status ↗

EU database storage. Pings pass through Cloudflare’s edge. Keep credentials out of ping bodies.

Read the data policy ↗
01 / Ping from any language02 / Cron + time zones03 / EU database storage04 / No agent to install

From a finished job to a useful signal.

Your scheduler runs the job. CronPulse watches for its next successful ping.

01 ─────

Create a check

Choose how often your job should finish and a grace period for the occasional slow run.

02 ─────

Add one request

Copy your private ping URL into the end of your script. Report a failure with /fail or an exit code.

03 ─────

Catch the missing run

Connect an alert channel. A failed or overdue job changes status and sends an alert.

Backups. Reports. Renewals.
The things that can’t just stop.

Your schedule.
Your time zone.

Use a simple interval or a five-field cron expression. Preview the next runs before you save.

30 2 * * MON

At 02:30 every Monday · Europe/Dublin

Try the cron helper ↗

Know how it ended.

Start pings, exit codes, run durations and recent logs help explain what happened. Pro adds the first 1 KB of a ping body.

Alerts where you already are.

Slack, Discord, Telegram and webhooks. Recovery alerts tell you when successful pings return.

Email alerts go only to your verified account email.

Fits the tools you already run.

crontabKubernetesGitHub ActionsPythonNode.jsDockersystemd
Explore all 48 platform guides ↗
Checks start monitoring after the first successful ping. Deadlines are evaluated once a minute; expect alerts roughly 1–2 minutes after grace ends.

Start with 20 checks. For free.

Published plan comparison · checked 20 Oct 2026
PlanCronPulseHealthchecks.ioCronitor
Free monitoring20 checks20 jobs (Hobbyist)5 monitors
Example paid plan€6/mo · 100 checks (Pro)$20/mo · 100 jobs (Business)$2/monitor/mo + $5/user/mo (Business)
Billing modelFixed plans in EURFixed plans in USDUsage per monitor and user, in USD

Published plans · checked 20 Oct 2026

CronPulse

Free monitoring
20 checks
Example paid plan
€6/mo · 100 checks (Pro)
Billing model
Fixed plans in EUR

Healthchecks.io

Free monitoring
20 jobs (Hobbyist)
Example paid plan
$20/mo · 100 jobs (Business)
Billing model
Fixed plans in USD

Cronitor

Free monitoring
5 monitors
Example paid plan
$2/monitor/mo + $5/user/mo (Business)
Billing model
Usage per monitor and user, in USD

Pricing snapshot checked 20 Oct 2026. Currencies and features differ; no exchange-rate equivalence or feature parity is implied. Healthchecks.io also offers a $5/mo Supporter plan with 20 jobs. Verify current terms: Healthchecks.io pricing · Cronitor pricing.

Before you add that curl.

CronPulse is new. What if it goes away?
It is a small independent service built by SupaDesign in Ireland. Your jobs only send an HTTP request, so leaving takes minutes: remove the curl line or point it at another monitor. You can export your checks and ping history from Settings at any time, and pings that never arrive cost your job nothing.
What does CronPulse actually check?
Your job calls a private URL when it finishes. CronPulse watches for the next successful ping. It does not run your jobs or inspect whether a backup can be restored.
How quickly will I hear about a missed job?
Deadlines are evaluated once a minute. Expect an alert about 1–2 minutes after the grace period ends, subject to delivery and scheduler load. This is not sub-minute monitoring.
Which alert channels work?
Email alerts go only to your own verified account email. Verify it by signing in once through an emailed link. Slack, Discord, Telegram and HTTPS webhooks can send to other destinations.
Do I need a credit card?
No. The free plan includes 20 checks, three alert channels and 100 log entries per check. Paid plans offer monthly and yearly Stripe Checkout without an account first. Cancel any time from the billing portal.
Where is my data stored?
The database is configured for EU storage. Pings enter through Cloudflare’s edge. Do not send credentials or personal data in request bodies.

Give your next job a heartbeat.

20 checks free. No card. Built in Ireland.

Create your first check ↗

Sign in with a single-use email link. Email alerts go only to your verified account email. How alert delivery works ↗