Upstash
upstash.com · 6 records in Compute, Databases and KV, Storage · JSON
Records 6
- ★ qualifiesUpstash Redis (Databases and KV)USD 250/TB-month
Databases and KVfree tieridentity anonymousno cardlimit request-rateevidence measuredstale on 2026-12-22
- caveatUpstash BoxUSD 8/month
Computefree tieridentity emailno cardlimit request-rateevidence documentedstale on 2026-12-05
- fails: quotaUpstash (Redis / Vector / QStash)
Storagefree tieridentity anonymous?card?limit retention-clampedevidence reportedstale on 2026-11-05
- fails: quotaUpstash Redis (Storage)
Storagefree tieridentity anonymous?card?limit retention-clampedevidence reportedstale on 2026-11-05
- fails: quotaUpstash Vector
Storagefree tieridentity email?card?limit per-object-capevidence reportedstale on 2026-11-05
- deadupstash kafka
Storageidentity email?card?evidence reportedchecked 2026-10-21
Upstash Redis (Databases and KV)
Databases and KV- Free allowance
- 250 MB data; 500,000 commands per month; 10 GB bandwidth per month; 10,000 commands per second; one database
- Verdict
- ★ qualifiesusable as stated; the read path was probed
- Cost
- free tierpaid plans from USD 250/TB-month
- Identity
- anonymousno card, no phone
- Binding limit
- request-rate500,000 commands per month on Free, about 16,600 a day; 10 GB bandwidth per month
- Evidence
- measured4 sources; a live request was made and its output kept
- Freshness
- stale on 2026-12-22checked 2026-10-22 (live); stale on 2026-12-22
| Free tier | 250 MB data; 500,000 commands per month; 10 GB bandwidth per month; 10,000 commands per second; one database unit mixed; metered on request-count |
|---|---|
| Price | USD 0.20 per 100K commands; storage USD 0.25/GB-month beyond the first 1 GB |
| Limits |
adding a payment method moves every database to paid, and 'an account with a payment method cannot have free databases' |
| Identity | anonymous POST upstash.com/start-redis with an Idempotency-Key provisions a database with no account, no email and no card; the database is deleted after 3 days unless claimed in a browser. A permanent free database needs an email |
| Egress | 10 GB bandwidth per month included on Free; pay as you go includes 200 GB then USD 0.03/GB free allowance: 10 GB per month price per tb: USD 0.03/GB beyond 200 GB |
| Per-object cap | 100 MB per record on Free; 10 MB per request |
| Retention | a database on a free account persists while the account is active. An anonymous database created with no account is deleted after 3 days unless claimed (3 days) |
| Interface | rest, cli a body-style REST API that takes the command as a JSON array; the Redis protocol on the same endpoint; a developer API |
| Tooling | redis-cli against the TLS endpoint, or any HTTP client against the REST form; @upstash/redis SDKs |
| Composes with | the cheapest free cache in front of a free Postgres: 100,000 reads a day off the database, if the write path fits 1,000 a day |
| Reliability | an unclaimed database carries a warning not to store sensitive data because it is not tied to an account; the documented developer API host api.upstash.com did not resolve on 2026-10-22 while the per-database endpoint worked |
| Notes | The 10,000-commands-per-day figure in circulation is the pre-2025-03 plan. 500,000 a month is 16,600 a day, which is a different shape: a burst is fine and a steady 1/second is not. |
| Evidence note | measured a database was provisioned anonymously, PING/SET/GET/DBSIZE were run against it, and the 3-day expiry was read from the response. The free-plan limits are a first-party page. |
| Parsed numbers |
|
Evidence 4
| date | source | what it proved |
|---|---|---|
| 2026-10-22 | probe: https://upstash.com/start-redis | POST with Idempotency-Key 5f4fd5c1-7624-43b4-bfc9-94192920d977 returned 200, 3239 bytes, in 7.0 s, with endpoint optimal-spaniel-201484.upstash.io, a bearer token, a console URL and 'Expires: 2026-10-25 (3 days from creation)' |
| 2026-10-22 | probe: https://optimal-spaniel-201484.upstash.io | body-style REST calls returned PING -> PONG, SET k1 v1 -> OK, GET k1 -> v1, DBSIZE -> 1; each round trip 0.73 to 0.92 s |
| 2026-10-22 | upstash.com/docs/redis/overall/billing | Free: 250 MB data, 500K monthly commands, 10 GB monthly bandwidth, 10,000 commands/s, 10 MB request, 100 MB record, 1 database, no credit card |
| 2026-10-22 | probe: https://api.upstash.com/v2/redis/databases | curl could not resolve api.upstash.com on 2026-10-22, so the documented developer API host is not reachable from this network even though the per-database endpoint is |
Upstash Box
Compute- Free allowance
- Free: USD 0, 10 concurrent boxes, 5 CPU hours a month, USD 1 of LLM token budget a month
- Verdict
- caveatusable, with a named limit or an unprobed read path
- Cost
- free tierpaid plans from USD 8/month
- Identity
- emailno card, no phone
- Binding limit
- request-rateFree 10 concurrent boxes; pay-as-you-go 1,000 by default
- Evidence
- documented5 sources; a first-party page was read and the sentence quoted
- Freshness
- stale on 2026-12-05checked 2026-11-04 (live); stale on 2026-12-05
| Free tier | Free: USD 0, 10 concurrent boxes, 5 CPU hours a month, USD 1 of LLM token budget a month unit hours; metered on wall-clock; after the LLM limit the API returns 400 Bad Request |
|---|---|
| Price | none stated |
| Limits |
5 GB, 10 GB and 20 GB of disk on Small, Medium and Large; disk is the tightest resource on this page |
| Binding | request-rate 5 CPU hours a month of active CPU is the allowance and the 5 GB disk is the shape |
| Identity | email Free plan is USD 0; no card stated on the pricing page |
| Egress | not published on the page read |
| Retention | standard boxes auto-pause when idle with no CPU charges; keep-alive boxes run continuously at a fixed monthly price |
| Interface | rest, cli, ssh TypeScript and Python SDKs, a Box CLI, and SSH to <box-id>@us-east-1.box.upstash.com; boxes run on AWS us-east-1 only |
| Tooling | Upstash SDK and REST; BYOK for model providers on every plan |
| Composes with | the split between active-CPU billing and a fixed keep-alive price is the mechanism, and it makes one page carry two products |
| Reliability | no reliability event recorded |
| Notes | The free tier is 5 CPU hours, which at 2 vCPU is about 2.5 hours of a Small box a month. |
| Parsed numbers |
|
Evidence 5
| date | source | what it proved |
|---|---|---|
| 2026-10-22 | upstash.com/pricing/box | Free: 10 concurrent boxes, 5 CPU hours a month, USD 1 LLM budget; Pay as You Go 1,000 concurrent |
| 2026-10-22 | upstash.com/pricing/box | Small 2 vCPU/4 GB/5 GB at USD 0.10 per active CPU hour or USD 8 a month keep-alive; storage USD 0.10 per GB-month on pay-as-you-go |
| 2026-10-22 | upstash.com/pricing/box | standard boxes auto-pause when idle and bill per active CPU hour; keep-alive boxes run continuously at a fixed monthly price |
| 2026-11-03 | upstash.com/docs/box/overall/shell | SSH access to a box exists |
| 2026-11-03 | upstash.com/docs/box/overall/quickstart | a Box CLI exists |
More fields 14
| shape | {"vcpu": 2,"ram_gib": 4,"disk_gib": 5,"gpu_class": null,"gpu_count": null} |
|---|---|
| billing model | consumed-cpu |
| granularity | {"min_billed_s": 1,"rounding_s": 1} |
| session cap | {"wall_clock_min": null,"idle_reap_s": null,"restart_required": false,"note": "standard boxes auto-pause when idle; the idle interval was not published on the page read"} |
| keep rate | {"value": 0.0,"basis": "standard boxes auto-pause with no CPU charges","source": "https://upstash.com/pricing/box"} |
| persistent storage | {"included_gib": 5,"price_gib_month": "USD 0.10","durability": "disk kept while the box exists","survives_stop": true,"survives_destroy": false,"max_retention": "unpublished"} |
| network out | {"allow_outbound": null,"allow_inbound_listen": null,"ports": null,"static_ip": null,"ipv6": null,"per_session_bytes": null} |
| free tier kind | allowance |
| m10h usd | 3.29 |
| m24h usd | 8.0 |
| price arithmetic | 5 CPU-h / 2 vCPU = 2.5 h of a Small box a month on Free; pay-as-you-go 0.10 x 2 x 300 h = 60, but a keep-alive Small box is USD 8 a month flat |
| price note | the page carries two products. Small as a keep-alive box is USD 8 a month flat, which prorates to USD 3.29 at 300 hours. Metered active CPU at 100% is USD 0.20 an hour, or USD 60 for 300 hours. |
| price basis | 10 h/day x 30 = 300 h; 24/7 x 30 = 730 h |
| burst x | 1.0 |
Unknown values 3
- egress metered: egress metering was not published
- per object cap stated: the field does not apply to this kind of offer
- reliability note: nothing of this kind was observed
- Free allowance
- Redis Free: 250 MB max data, 10 GB bandwidth/month, 1 database.
- Verdict
- fails: quotathe free allowance is too small to matter
- Cost
- free tier
- Identity
- anonymous?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- retention-clampeddeleted after 3 days; delete at 3 days
- Evidence
- reported4 sources; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | Redis Free: 250 MB max data, 10 GB bandwidth/month, 1 database. Vector Free: 1 GB total data, 200M vectors x dims. QStash Free: 1,000 messages/day, 50 GB bandwidth, 1 MB message. unit GB; metered on unstated |
|---|---|
| Price | none stated |
| Limits |
250 MB is tiny. 1 database per account. QStash 1 MB max message size makes it useless as storage. Request size 10 MB (upgradeable). Unclaimed ephemeral DBs deleted after 3 days. |
| Identity | anonymous (inferred, not read) not published |
| Egress | Redis Free caps bandwidth at 10 GB/month with max data 250 MB — a 40x fetch amplification before the egress meter binds. Vector Free: bandwidth free/unmetered, storage 1 GB is the wall. free allowance: 10 GB per month |
| Per-object cap | not stated |
| Retention | Unclaimed ephemeral DBs deleted after 3 days. (3 days) |
| Interface | rest rest |
| Tooling | Redis protocol (any redis client), REST API for all three products, @upstash/redis SDK; QStash is HTTP-only |
| Composes with | One free database per account on Redis Free ('Max databases | 1') — no per-project multiplication. BUT: GET https://upstash.com/start-redis mints a keyless, unauthenticated free Redis with no signup (deleted after 3 days unless claimed); claimed ones become normal free DBs. Vector's 1 GB with 1 MB per vector and 200M vectors is the better storage shape: unlimited vector COUNT, only total bytes capped. |
| Reliability | Ephemeral DBs (unclaimed) hard-delete at 3 days — data vanishes by design. Claimed free DBs are durable. |
| Parsed numbers |
|
Evidence 4
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | upstash.com/pricing/redis | 'Free | $0/month | - | 250 MB | 10 GB', 'Max databases | 1' on Free |
| 2026-10-21 | upstash.com/pricing/vector | 'Free | $0 | 200M | 10K | 1 GB', 'Max total data/metadata size: 1 GB' |
| 2026-10-21 | upstash.com/pricing/qstash | 'Free | $0/month | 1,000 | 50 GB | 1 MB' |
| 2026-10-21 | upstash.com/start-redis | probe: GET -> 200, documents zero-signup POST with Idempotency-Key; 'Databases live for 3 days unless claimed' |
More fields 1
| dead end | {"failure_class": "egress","why": "Redis Free: 250 MB max data, 10 GB bandwidth/month, 1 database. Vector Free: 1 GB total data, 200M vectors x dims. QStash Free: 1,000 messages/day, 50 GB bandwidth, 1 MB message.","retry_when": null,"first_recorded": "2026-10-21"} |
|---|
Unknown values 3
- per object cap notes: the field may be stated in a source that was not read
- per object cap stated: the field may be stated in a source that was not read
- retention notes: the field may be stated in a source that was not read
Upstash Redis (Storage)
Storage- Free allowance
- 250 MB max data size on Free; 500K commands per month; 10 GB bandwidth/month
- Verdict
- fails: quotathe free allowance is too small to matter
- Cost
- free tier
- Identity
- anonymous?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- retention-clampedDELETED after 3 days
- Evidence
- reported5 sources; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | 250 MB max data size on Free; 500K commands per month; 10 GB bandwidth/month unit MB; metered on unstated |
|---|---|
| Price | none stated |
| Limits |
250 MB data; 10 MB max request size (LIVE-VERIFIED: a 20 MB SET returned 'ERR max request size exceeded. Limit: 10485760 bytes'); 100 MB max record size listed but the 10 MB request cap binds first; 10,000 max cmd/sec; 500K commands/month; 1 database |
| Identity | anonymous (inferred, not read) not published |
| Egress | Free up to 10 GB/month on the Free plan (then metered on paid). free allowance: 10 GB per month |
| Per-object cap | not stated |
| Retention | Free DBs minted anonymously are DELETED after 3 days unless claimed. (3 days) |
| Interface | rest, cli rest |
| Tooling | redis-cli over TLS, any Redis client, plus a body-style REST API (POST a JSON array command). Verified live: a free database can be minted with no signup via POST https://upstash.com/start-redis with an Idempotency-Key header. |
| Composes with | Free tier is 1 database per account (pricing table: 'Max databases | 1'). 250 MB x N accounts. The command quota, not storage, is the wall: 500K commands/month = 16,667/day, and each GET returns at most 10 MB (verified), so max read throughput is 16,667 x 10 MB = 167 GB/day — 3x short of 500 GB/day even with a mythical 250 MB dataset read 667 times a day. |
| Reliability | Works and is fast; the killer is the command meter. Every GET, SET, EXISTS, and even pipelined command counts. Operational commands (PING, AUTH, INFO, CONFIG, SELECT, COMMAND, RESET, QUIT) are explicitly not charged. Free DBs minted anonymously are DELETED after 3 days unless claimed. |
| Parsed numbers |
|
Evidence 5
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | upstash.com/pricing/redis | 'Free | $0/month | 250 MB | 10 GB' (Max Data / Max Bandwidth); FAQ: 'Free tier includes 250MB data size and 500K commands per month.'; 'Max databases | 1' |
| 2026-10-21 | upstash.com/start-redis | probe: POST (Idempotency-Key header) -> 200, credentials returned, 'Expires: 2026-10-24 (3 days from creation)' |
| 2026-10-21 | source not published | probe: SET of a 1,000,000-byte value -> {"result":"OK"}; GET -> 1,000,013 bytes returned; STRLEN -> 1000000; 9 MB and 10,000,000-byte SETs also OK; a 20 MB SET -> {"error":"ERR max request size exceeded. Limit: 10485760 bytes"} |
| 2026-10-21 | source not published | probe: INFO memory on the freshly minted free DB -> maxmemory:67108864 (64 MB), maxmemory_policy:noeviction — i.e. the anonymous/agent database is provisioned at 64 MB, well under the advertised 250 MB |
| 2026-10-21 | source not published | arithmetic: 500,000 commands/month / 30 = 16,667 commands/day; x 10 MB max request = 167 GB/day ceiling. At a realistic 1 KB per command it is 16.7 MB/day — 30,000x short of 500 GB/day. |
More fields 1
| dead end | {"failure_class": "egress","why": "250 MB max data size on Free; 500K commands per month; 10 GB bandwidth/month","retry_when": null,"first_recorded": "2026-10-21"} |
|---|
Unknown values 3
- per object cap notes: the field may be stated in a source that was not read
- per object cap stated: the field may be stated in a source that was not read
- retention notes: the field may be stated in a source that was not read
Upstash Vector
Storage- Free allowance
- 1 GB total data+metadata on Free; 10K daily queries; 200M vectors x dimensions
- Verdict
- fails: quotathe free allowance is too small to matter
- Cost
- free tier
- Identity
- email?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- per-object-cap1 GB cap
- Evidence
- reported1 source; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | 1 GB total data+metadata on Free; 10K daily queries; 200M vectors x dimensions unit GB; metered on unstated |
|---|---|
| Price | none stated |
| Limits |
1 GB total; 10K queries/day (resets daily); 1 MB max per vector; 48 KB max metadata per vector; 1,536 max dimensions; 100 namespaces; 1 index |
| Identity | email (placeholder) not published |
| Egress | Free (bandwidth price $0 on Free), but 1 GB of stored data makes it moot. |
| Per-object cap | not stated |
| Retention | not stated |
| Interface | rest rest |
| Tooling | REST API, Python/TypeScript/Go SDKs; vectors are float arrays with up to 48 KB of metadata per vector, 1 MB max data per vector |
| Composes with | 1 GB per database, 100 namespaces per index and 1 index on Free. Namespaces share the 1 GB, so they do not multiply. 500 GB needs 500 free accounts. |
| Reliability | Stable managed service; queries are semantically searched rather than key-addressed, so it is a poor fit for blob retrieval anyway — you would use a 1-dimension vector as a pure key-value hack, which still hits the 1 GB cap. |
| Parsed numbers |
|
Evidence 1
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | upstash.com/pricing/vector | Free: 'Max Total Data | 1 GB'; 'Daily query limit | 10K'; 'Max data per vector | 1 MB'; 'Max metadata per vector | 48 KB'; 'Max namespaces | 100' |
More fields 1
| dead end | {"failure_class": "quota","why": "1 GB total data+metadata on Free; 10K daily queries; 200M vectors x dimensions","retry_when": null,"first_recorded": "2026-10-21"} |
|---|
Unknown values 4
- per object cap notes: the field may be stated in a source that was not read
- per object cap stated: the field may be stated in a source that was not read
- retention notes: the field may be stated in a source that was not read
- retention stated: the field may be stated in a source that was not read
upstash kafka
Storage- Free allowance
- Discontinued. Deprecated 2024-09-11, shut down 2025-03-11.
- Verdict
- deadthe offer or the service no longer exists
- Cost
- no price stated
- Identity
- email?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- noneno named constraint binds
- Evidence
- reported2 sources; a third party said so
- Freshness
- checked 2026-10-21checked 2026-10-21 (inherited)
| Free tier | Discontinued. Deprecated 2024-09-11, shut down 2025-03-11. Do not plan around it; Upstash now points users at Workflow/QStash instead. unit none; metered on none |
|---|---|
| Price | none stated |
| Identity | email (placeholder) not published |
| Egress | not recorded |
| Interface | unknown |
| Tooling | not recorded |
| Parsed numbers |
|
Evidence 2
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | upstash.com/blog/workflow-kafka | the text of Free tier, above |
| 2026-10-21 | community.fly.io/t/deprecation-notice-for-upstash-kafka/2177 | cited as the basis of the rejection: Discontinued. Deprecated 2024-09-11, shut down 2025-03-11. Do not plan around it; Upstash now points users at Workflow/QStash instead. |
More fields 1
| dead end | {"failure_class": "dead-service","why": "Discontinued. Deprecated 2024-09-11, shut down 2025-03-11. Do not plan around it; Upstash now points users at Workflow/QStash instead.","retry_when": null,"first_recorded": "2026-10-21"} |
|---|
Unknown values 7
- chaining: no value was recorded for this field
- egress terms: no value was recorded for this field
- interface: the access interface was not established
- per object cap notes: no value was recorded for this field
- per object cap stated: no value was recorded for this field
- retention stated: no value was recorded for this field
- tooling: no value was recorded for this field