Upstash QStash
HTTP-based queue: POST a job to QStash, it retries and delivers to your endpoint later. No worker process to deploy, which is nice on serverless.
What is Upstash QStash?
QStash is an HTTP-based message queue: instead of running a worker process that pulls jobs off a queue, you POST a job to QStash with a target URL, and QStash handles scheduling, retries, and delivery back to your own HTTP endpoint later. That model maps naturally onto serverless and edge functions, which can't run long-lived worker processes in the first place.
Key features
- Pure HTTP interface for both publishing and receiving jobs, no queue client library or persistent connection required
- Automatic retries with configurable backoff if your endpoint fails or times out
- Delayed and scheduled delivery, including cron-style recurring jobs
- Signature verification on incoming webhook calls so you can trust a delivery actually came from QStash
- Part of the broader Upstash ecosystem, so it pairs naturally if you're already using Upstash Redis or Kafka
Who it's for
Serverless and edge-deployed apps that need reliable background job delivery without standing up a worker process or queue infrastructure. If you need heavier job orchestration (complex retries, step functions, long-running tasks with state), something like Trigger.dev or Inngest offers more structure.
Pricing
Free tier for low-volume use, usage-based pricing per message beyond that. No fixed monthly minimum for getting started.