Comparison
Crontap vs Cron-job.org: scheduling with monitoring built in
Crontap combines HTTP schedules, bounded retries, uptime monitoring, heartbeats, and human and machine alert routing in one product, starting with a free two-item plan. Cron-job.org covers free one-minute scheduling and a few specialist extras, but its public documentation does not describe automatic retries or inbound heartbeat monitoring.
At a glance
Cron-job.org vs Crontap, side by side.
| Dimension | Cron-job.org | Crontap |
|---|---|---|
| Pricing | Entirely free; donation-funded | Starter $0; Pro from $2.99/mo |
| Starter allowance | No fixed job count; fair-use policy | Starter: 2 combined items; schedules hourly+, 1 uptime monitor daily, and 1 heartbeat hourly |
| Cadence floor | 1 minute | Starter: schedules and heartbeats hourly, uptime daily; Pro: 1 minute |
| Per-schedule timezone | Yes, per job | Per-schedule IANA |
| HTTP request controls | Methods, headers, body, auth, timeout | Methods, headers, and JSON body; Basic auth via Authorization header |
| Testing and history | Test runs; last 50 executions, with headers and body retained for 2 days | Perform test; attempt status, code, duration, size, and error summary; no persisted response bodies |
| Management API | 100 requests/day by default; 5,000/day for sustaining members | Public management API on Ultra only |
| MCP | REST API is the documented automation surface | Included on Starter, Pro, Ultra, and Custom within plan limits; manages schedules, uptime, heartbeats, and history; does not wake agents |
| Human Notifications | Email failure, recovery, automatic-disable, and SSL alerts | All plans: email, test sends, product defaults, per-item default/custom/off routing, and delivery history. Pro, Ultra, and legacy Pro add Slack, Discord, and Telegram |
| Machine webhook Integrations | REST API for job management | Separate machine webhook Integrations with per-event success, failure, missed, and recovered levers where applicable |
| Schedule failure batching | Not compared; Crontap schedule-specific alert setting | Schedule alerts: unsaved default Starter 24h / 3 failures, paid 10m / 3; configurable floor Starter 1 day, paid 1 minute |
| Heartbeat / dead-man monitoring | No documented heartbeat/dead-man monitor | Native: period + grace, /fail, missed/recovered/explicit-failure alerts, ping URL, and 90-day history |
| Uptime monitoring | Status-monitor jobs, public status pages and badges, and SSL alerts | Native HTTP uptime: down/recovered alerts, history, 90-day rollups, and integration controls |
| Retries and customization | No documented automatic retry policy | Default on: 3 retries with 2× exponential backoff and jitter. Pro, Ultra, and legacy Pro: 1–5 retries plus delay and retry outcomes; alert after exhaustion |
How they work
The two approaches in one paragraph each.
Cron-job.org
Cron-job.org stores a URL and schedule, then sends configurable methods, headers, body, authentication, and timeout settings as often as every minute in the job's timezone. It provides test runs, keeps the last 50 executions with response headers and body for two days, and adds email failure, recovery, automatic-disable, and SSL alerts. Status-monitor jobs can feed public status pages and badges.
Crontap
Crontap stores a method, headers, and JSON body for each IANA-timezone schedule, then provides Perform test and attempt-level history. Native uptime checks and period-plus-grace heartbeats use the same human alert routing, while machine webhook Integrations remain separate. Starter includes email with a one-day minimum schedule-alert interval. Paid plans add Slack, Discord, and Telegram and can shorten that interval to one minute.
Where each side wins
Honest broker, both columns.
Cron-job.org wins on
- Free one-minute scheduling with no fixed job count, subject to fair use.
- Configurable auth and timeout, non-JSON request bodies, and two days of response detail for the last 50 executions.
- Public status pages, status badges, and native SSL-expiry alerts.
Crontap wins on
- Starter can mix two schedules, uptime monitors, or heartbeats instead of treating monitoring as a separate product.
- Pro increases the combined cap and adds one-minute cadence, configurable retry policy, and Slack, Discord, or Telegram.
- Human Notifications and machine webhook Integrations have separate routing controls.
- MCP manages schedules, uptime monitors, heartbeats, and history within the account's plan limits.
The math
Cadence and pricing, worked out.
- Crontap Starter includes two combined items and email at $0. Pro starts at $2.99/mo for three combined items, one-minute cadence, retry tuning, and chat notifications.
- Cron-job.org is entirely free and donation-funded, with no fixed job count under its fair-use policy. Its REST API allows 100 requests per day by default and 5,000 for sustaining members.
Moving from Cron-job.org
The migration, in 6 steps.
- Inventory every URL, cadence, timezone, method, header, body, Basic-auth credential, timeout, alert, status page, badge, and SSL responsibility.
- Create each replacement with an idempotent endpoint or a schedule that will not fire during setup, then pause it before cutover. Map only supported request settings: method, headers, and JSON body. Convert HTTP Basic auth to an Authorization header.
- Resolve any dependency on cron-job.org's configurable timeout or non-JSON body before cutover because those settings do not map directly.
- Make side-effecting endpoints idempotent, then use Perform test while the cron-job.org recurring job remains active. Keep the Crontap schedule paused during testing.
- Disable the cron-job.org job before enabling its Crontap replacement so the endpoint never has two recurring schedulers.
- Keep or separately replace public status pages, badges, and SSL-expiry alerts. Crontap does not provide those three features natively.
Decision
Which one fits.
Pick Cron-job.org if
Your priority is zero-cost one-minute scheduling, retained response details, SSL alerts, or a public status page, and you do not need Crontap's retries, heartbeats, or routed alerts.
Pick Crontap if
You want a schedule's execution, retry attempts, uptime checks, and missed heartbeat signals visible under one account.
Pair both if
Crontap runs the workload while separate cron-job.org status-monitor jobs continue to own public pages, badges, or SSL-expiry alerts.
FAQ
Crontap vs Cron-job.org, in detail.
- Is cron-job.org really free?
- Yes. Cron-job.org describes the service as entirely free and accepts donations. Sustaining members receive a higher REST API allowance, from 100 to 5,000 requests per day.
- How do Crontap retries work on Starter and paid plans?
- New schedules retry 5xx responses, timeouts, and network failures by default, and every plan can toggle retries. Paid plans can configure 1 to 5 retries, tune the delay, and optionally retry 429 or other 4xx responses. These are bounded in-process attempts, not durable queue delivery.
- Does Crontap keep cron response bodies in history?
- No. Crontap history stores attempt status, code, duration, size, and an error summary. For an HTTP error, that summary may include up to 500 characters of the error response, but Crontap does not persist the response body as history. Perform test can show the returned body during setup.
- Does Crontap replace cron-job.org status pages, badges, or SSL alerts?
- No. Crontap provides native HTTP uptime monitoring, but it does not provide public status pages, status badges, or native SSL-expiry alerts. Keep cron-job.org for those responsibilities or choose a dedicated service.
Sources
- Cron-job.org homepage (checked October 5, 2026)
- Cron-job.org FAQ (checked October 5, 2026)
- Cron-job.org terms of service (checked October 5, 2026)
- Cron-job.org REST API (checked October 5, 2026)
- Cron-job.org job creation (checked October 5, 2026)
- Crontap pricing and plan limits (checked October 5, 2026)
- Crontap retry policy (checked October 5, 2026)
- Crontap MCP capabilities (checked October 5, 2026)
Test one low-risk job
Create it safely, then pause before cutover.
Use Perform test against a safe or idempotent endpoint, then keep the replacement paused. Enable it only after its timing, request, and alert settings match the job you are replacing.
/wp-cron.php?doing_wp_cron=1
Schedule
"every 5 minutes"
Next
in 23s