Skip to content
SPECIFICTION
Get listed

pg-boss

pgboss.io

Free plan WebLinuxAPISelf-hosted
Visit pgboss.io
Spec score 8.2 #8 of 37 in Task Queue Software

What it is

pg-boss is a Node.js job queue that uses PostgreSQL for background processing and asynchronous job execution. It can add a job in the same database transaction as the data change it belongs to, so the job is created only when that transaction commits. Workers use PostgreSQL SKIP LOCKED to claim jobs without blocking one another, with atomic commit safety; delivery is at least once, so a handler may run more than once. Queue controls include priorities, rate limits, debouncing, concurrency policies, retries with exponential backoff, and dead-letter queues. Scheduling covers cron and RRULE, deferral, and dependency-based workflows. Transaction adapters are available for Knex, Kysely, Drizzle, and Prisma. Supported databases include PostgreSQL, CockroachDB, YugabyteDB, Citus, and PGlite. A dashboard can monitor and manage jobs, queues, and schedules, while a JSON HTTP API proxy serves non-Node runtimes. It is MIT-licensed and self-hosted, with a listed price of free. It requires Node 22.12 or higher or Bun, plus PostgreSQL 13 or higher.

Spec sheet

What it does
pg-boss is a Node.js job queue built on PostgreSQL for background processing and reliable asynchronous execution.Read 2 Oct 2026 · pgboss.io
Intended users
The maker says pg-boss suits teams already running PostgreSQL that want to avoid adding another system to operate and monitor.Read 2 Oct 2026 · pgboss.io
Concurrency
It uses PostgreSQL SKIP LOCKED so concurrent workers claim jobs without blocking each other, with atomic commit safety.Read 1 Oct 2026 · pgboss.io
Dashboard
The separate @pg-boss/dashboard package provides a web dashboard for monitoring and managing jobs, queues, and schedules.Read 2 Oct 2026 · pgboss.io
Database backends
The documented backends are PostgreSQL, CockroachDB, YugabyteDB, Citus, and embedded PGlite; the page says Aurora DSQL and Spanner are not yet supported.Read 2 Oct 2026 · pgboss.io
HTTP API
The @pg-boss/proxy package exposes pg-boss methods over JSON HTTP for use from other runtimes and offers optional basic authentication and configurable CORS.Read 2 Oct 2026 · pgboss.io
Job delivery
Jobs are delivered at least once, so a worker may run a handler more than once for the same job.Read 2 Oct 2026 · pgboss.io
License and maintenance
pg-boss is MIT-licensed and maintained by one person; the maker says sponsorship supports maintenance, security response, and support.Read 2 Oct 2026 · pgboss.io
License and support
pg-boss is MIT licensed, maintained by one person, and sponsorship funds maintenance, security response, and support.Read 1 Oct 2026 · pgboss.io
Observability
The project lists OpenTelemetry traces and metrics, including continuation of a job's trace from send() to the worker processing it.Read 2 Oct 2026 · pgboss.io
Operational limit
By default all queues share one partitioned job table, which can affect performance if a queue grows significantly or develops an unexpected backlog.Read 1 Oct 2026 · pgboss.io
ORM integrations
Its transaction adapters support Drizzle, Knex, Kysely, and Prisma.Read 2 Oct 2026 · pgboss.io
Proxy security
The proxy supports optional basic authentication, configurable CORS, and route allowlists or denylists.Read 1 Oct 2026 · pgboss.io
Queue features
The project lists retries with exponential backoff, priorities, dead-letter queues, rate limiting, debouncing, and concurrency policies.Read 2 Oct 2026 · pgboss.io
Queue policies
Features include rate limiting, debouncing, concurrency controls, priorities, dead-letter queues, and retries with exponential backoff.Read 1 Oct 2026 · pgboss.io
Requirements
The homepage lists Node 22.12 or higher, or Bun, and PostgreSQL 13 or higher as requirements.Read 2 Oct 2026 · pgboss.io
Scheduling
It supports job dependency workflows, cron and RRULE scheduling, and job deferral.Read 1 Oct 2026 · pgboss.io
Scheduling and workflows
pg-boss supports cron and RRULE scheduling, job deferral, and dependency-based workflow orchestration.Read 2 Oct 2026 · pgboss.io
Target users
The documentation says it is most suited to teams familiar with relational database semantics, SQL, querying, and backups, especially teams already using PostgreSQL.Read 1 Oct 2026 · pgboss.io
Transactions
Jobs can be sent in the same database transaction as the data change they belong to, so the job exists only if that transaction commits.Read 2 Oct 2026 · pgboss.io
Workers
Workers support backpressure-aware polling and optional PostgreSQL LISTEN/NOTIFY for millisecond delivery latency.Read 1 Oct 2026 · pgboss.io

Plans and prices

pg-boss Free MIT-licensed open source · runs in your own database · no per-job charges Read 2 Oct 2026 · pgboss.io

Every pg-boss plan and price →

Strong points and limits

Strong points

  • Jobs can share transactions with related data changes.
  • Includes retries, priorities, rate limits, and dead-letter queues.
  • Supports cron, RRULE, deferrals, and dependency workflows.
  • Offers adapters for four listed ORMs.
  • Provides a dashboard and JSON HTTP API proxy.

Limits

  • Requires Node 22.12 or higher or Bun.
  • Requires PostgreSQL 13 or higher.
  • Delivery is at least once; handlers may run repeatedly.
  • Queues share a partitioned job table by default.

Who it suits

It suits teams already using PostgreSQL who want background jobs without operating another system. It is aimed at users comfortable with relational databases, SQL, queries, and backups.

Verdict

pg-boss combines queueing, scheduling, and workflow controls with a PostgreSQL-based deployment. Account for its runtime and database requirements, at-least-once delivery, and shared-table operational limit.

Where Specifiction places it

Alternatives to pg-bossAll alternatives →