~/tools/hatchet
tool

Hatchet

Hatchet is an open source, Postgres-backed task queue and workflow engine you can self-host — an alternative to AWS Step Functions and hosted queues for running background jobs, AI agents, and durable workflows with automatic retries and full run history.

What is Hatchet?

Hatchet is an open source orchestration engine for background tasks, AI agents, and durable workflows, built on PostgreSQL. Instead of a separate broker like Redis or RabbitMQ, it uses Postgres (via FOR UPDATE SKIP LOCKED) as both the queue and the durability layer, so every task, retry, and state transition is stored and replayable.

What is Hatchet best for?

Teams that want durable, observable background job processing without standing up distributed infrastructure. It fits long-running AI agent calls, data pipelines, and mission-critical async work where you need automatic retries, full run history, and the ability to replay failed tasks — while keeping Postgres as your only stateful dependency.

What can Hatchet do?

  • Run durable tasks and DAG workflows that survive crashes and resume from where they stopped
  • Retry automatically with configurable policies, including exponential backoff
  • Trigger work from events, webhooks, cron schedules, or durable event waits
  • Control throughput with priority queues, rate limiting (including dynamic per-user limits), and fair-scheduling concurrency policies
  • Route tasks by worker labels, affinity rules, and weighted scheduling
  • Monitor everything through a real-time web UI, OpenTelemetry, and Prometheus metrics
  • Build with native SDKs for Python, TypeScript, Go, and Ruby

Where does Hatchet fall short?

  • Its cloud pricing steps up sharply for teams: the Developer tier is usage-based ($10 per 1M runs), but the next paid tier that adds multiple users, tenants, and higher throughput starts at $500/mo, and self-hosting support (with SSO and bring-your-own-cloud) sits behind the custom Enterprise plan.
  • It’s tuned for correctness and observability over raw throughput — the team cites a ceiling around 10k tasks/second, so extreme-scale, low-latency fan-out is a case where a purpose-built system like Temporal may fit better.
  • The whole model leans on Postgres. That is the point, but it also means your database is the bottleneck to scale, and you inherit the work of tuning and scaling Postgres itself under heavy queue load.

Is Hatchet free?

Yes — Hatchet is fully MIT-licensed and free to self-host with Docker, Kubernetes, ECS, Cloud Run, or Railway; you only pay for your own infrastructure. Hatchet Cloud is the managed option, with a free Developer tier (first 100,000 runs included, then $10 per 1M runs) and paid Team and Scale plans from $500/mo.

What does Hatchet replace?

Hatchet stands in for cloud orchestration and queue services like AWS Step Functions and Amazon SQS when you want durable workflows and background jobs on your own Postgres instead of a managed AWS service. Its durable-tasks feature also overlaps with Temporal and DBOS, but with Postgres as the only backing store rather than purpose-built distributed infrastructure.

FAQ

Is Hatchet open source? Yes. Hatchet is released under the MIT license — a permissive, OSI-approved open source license — and the self-hosted engine is fully open, not open-core.

Can I self-host Hatchet for free? Yes. The engine is free to self-host on your own infrastructure with Docker or Kubernetes. Note that hands-on self-hosting support, SSO, and bring-your-own-cloud deployment are part of the paid Enterprise plan.

Is Hatchet a good AWS Step Functions alternative? For teams that prefer code-first workflows in Python, TypeScript, or Go and want to run on their own Postgres rather than lock into AWS, yes. Step Functions is more tightly integrated with the wider AWS ecosystem.

What do I need to run Hatchet? A PostgreSQL database and a container runtime (Docker). You define workers using one of the SDKs, and Postgres handles the queue, state, and durability.