tools
Camille Forster7 min read2 views

Upstash Pricing in 2026: What You Actually Pay for Serverless Redis

As of July 2026, Upstash Redis is free up to 256 MB and 500K commands per month; pay-as-you-go bills $0.20 per 100K commands plus $0.25/GB stored, and fixed plans run $10 to $1,500/month. Because Upstash charges per command, not per server, request volume sets your bill, not data size. Above ~5M commands/month a flat $10 fixed plan usually beats pay-as-you-go.

Flat illustration of a receipt emitting a stream of command dots that stack into a rising cost chart, deep green and gold
Flat illustration of a receipt emitting a stream of command dots that stack into a rising cost chart, deep green and gold
On this page

As of July 2026, Upstash Redis is free up to 256 MB and 500,000 commands per month. Past that, pay-as-you-go bills $0.20 per 100,000 commands plus $0.25 per GB stored, and fixed plans run from $10/month (250 MB) to $1,500/month (500 GB). The one thing that trips up every first bill: Upstash charges per command, not per server, so your cost is set by request volume, not by how much data you store. Above roughly 5 million commands a month, a flat $10 fixed plan usually beats pay-as-you-go.

You pay per command, not per server

Most managed databases bill you for a box: a fixed amount of RAM and CPU that runs whether you touch it or not. Upstash Upstash flips that. On pay-as-you-go there is no box. You pay $0.20 for every 100,000 commands your app sends, plus a little for storage, and the meter scales to zero when nobody is using it.

That is great for a side project that sleeps most of the day. It is a trap for a chatty app that fires a dozen Redis calls on every page load. Two apps storing the exact same 200 MB can get bills that differ by 10x, purely because one sends more commands. Store size barely moves the needle. Command count is the needle.

Keep that straight and the rest of the pricing page reads cleanly.

The price ladder (July 2026)

Scroll to see more

PlanBase priceData capWhat you pay per command
Free$0256 MB, 500K commands/moNothing (until you hit the cap)
Pay as you go$0100 GB$0.20 per 100K commands + $0.25/GB stored
Fixed 250MB$10/mo250 MBIncluded, up to 10,000 commands/sec
Fixed 1GB$20/mo1 GBIncluded, up to 10,000 commands/sec
Fixed 5GB$100/mo5 GBIncluded
Fixed 10GB$200/mo10 GBIncluded
Fixed 50GB$400/mo50 GBIncluded
Fixed 100GB$800/mo100 GBIncluded
Fixed 500GB$1,500/mo500 GBIncluded

Two add-ons matter for a real bill. A read region replica costs $5 to $750 per region depending on your base plan, and the Prod Pack (uptime SLA, multi-zone high availability, encryption at rest, SOC-2, Prometheus and Datadog exports) is a flat $200/month per database. On pay-as-you-go, bandwidth is free up to 200 GB/month, then $0.03/GB, which is rarely the line item that hurts.

Every figure here comes straight from Upstash's own Redis pricing page, checked July 2026.

Three real 30-day bills

Numbers, not adjectives. Here is what three common setups actually cost.

A. Hobby rate limiter. A small Next.js app doing rate limiting and a bit of caching: 400,000 commands and 50 MB of data in the month. That fits the free tier, so the bill is $0. One honest caveat: the popular sliding-window rate limiter runs 3 to 5 Redis commands per check, so 500,000 free commands is really about 100,000 to 165,000 real rate-limit checks, not 500,000 requests. Developers hit exactly this question about whether the free tier survives real rate limiting on r/nextjs. Size your free tier on checks, not visitors.

B. Production sessions and cache. A live SaaS storing sessions and hot cache: 25 million commands, 200 MB of data. On pay-as-you-go that is 25,000,000 / 100,000 x $0.20 = $50 in commands, plus $0 storage (under the 1 GB free allowance), so about $50/month. Move the same workload to the Fixed 250MB plan and it is a flat $10/month, because 200 MB fits and 10,000 commands/sec covers 25 million a month with room to spare. Same app, 5x cheaper, just by picking the right plan.

C. Busier app, more data. 60 million commands, 3 GB of data. Pay-as-you-go: 60,000,000 / 100,000 x $0.20 = $120 in commands, plus (3 - 1 free) x $0.25 = $0.50 storage, so $120.50/month. The Fixed 5GB plan holds 3 GB for a flat $100/month, cheaper and predictable. Add the Prod Pack for a real SLA and it is $300/month, which is worth it only when downtime costs you revenue.

The crossover nobody prints: 5 million commands

Here is the lever the pricing page does not spell out. The Fixed 250MB plan is $10 flat with no per-command charge. On pay-as-you-go, $10 buys you $10 / $0.20 x 100,000 = 5,000,000 commands. So the moment your steady traffic crosses about 5 million commands a month, and your data still fits in 250 MB, the flat $10 plan is cheaper than metered billing. For the 1 GB fixed plan at $20, the breakeven is 10 million commands.

This is the same scale-to-zero logic we walked through in the Neon pricing teardown: usage billing is a gift while you are idle and a tax once you are busy. Most people leave a project on pay-as-you-go because that is the default, and quietly overpay once it gets popular. Check your monthly command count. If it is north of 5 million and your keyspace is small, switch to Fixed and stop the bleed.

