Skip to main content


The only thing you are charged for are requests. Retries are free.

  • Publish request: You publish a message or schedule, or a schedule creates a message when it triggers.
  • Delivery request: We make an HTTP request to your API.

In the pay-as-you-go plan, the price is $1 per 100K requests. Here are the price and limits of the plans.

FeatureFreePay as you goEnterprise
Max Requests per Day500500,000up to 100M
Max Message Size1MB1MB10MB
Max Number of Topics120infinite
Max Number of Endpoints per Topic100100infinite
Max Retry Count3520
Max Retention Time1 day7 days30 days
Max HTTP Connection Timeout2 min5 minCustom
Price per 100K RequestsN/A$1Custom

Most of the above are soft limits, contact us if you have custom needs.

Free tier

The free tier includes 500 requests per day. Afterwards we will no longer accept new requests.

Pay as You Go

Upstash limits your monthly usage for QStash to daily 500,000 in pay-as-you-go plan. If you are expecting to exceed this limit, contact us for the Enterprise plan.


In the enterprise plan, we give you a fixed price for higher throughput needs. We reserve isolated resource to guarantee the scalability for high volumes. Here the Enterprise plans and prices:

PlanMax Requests per DayPrice (per month)
Enterprise 1M1M$180
Enterprise 10M10M$420
Enterprise 100M100M$1800


Publish to single API endpoint

  1. You make a request to /v1/publish/<your-api-url>
  2. We make an HTTP request to your API and it returns a 500 status code
  3. After some time we retry to deliver the request and it succeeds

In total you would be charged for 2 requests.

Schedules via CRON

  1. You create a new schedule
  2. Whenever the schedule is triggered, we enqueue the message
  3. We make an HTTP request to your API

You will be charged:

1 for the schedule + n * ( 1 for schedule trigger + 1 for the

Where n is the number of times your schedule is triggered.

Example "every hour"

When your schedule triggers every hour, at the end of the month this would be around 1 + 24 * 30 * 2 = 1401 requests.

Publish to topic

Let's assume you have a topic and 2 endpoints (A and B) subscribed to it.

  1. You make a request to /v1/publish/<your-topic>
  2. We make an HTTP request to each of your endpoints.

In total this would be 3 requests.