Docs Blog Sign in Get started
Tickstem

Dead man's switch for your scheduled jobs.

Your job POSTs to a ping URL after each successful run. If the ping stops arriving within the configured interval and grace window, Tickstem alerts you by email.

Cron jobs fail silently. A job can stop running entirely — due to a deployment issue, a crashed process, or a silent exception — and you won't know until a user complains or data goes missing. Heartbeat monitoring flips the model: your job pings Tickstem after every successful run, and if the pings stop arriving Tickstem alerts you. No polling, no infrastructure to maintain.

Ping-based alerting

No polling your infrastructure — your job pings Tickstem. Silence means failure.

Grace window

Configure a buffer after the expected ping time before an alert fires, to avoid false positives.

Token-only ping

The ping endpoint requires only the heartbeat token — no API key needed at runtime.

Ping history

Full log of every ping so you can see exactly when a job last ran.

Go SDK

Install with:

$ go get github.com/tickstem/heartbeat
import "github.com/tickstem/heartbeat" client := heartbeat.New(os.Getenv("TICKSTEM_API_KEY")) hb, err := client.Create(ctx, heartbeat.CreateParams{ Name: "daily backup", IntervalSecs: 86400, GraceSecs: 3600, }) // At the end of every successful run client.Ping(ctx, hb.Token)

Plan limits

PlanHeartbeat Monitoring
Free5 heartbeats
Starter20 heartbeats
Pro100 heartbeats
BusinessUnlimited heartbeats

Frequently asked questions

What is a dead man's switch for cron jobs?
A dead man's switch alerts you when something stops happening — the opposite of uptime monitoring. Instead of checking whether your server responds, it checks whether your job is still running. If your scheduled job stops sending pings, Tickstem sends an alert.
What is heartbeat monitoring?
Heartbeat monitoring means your job sends a ping to a URL after each successful run. If the ping doesn't arrive within the expected window, an alert fires. It catches silent failures that uptime monitoring misses — like a job that simply never starts.
How is heartbeat monitoring different from uptime monitoring?
Uptime monitoring checks whether your server is responding to HTTP requests. Heartbeat monitoring checks whether your scheduled jobs are actually running and completing. You need both: uptime tells you your server is up, heartbeat tells you your background jobs are healthy.