# Amazon ElastiCache vs Upstash Redis

Canonical: https://inetgeek.com/compare/amazon-elasticache-vs-upstash-redis/

Every value below is read from Amazon ElastiCache's and Upstash Redis's own documentation. See https://inetgeek.com/methodology/ for how.

## At a glance

| Criterion | Amazon ElastiCache | Upstash Redis |
| --- | --- | --- |
| Free tier | Yes | Yes |
| Entry paid plan | On-demand example: cache.r7g.large at $0.1752/hour. Actual entry price depends on node size and engine chosen. | $0.20 per 100,000 commands on Pay as You Go, with up to 100 GB data. Fixed monthly plans are also offered. |
| Pricing model | Three models: on-demand (hourly per node), serverless (billed on GB-hours of data storage plus ECPUs consumed), or Database Savings Plans for committed use. | Command-based billing on Pay as You Go ($0.20 per 100K commands); Fixed plans offer flat monthly rates instead. |
| Data persistence | Durable on Valkey 9.0+: data is stored persistently. Synchronous writes cost an 18% premium; asynchronous writes carry no additional cost. Redis OSS and Memcached engines are not documented as persistent here. | Durable — data stays persistent in the cloud provider's block storage for durability and high availability, not an in-memory-only cache. |
| Multi-region replication | Global Datastore provides managed, secure cross-region replication, with outbound cross-region traffic billed at $0.02/GiB. | Supported on Fixed and Enterprise tiers. Each additional read region adds $5 to the Fixed 250MB tier's monthly cost, scaling upward with plan size. |

## Where they differ

### Entry paid plan

- Amazon ElastiCache: On-demand example: cache.r7g.large at $0.1752/hour. Actual entry price depends on node size and engine chosen. ([source](https://aws.amazon.com/elasticache/pricing/))
- Upstash Redis: $0.20 per 100,000 commands on Pay as You Go, with up to 100 GB data. Fixed monthly plans are also offered. ([source](https://upstash.com/pricing))

### Pricing model

- Amazon ElastiCache: Three models: on-demand (hourly per node), serverless (billed on GB-hours of data storage plus ECPUs consumed), or Database Savings Plans for committed use. ([source](https://aws.amazon.com/elasticache/pricing/))
- Upstash Redis: Command-based billing on Pay as You Go ($0.20 per 100K commands); Fixed plans offer flat monthly rates instead. ([source](https://upstash.com/pricing))

### Data persistence

- Amazon ElastiCache: Durable on Valkey 9.0+: data is stored persistently. Synchronous writes cost an 18% premium; asynchronous writes carry no additional cost. Redis OSS and Memcached engines are not documented as persistent here. ([source](https://aws.amazon.com/elasticache/pricing/))
- Upstash Redis: Durable — data stays persistent in the cloud provider's block storage for durability and high availability, not an in-memory-only cache. ([source](https://upstash.com/pricing))

### Multi-region replication

- Amazon ElastiCache: Global Datastore provides managed, secure cross-region replication, with outbound cross-region traffic billed at $0.02/GiB. ([source](https://aws.amazon.com/elasticache/pricing/))
- Upstash Redis: Supported on Fixed and Enterprise tiers. Each additional read region adds $5 to the Fixed 250MB tier's monthly cost, scaling upward with plan size. ([source](https://upstash.com/pricing))

## Which should you choose?

Pick Amazon ElastiCache if Teams already on AWS that want engine choice (Valkey, Memcached or Redis OSS) under one billing model, or that specifically need Valkey's newer durable-persistence option.

Pick Upstash Redis if Serverless and edge apps with spiky or low-baseline traffic — per-command billing means an idle app costs close to nothing, and the free tier covers real prototyping.

Consider something else: Amazon ElastiCache — AWS isn't the target cloud, or the free-tier eligibility window matters — it's restricted to accounts that signed up for AWS Free Tier before July 15, 2025.

Consider something else: Upstash Redis — Traffic is large and steady rather than spiky — a flat-rate Redis plan is usually cheaper than metered commands once volume is predictable.

## Documented by only one

- Max dataset size, entry plan: Upstash Redis: Up to 100 GB on Pay as You Go. Fixed plans range from 250 MB to 500 GB; Enterprise supports up to 10 TB.

## Questions this comparison answers

**Entry paid plan: Amazon ElastiCache or Upstash Redis?**

Amazon ElastiCache: On-demand example: cache.r7g.large at $0.1752/hour. Actual entry price depends on node size and engine chosen.
Upstash Redis: $0.20 per 100,000 commands on Pay as You Go, with up to 100 GB data. Fixed monthly plans are also offered.

**Should I choose Amazon ElastiCache or Upstash Redis?**

Pick Amazon ElastiCache if Teams already on AWS that want engine choice (Valkey, Memcached or Redis OSS) under one billing model, or that specifically need Valkey's newer durable-persistence option.
Pick Upstash Redis if Serverless and edge apps with spiky or low-baseline traffic — per-command billing means an idle app costs close to nothing, and the free tier covers real prototyping.
