Article

Free Background Jobs and Cron in 2026 (19 Compared)

Nineteen free tiers for running background jobs and cron schedules compared - from cron-job.org and Inngest to Amazon SQS and Upstash - so you can pick one without reading nineteen pricing pages.

By 10 min read

TL;DR: For a plain cron ping, cron-job.org runs unlimited scheduled jobs for free, no card and no expiration. For a real background-job service with retries and observability, Inngest gives 50,000 executions a month and Trigger.dev gives $5 of monthly usage on 20 concurrent runs. For a queue to sit behind either one, Amazon SQS ships 1,000,000 free requests a month and Upstash includes 10 free Redis databases at 500,000 commands a month each. If you just need to know a job ran, Healthchecks.io monitors 20 jobs for free. Full comparison and gotchas below.

What’s in this list, and what isn’t

This covers three related jobs: firing code on a schedule, running it as a durable background task with retries, and moving messages through a queue in between. A few things that look like they belong here don’t make the table:

  • Temporal hands new accounts $1,000 in Temporal Cloud credit, and its startup program adds up to $6,000 more. That’s a block of starting credit with an end date, not a sustained free tier, so it’s out - same rule the cloud hosting roundup applies to Railway and Clever Cloud.
  • Zapier and Make can run scheduled and triggered workflows too, but they’re no-code automation aimed at connecting apps visually, not at developers writing job code. Different product, different reader.
  • AWS Step Functions, Amazon SQS, and Amazon EventBridge are in the table, but every AWS product needs an AWS account, and AWS accounts need a card on file regardless of which service you’re using. The free tier itself doesn’t charge anything within its limits.

Everything below is checked against the vendor’s own pricing page as of September 2026.

The comparison

ProductCategoryFree tierGotcha
cron-job.orgCron schedulerUnlimited cron jobs, running as often as once a minute30-second request timeout, only the last 50 executions are kept per job
PosthookScheduled webhooks1,000 hooks/month across 3 projects7-day log retention, 15-minute alert granularity
DaestroCron + compute1 cron job, 10 concurrent job runsLogs kept for 1 day only; one linked cloud provider account
codehooks.ioBackend + cron1 request/sec, 500 requests/day, 150 MB databaseOne worker per queue, 30-second timeout
CronhooksScheduled webhooks5 schedules, unlimited team membersFree plan is ad-hoc schedules only
NorthflankApp platform + cron2 free services, 1 database, 2 cron jobs, always-onCron jobs share the same sandbox quota as everything else you deploy
Cloudflare WorkersServerless scheduler5 Cron Triggers/account, 100,000 requests/day10 ms CPU time per invocation
InngestJob orchestration50,000 executions/month, 5 concurrent steps3 users on the free plan
Trigger.devJob orchestration$5 of usage/month, 20 concurrent runs, unlimited tasks1-day log retention
AWS Step FunctionsWorkflow orchestration4,000 free state transitions/month (Standard Workflows)Retries count as additional transitions
Amazon SQSMessage queue1,000,000 requests/monthUnused requests don’t roll over to the next month
Amazon EventBridgeEvent bus + scheduler14,000,000 EventBridge Scheduler invocations/monthApplies to the Scheduler and Schema Registry, not general event bus usage
Cloudflare QueuesMessage queue10,000 operations/day24-hour message retention, not configurable
CloudAMQPManaged RabbitMQ1,000,000 messages/month, 100 queuesShared broker, 28-day max idle queue time
UpstashRedis + queuesUp to 10 free databases, 500,000 commands/month, 256 MB each10 GB bandwidth/month, 10,000 max commands/second
Hookdeck Event GatewayWebhook gateway10,000 events/month, 100,000 discarded requests/month3-day event retention
Hook0Webhook delivery100 events/day, 10 event types, 10 subscriptionsEvents over the daily cap are blocked (HTTP 429), not queued
SvixWebhook delivery200 messages/second, 30-day payload retentionMetered by throughput, not a flat monthly event cap
Hook RelayWebhook delivery100 deliveries/day, 3 hook endpoints14-day retention

Cron and scheduled jobs: firing code on a timer

The simplest version of this problem is “run this URL on a schedule.” cron-job.org answers it with no catch: the entire service is free, cron jobs can fire as often as once a minute, and there’s no cap on how many you run - just a fair-use policy behind the scenes. The tradeoffs show up in the details, not the headline: each request times out after 30 seconds, and you can only see the last 50 executions per job.

Cronhooks and Posthook both aim at scheduled webhooks specifically - fire a POST request at a future time or on a recurring interval, without owning a server that stays up to wait for it. Cronhooks’ free plan covers 5 schedules but only ad-hoc ones, so a genuinely recurring job needs a paid plan. Posthook gives you 1,000 hooks a month across 3 projects, with a week of log retention to debug failures.

codehooks.io and Daestro bundle cron into a small backend rather than selling it alone. codehooks.io pairs a single scheduled worker with 150 MB of database storage and 500 requests a day - enough for a small scheduled task plus the app logic around it. Daestro’s free plan gives you one cron job and ten concurrent job runs, but keeps logs for only a day, so anything you need to debug after the fact has to be caught fast.

Cloudflare Workers and Northflank fold cron into a bigger free tier you’re likely already using for something else. Workers’ free plan includes 5 Cron Triggers per account on top of its 100,000 daily requests, capped at 10 ms of CPU time per invocation - fine for a scheduled fetch-and-store, tight for anything computational. Northflank’s sandbox plan bundles 2 cron jobs in with 2 free services and a database, always-on with no sleep timer.