Command amplification: your framework sets the bill

Because you pay per command, the real driver is how many commands your code sends per user request. It is the same idea as being billed per unit of work rather than per server, the way Cloudflare Workers bills CPU time. On pay-as-you-go it works out to a clean effective rate:

Scroll to see more

Commands per requestEffective cost per 1M requests
1 (a single GET)$2.00
3 (fixed-window rate limit plus a read)$6.00
5 (sliding-window rate limit)$10.00

A million requests can cost you $2 or $10 for the exact same traffic, decided entirely by how chatty your Redis code is. That is why two identical-looking apps get different bills.

Cheaper levers

  1. Above ~5M commands/month with small data, switch pay-as-you-go to Fixed 250MB ($10 flat). This is the single biggest saving and the one most people miss.
  2. Cut commands per request. One SETEX beats a SET followed by an EXPIRE (two commands become one). Cache truly hot values in-process so repeat reads never touch Redis at all. Note that Upstash bills each command even inside a pipeline, so pipelining saves latency, not command count; the saving comes from sending fewer commands.
  3. Pick a cheaper rate-limit algorithm. Fixed-window uses fewer commands per check than sliding-window. If your budget is tight and approximate limits are acceptable, fixed-window is the frugal choice.
  4. Set TTLs. Expiring keys keeps your data under the free 256 MB or the next fixed tier so you do not jump a plan you did not need.
  5. Optimize commands before bandwidth. With 200 GB free on pay-as-you-go, egress is rarely the problem. Spend your effort on command count.

When Upstash wins, and when a server is cheaper

Upstash Upstash wins when your traffic is spiky and idle a lot: serverless functions, edge routes, a Vercel Vercel app, a side project that sleeps overnight. A fixed-size Redis server would bill for all those idle hours; Upstash bills $0 when nobody is calling it.

Upstash loses when your workload runs flat out, 24/7, at millions of commands per hour. There, per-command billing keeps climbing while a fixed server with unmetered operations stays flat, so a server-based option can be cheaper. Redis Redis Cloud's server-based plans are the usual comparison point; check their current rates before you commit. And note that Vercel KV runs on Upstash under the hood, so it is the same engine on a different invoice, not a cheaper escape hatch.

Price the commands first. The plan almost always follows from that one number.

Math check: at $0.20 per 100K commands, $10 of pay-as-you-go equals 5 million commands, which is exactly the flat Fixed 250MB plan. Cross that line and the meter is costing you money for nothing.

C

Written by

Camille Forster

Frequently asked questions

Is Upstash free?

Yes. Upstash Redis has a permanent free tier at $0/month covering up to 256 MB of data and 500,000 commands per month, with 10 GB of bandwidth. Past those limits you move to pay-as-you-go or a fixed plan (figures as of July 2026).

How does Upstash pricing work?

On pay-as-you-go you pay $0.20 per 100,000 commands plus $0.25 per GB stored (first 1 GB free), and bandwidth is free to 200 GB then $0.03/GB. Alternatively, fixed plans charge a flat monthly base ($10 for 250 MB up to $1,500 for 500 GB) with commands included.

When should I switch from pay-as-you-go to a fixed plan?

Around 5 million commands a month. The Fixed 250MB plan is $10 flat, and $10 of pay-as-you-go buys exactly 5 million commands. Above that, if your data still fits in 250 MB, the flat plan is cheaper. For the 1 GB fixed plan at $20, the breakeven is about 10 million commands.

Why is my Upstash bill higher than expected?

Command amplification. Upstash bills per command, not per request, and features like sliding-window rate limiting fire 3 to 5 Redis commands per check. A page that makes several Redis calls multiplies your command count, so traffic that looks modest can generate millions of billable commands.

Does Upstash charge differently for reads and writes?

No. Reads and writes are billed the same, at $0.20 per 100,000 commands on pay-as-you-go. What matters for your bill is the total number of commands, not the mix of reads versus writes.

Is Upstash cheaper than Redis Cloud?

It depends on throughput. For spiky, low-idle or serverless workloads, Upstash's scale-to-zero per-command model is usually cheaper because you pay nothing while idle. For steady, high-throughput workloads running around the clock, a server-based option like Redis Cloud with unmetered operations can be cheaper. Compare your monthly command volume against a flat server price.

What is the Upstash Prod Pack?

The Prod Pack is a flat $200/month per database add-on that adds an uptime SLA, multi-zone high availability, encryption at rest, SOC-2 compliance, and Prometheus and Datadog exports. It is worth it for revenue-critical production databases and usually overkill for hobby projects.

Neon Pricing in 2026: What Serverless Postgres Really Costs

As of July 2026, Neon uses usage-based pricing with no flat subscription: a Free tier ($0), Launch ($0.106 per CU-hour) and Scale ($0.222 per CU-hour). Because Neon bills compute by the CU-hour and scales to zero when idle, the same 1 CU Postgres database costs roughly $0 to $16 a month if it sleeps, about $81 a month always-on on Launch, and about $162 always-on on Scale. Your bill is set by uptime, not by data size.

7 min read59