Overview
Faktory is a work server written in Go by Mike Perham, the author of Sidekiq, first released in 2017. Instead of each language having its own Redis-based queue library, Faktory runs as a separate server: clients push jobs as JSON with a type and arguments, and workers in any language fetch them, then acknowledge or fail them.
Jobs are reserved with a timeout (30 minutes by default); jobs that fail or are not acknowledged in time are requeued, and failures follow a retry schedule with exponential backoff. A web UI shows queues, retries, scheduled and dead jobs. The server can be installed from packages or run in Docker or on AWS ECS.
The open-source edition is AGPL-licensed. Faktory Enterprise, from $299 a month, adds cron jobs, unique jobs, expiring jobs, a Redis gateway, statsd metrics, queue throttling, batches and workflows, job status tracking and white labelling, with email support.
Pricing and plans
| Plan | Price | What you get |
|---|---|---|
| Faktory OSS | Free | AGPL; scheduled jobs, web UI, polyglot workers, error handling, Docker |
| Faktory Enterprise | From $299/mo | Cron, unique and expiring jobs, Redis gateway, statsd metrics, throttling, batches, job status, white labelling, email support |
What it does
- Polyglot workers
- Any language with a Faktory client can push and process the same jobs.
- Reservation and retries
- Jobs not acknowledged within the reservation timeout are requeued; failures retry with exponential backoff.
- Scheduled jobs
- Jobs can be scheduled to run at a future time in the free edition.
- Web UI
- Built-in dashboard for monitoring and managing queues and jobs.
- Enterprise workflows
- Batches, job status, cron, unique jobs and throttling in the paid edition.
Strengths and limitations
Strengths
- One job server shared by services in different languages
- From the author of Sidekiq, with a similar model
- Single binary that is simple to run
Limitations
- Cron, unique jobs, batches and throttling are Enterprise-only
- AGPL licence for the free edition
- Enterprise starts at $299/month
- Official clients are fewer than for Sidekiq or BullMQ; several languages rely on community clients
- No hosted version; you operate the server
Who it suits
Good for
- Polyglot teams sharing a job system across Ruby, Go, Python and Node.js
- Self-hosters who want a Sidekiq-like model outside Ruby
Look elsewhere if
- Single-language apps where a native library is simpler
- Teams needing free cron or workflow features
Alternatives to Faktory
| Tool | From | Free option | Stages |
|---|---|---|---|
| BullMQ Redis-based job queue library | $139/mo | ||
| Oban SQL-backed job processing library for Elixir (and Python) | $135/mo | ||
| River Postgres-backed job queue for Go | $125/mo | ||
| Sidekiq Redis-based background job library for Ruby | $99/mo | ||
| Inngest Durable execution and event-driven workflow platform | $99/mo | Free tier | |
| DBOS Postgres-backed durable workflow library | $99/mo |
Questions
Is Faktory free?
The open-source edition is free under the AGPL; Enterprise starts at $299 a month.
How is Faktory different from Sidekiq?
Sidekiq is a Ruby library on Redis; Faktory is a standalone server that workers in any language can use.
Does Faktory support cron jobs?
Cron jobs are a Faktory Enterprise feature.
Sources read for this page