Background jobs and workflow orchestration

A cron trigger tells you when to run something. A job orchestration platform handles what happens once it’s running - retries, concurrency limits, step-by-step state, and a dashboard to see what failed and why. Inngest gives the free plan 50,000 executions a month and 5 concurrent steps, with logging, tracing, and basic alerting included rather than gated behind a paid tier. It’s capped at 3 users, so it fits a solo project or a small team more than a company-wide adoption. Trigger.dev takes a usage-credit shape instead of a flat execution count: $5 of free monthly usage, 20 concurrent runs, and unlimited tasks, with up to 10 schedules included. Its free-plan log retention is a single day, so debugging a job that failed last week means it’s already gone.

AWS Step Functions is the state-machine version of the same idea: 4,000 free state transitions a month for Standard Workflows, and unlike most AWS free-tier allowances, this one doesn’t expire after your first 12 months - it’s available indefinitely. The catch is that retries inside a workflow count as additional transitions and eat into the same 4,000, so a flaky step burns through the free tier faster than the happy path suggests.

Queues and event delivery

Most background-job systems need something to hold messages between producer and consumer, and the free tiers here split into managed AWS/Cloudflare infrastructure and dedicated webhook-delivery products. Amazon SQS gives a flat 1,000,000 free requests a month, though unused requests don’t carry over. Amazon EventBridge pairs a free event bus with its Scheduler component, which alone allows 14,000,000 invocations a month at no cost. Cloudflare Queues is smaller and simpler - 10,000 operations a day with a fixed 24-hour retention window that can’t be extended. CloudAMQP runs a shared RabbitMQ broker instead of a proprietary queue API: 1,000,000 messages a month across up to 100 queues, with a 28-day cap on how long an idle queue sticks around. Upstash covers the Redis side of the same job - up to 10 free databases, each with 500,000 commands a month and 256 MB of storage, a natural fit if you’re already using Redis-backed queues like BullMQ.

For webhook-shaped delivery rather than a raw queue, Hookdeck Event Gateway, Hook0, Svix, and Hook Relay all give you a managed inbox for incoming or outgoing webhooks with retries built in. Hookdeck’s free plan allows 10,000 events a month and a generous 100,000 discarded requests, with 3 days to look back. Hook0 caps out at 100 events a day, and anything past that gets a hard 429 instead of a queue to wait in. Svix measures its free plan differently than the rest - 200 messages a second rather than a flat monthly count, with 30 days of payload retention. Hook Relay sits at the small end: 100 deliveries a day across 3 hook endpoints, held for 14 days.

Cron monitoring: knowing when a job didn’t run

A scheduled job that silently stops running is worse than one that never existed, because nothing tells you it’s broken. These three products exist purely to watch for that: your job pings a URL on success, and if the ping doesn’t arrive on schedule, you get an alert.

ProductFree tierGotcha
Healthchecks.io20 monitored jobs, 100 log entries per jobSame limits on the paid Supporter tier, so upgrading buys goodwill, not more headroom
Cronitor5 monitors, 100,000 Real User Monitoring events/monthSlowest check frequency is 5 minutes
Dead Man’s Snitch1 monitor (“The Lone Snitch”)One job only - a second scheduled task needs a paid plan

Healthchecks.io covers the most ground per account, watching 20 jobs on its free Hobbyist plan with 100 stored log entries each. Cronitor is narrower on job count at 5 monitors but bundles in uptime and Real User Monitoring, with 100,000 RUM events included free. Dead Man’s Snitch is the simplest of the three and says so in its own plan name - one snitch, one job watched, nothing else on the free tier.

Which one should you actually use?

  • A plain cron ping with zero setup: cron-job.org - unlimited jobs, no card, running in under a minute.
  • A background job with retries and a dashboard: Inngest if you want a flat monthly execution count; Trigger.dev if you’d rather work against a usage-credit budget.
  • A queue to sit behind either one: Amazon SQS for a flat 1,000,000 free requests a month; Upstash if you want Redis-shaped queues instead of a proprietary API.
  • Delivering or receiving webhooks reliably: Hookdeck Event Gateway for the highest flat monthly event cap; Svix if your load is bursty and better measured in messages per second than a flat monthly cap.
  • Knowing a job silently stopped: Healthchecks.io for the most monitors on one free account.

Whichever you pick, check the product page for the exact numbers before you build against it - free tiers change, and a retry policy or a retention window matters more day to day than the headline quota.

FAQ

Is there a good free cron job service? cron-job.org is the most generous - unlimited scheduled jobs, no card required, running as often as once a minute. Cloudflare Workers is the pick if you’re already deploying Workers, with 5 Cron Triggers included free.

What’s the best way to run free background jobs with retries? Inngest and Trigger.dev both give a free plan built for durable background jobs rather than plain cron - queued execution, automatic retries, and a dashboard to see what failed, not just a URL fired on a timer.

Is there a free message queue? Amazon SQS gives a flat 1,000,000 free requests a month. Cloudflare Queues and CloudAMQP are smaller but simpler to set up if you’re not already on AWS.

Is there a scheduled tasks free tier that doesn’t expire? Most of the table does - cron-job.org, Cronhooks, and Cloudflare Workers all run on a sustained free plan with no countdown to an expiry date. Temporal is the exception on this list: its $1,000 in free credit is a trial, not an ongoing free tier.

Do any of these require a credit card? codehooks.io, Upstash, Hookdeck Event Gateway, Hook0, and Svix all state no card is required to sign up. AWS products need an AWS account, which does require one.

See also