TrigRun vs Healthchecks.io
Detailed comparison of TrigRun and Healthchecks.io. TrigRun executes scheduled HTTP jobs; Healthchecks.io monitors them with dead man's switch heartbeats.
Like Cronitor, Healthchecks.io solves a different problem than TrigRun. Healthchecks.io is a dead man's switch — your jobs ping it to prove they ran, and it alerts you when pings stop. TrigRun makes the HTTP calls for you so there is nothing to monitor.
The fundamental difference
| TrigRun | Healthchecks.io | |
|---|---|---|
| What it does | Executes HTTP requests on a schedule | Waits for heartbeat pings from your jobs |
| How it works | You define a URL + schedule → TrigRun calls it | Your job pings Healthchecks.io after running → it tracks the heartbeat |
| Infrastructure needed | None | You need your own servers to run jobs and send pings |
| On failure | Retries automatically | Alerts you after grace period expires |
If you need someone to run your scheduled jobs — not just verify they ran — TrigRun is the right tool.
Feature comparison
| Feature | TrigRun | Healthchecks.io |
|---|---|---|
| Pricing | Free 500 exec/mo, Pro 50k exec/mo, Team 200k exec/mo | Free (20 checks), Business $20/mo (100 checks) |
| Job execution | Yes — makes HTTP calls | No — passively waits for pings |
| Retry logic | Exponential backoff | No (does not execute) |
| Secret management | AES-256-GCM encrypted vault | No |
| Notifications | Webhook, Slack, Discord, Email | 30+ channels (Slack, PagerDuty, Telegram, SMS, Phone, Signal, Matrix, and more) |
| Schedule support | Cron, recurring, one-time, scheduled | Cron, systemd OnCalendar, simple period |
| Log capture | Full HTTP response (64 KB) | Ping body (100 KB) |
| API | REST with OpenAPI spec | REST (v3), 100 req/min rate limit |
| CLI | trigrun | None (curl suffices) |
| MCP / AI agent support | Native MCP server, llms.txt / llms-full.txt | None |
| Open source | No | Yes (BSD 3-clause), fully self-hostable |
| Team support | Workspaces with RBAC | Unlimited team members, read/write permissions |
| Crontab import | Yes | No (but checks auto-provision on first ping) |
| Grace period | — | 60 seconds to 365 days, per-check |
Where TrigRun wins
Job execution
TrigRun is a complete job execution platform. Define a URL and schedule — TrigRun makes the HTTP request, captures the response, and retries on failure. Healthchecks.io cannot execute anything; it only listens for incoming pings.
Zero infrastructure
With TrigRun, you don't need servers. With Healthchecks.io, you need infrastructure to both run your jobs AND send pings to Healthchecks.io afterward.
Automatic retries
TrigRun retries failed HTTP calls with exponential backoff. Healthchecks.io has no retry capability because it does not make outbound requests.
Encrypted secrets
TrigRun provides AES-256-GCM encrypted secret storage with secret:// interpolation in job headers. Healthchecks.io does not manage secrets.
Execution detail
TrigRun stores full HTTP response metadata: status code, headers, response body (64 KB), latency, and retry attempts. Healthchecks.io stores what your job sends in its ping body (100 KB), but has no visibility into the actual HTTP response from your target.
Where Healthchecks.io wins
Open source and self-hostable
Healthchecks.io is BSD 3-clause licensed — the most permissive open-source license. The self-hosted version includes every feature of the hosted service with zero restrictions. Docker images are available for amd64, ARM/v7, and ARM64.
30+ notification channels
Healthchecks.io supports more alerting integrations than any competitor: Slack, PagerDuty, Telegram, Signal, Matrix, SMS, phone calls, WhatsApp, Pushover, Gotify, ntfy, GitHub Issues, and many more. TrigRun currently supports webhook, Slack, Discord, and email.
Systemd OnCalendar support
Healthchecks.io understands systemd timer syntax in addition to cron expressions. TrigRun supports cron expressions and recurring intervals.
Email-based pinging
You can send an email to a unique address to signal that a job ran. Useful for systems that can send emails but not HTTP requests.
Exit code tracking
Healthchecks.io accepts exit codes (0-255) directly from shell scripts via URL path (/ping/<uuid>/<exit-code>). This provides granular failure classification beyond pass/fail.
Content keyword filtering
Healthchecks.io can classify pings as success or failure based on keywords in the request body or email subject. TrigRun validates only on HTTP status codes.
Generous free tier for monitoring
Healthchecks.io's free tier includes 20 checks with unlimited team members. The Business plan at $20/month includes 100 checks — significantly cheaper per check than Cronitor.
Slug-based auto-provisioning
Checks can be created automatically when first pinged via a slug URL — no pre-configuration needed. This simplifies setup for new jobs.
Using them together
TrigRun and Healthchecks.io are complementary:
- TrigRun schedules and executes your HTTP jobs with retries and secrets
- Healthchecks.io acts as an independent dead man's switch to verify jobs ran
Your target endpoint could ping Healthchecks.io after processing TrigRun's request, giving you independent confirmation that the full chain worked.
Who should use what
Choose TrigRun if: You want a managed service to execute scheduled HTTP requests. You need retries, secrets, and full execution visibility — not just heartbeat monitoring.
Choose Healthchecks.io if: You already run cron jobs on your own infrastructure and want a simple, open-source heartbeat monitor with extensive notification options. You value self-hosting capability.
Use both if: You want TrigRun to handle execution and Healthchecks.io as a dead man's switch to independently verify your jobs completed.