ElastiCache pricing is a price per node hour by node type and engine, Valkey cheaper than Redis OSS and Memcached, or in serverless mode per GB-hour of stored data and per million ElastiCache Processing Units, plus per GB-month for backups, per node hour for extended support of old versions and per GB for the transfer of a Global Datastore; OpenSearch Service charges per instance hour by instance type, per GB-month of EBS storage with provisioned IOPS, per hour and GB-month for UltraWarm and cold storage, and in serverless mode per OpenSearch Compute Unit and hour plus per GB-month of managed storage. On the bill, the nodes that run around the clock dominate on both services, and on OpenSearch the storage that grows with the indexes until a retention rule limits it.
Pricing dimensions
Both services follow the pattern of a managed database: provisioned nodes per hour, storage per GB-month, a serverless variant that replaces both with consumption units, and reserved nodes as the purchase option. Every item carries its own usage type; on ElastiCache the engine sits in the price, on OpenSearch the version does not.
| Dimension | Unit | What drives it | Optional |
|---|---|---|---|
| ElastiCache node | Hour per node type and engine; Valkey a fifth below Redis OSS and Memcached | Every node of a cluster, primary and replica nodes alike | No in cluster mode |
| ElastiCache Serverless | GB-hour of stored data, 1 GB minimum (Valkey 100 MB), plus million ECPUs: one unit per KB transferred and per command | The cache's data volume and requests, with no node choice | Yes, instead of nodes |
| ElastiCache backups | GB-month of snapshot storage above the allowance of one snapshot per cluster | Retention period and manual snapshots | Yes |
| ElastiCache extended support | Hour per node, up to 80 percent of the node price in the first two years and more in the third | Nodes on a Redis OSS version past the end of standard support | Yes, through an upgrade to Valkey or a newer version |
| ElastiCache Global Datastore | GB replicated into the secondary region | Every replication across regions | Yes |
| OpenSearch instance | Hour per instance type, data and dedicated master nodes alike | Every node of the domain; or1 types bring storage of their own | No |
| OpenSearch EBS storage | GB-month per volume type plus IOPS-month above the gp3 baseline | The provisioned volume size per data node | No on EBS types |
| OpenSearch UltraWarm and cold storage | Hour per UltraWarm node plus GB-month of managed storage; cold storage GB-month only | Indexes moved into the warm or cold tier | Yes |
| OpenSearch Serverless | OCU-hour per second for indexing and search, plus GB-month of managed storage; OpenSearch Ingestion per OCU-hour | Collections with no node choice; the classic variant with a minimum capacity, the dev-test variant at half | Yes, instead of domains |
| Data transfer | Not charged within a cluster or domain; across zones and regions at EC2 rates for clients | Access from other zones | Yes (data transfer pricing) |
| Purchase option | Reserved nodes or Reserved Instances over one or three years on the node hour | Steady baseline | Yes (reserved capacity for managed services) |
On ElastiCache the node hour counts per node whether the node holds data or not, and a cluster with replicas in two zones pays every replica node in full; the engine sits in the price, and Valkey, the open-source fork, costs a fifth less than Redis OSS and Memcached on the same node in Frankfurt. Serverless replaces the node choice with two consumption units: GB-hours for the data, averaged hourly with a minimum of 1 GB per cache (100 MB on Valkey), and ECPUs for the work, one unit per kilobyte a command reads or writes, more for commands with higher CPU load. Extended support for Redis OSS versions past the end of standard support costs per node hour an amount close to the node price itself, and AWS names the move to Valkey as the way out.
On OpenSearch, storage comes on top of the instance price: EBS volumes per data node, provisioned as on RDS, with gp3 as the default and IOPS above the baseline separate; UltraWarm moves readable indexes to nodes with S3-backed storage that costs a fraction of EBS per GB-month, and cold storage files them without a node until they are brought back. Serverless measures capacity in OpenSearch Compute Units for indexing and search separately, billed per second; the new generation of collections has no minimum, the classic one holds standby capacity, which the dev-test variant halves. Data transfer between the nodes of a cluster is not charged on either service.
How it appears in your billing data
In the Cost and Usage Report the ElastiCache lines carry the product code AmazonElastiCache and lineItem/ResourceId the cluster's ARN; the usage type's prefix is the region code, EUC1 for Frankfurt. Nodes appear as EUC1-NodeUsage:cache.m7g.large, with the engine in product/cacheEngine, not in the usage type; serverless as GB-hours and ECPUs with lines of their own per engine, backups as EUC1-ElastiCache:BackupUsage or EUC1-BackupUsage:Redis per engine, extended support as EUC1-ExtendedSupportYr1_Yr2-NodeUsage:cache.m7g.large and EUC1-ExtendedSupportYr3-NodeUsage:cache.m7g.large beside the node line, and the Global Datastore as EUC1-ElastiCache-Out-Bytes:GlobalDatastore:Redis per GB. Hours under a reserved node appear as DiscountedUsage instead of Usage in lineItem/LineItemType.
OpenSearch lines carry the product code AmazonES, the service's old name, and the operation ESDomain; instances appear as EUC1-ESInstance:m7g.large and EUC1-ESInstance:ultrawarm1.medium, storage as EUC1-ES:GP3-Storage, EUC1-ES:GP3-PIOPS, EUC1-ES:PIOPS-Storage and EUC1-ES:PIOPS, UltraWarm storage as EUC1-StorageUsedInWarmByteHour or EUC1-ES:Managed-Storage, cold storage as EUC1-StorageUsedInS3ByteHour, the or1 types' own storage as EUC1-StorageUsedInHotByteHour. Serverless appears as EUC1-IndexingOCU, EUC1-SearchOCU and EUC1-ES:Managed-Storage, OpenSearch Ingestion as EUC1-IngestionOCU. What neither report delivers is the split per index, namespace or application: the resource is the cluster or domain, and attribution to teams runs through tags on them or through separate clusters. The report's structure is described in the AWS Cost and Usage Report. In the FOCUS export, ServiceName carries Amazon ElastiCache or Amazon OpenSearch Service and x_ServiceCode AmazonElastiCache or AmazonES; nodes, storage and consumption units are ChargeCategory Usage, hours under a reservation PricingCategory Committed (FOCUS columns).
Levers
Configuration: on ElastiCache the engine is the first lever, because Valkey makes the same node a fifth cheaper and ends extended support for old Redis versions; the node type the second, because caches usually need memory rather than CPU and r7g types are cheaper per GiB than m7g; the number of replicas the third, because every replica is a full node. On OpenSearch it is the instance count and the storage: Index State Management moves indexes by age to UltraWarm and cold storage and deletes them after the retention period, and a data node whose volume is half empty pays the volume in full. The general method is in database optimisation.
Purchase option: for a steady baseline, reserved nodes on ElastiCache and Reserved Instances on OpenSearch lower the node hour over one or three years, per node type and region; they do not cover storage, serverless or extended support (commitment strategy).
Architecture: serverless for caches and collections that vary by day or rest at night, nodes for steady load, because the consumption units exceed the node price under sustained load; UltraWarm and cold storage for logs that are only archived after days; a cache only where it actually replaces database access, because a replica set across two zones around the clock can cost more than the database it relieves (RDS and Aurora). The dimensions across all three providers are set side by side in managed databases.
Where it goes wrong
- Extended support doubles the cache. A cluster on a Redis OSS version past the end of standard support pays almost the node price again per node hour. Lines with
ExtendedSupportin the usage type name the clusters; the upgrade to Valkey ends them and lowers the node price on top. - The cache is larger than the database. An r7g cluster with two replicas in three zones costs around the clock, even when the hit ratio is low.
CacheHitRateandBytesUsedForCachein CloudWatch show whether the cache takes work away. - Serverless under sustained load. A serverless cache with steadily high throughput pays more per million ECPUs than a matching node per hour. The ECPU line against the price of a node of the same size shows the break-even.
- The indexes grow without a period. An OpenSearch domain without Index State Management keeps every index on EBS.
ES:GP3-Storagegrows every month; a policy that moves to UltraWarm and deletes after the period ends it. - Dedicated master nodes on a small domain. Three dedicated master nodes cost per hour like three data nodes and bring no storage. They belong to domains with many data nodes, not to test domains.
- The volume is too large for the data. A data node with 1 TB of gp3 that holds 200 GB pays 1 TB.
FreeStorageSpaceper node shows the overhang; smaller volumes or fewer nodes fix it. - The serverless collection holds standby capacity. A classic OpenSearch Serverless collection holds capacity for resilience, even without load. For development and test the dev-test variant halves it; for production the new generation without a minimum is the form.
Example
List prices in USD for Frankfurt (eu-central-1), read on 2026-10-21 from the AWS price list: an ElastiCache node cache.m7g.large (2 vCPU, 8 GiB) costs USD 0.188 per hour with Redis OSS or Memcached and USD 0.1504 with Valkey, a cache.r7g.large (2 vCPU, 16 GiB) USD 0.263 and USD 0.2104; extended support for Redis OSS on the m7g.large USD 0.15 per hour in the first two years and USD 0.301 in the third; serverless USD 0.151 per GB-hour and USD 0.0041 per million ECPUs with Redis OSS, USD 0.101 and USD 0.0027 with Valkey; backups USD 0.085 per GB-month. An OpenSearch instance m7g.large.search costs USD 0.162 per hour and r7g.large.search USD 0.214, UltraWarm ultrawarm1.medium.search USD 0.284 per hour plus USD 0.026 per GB-month, cold storage USD 0.026 per GB-month, gp3 storage USD 0.1452 per GB-month plus USD 0.0096 per IOPS-month above the baseline; serverless USD 0.339 per OCU-hour for indexing and search and USD 0.026 per GB-month of managed storage.
A Valkey cluster of one primary and two replica nodes cache.r7g.large costs 3 × 730 × 0.2104 = USD 460.78 a month; the same cluster with Redis OSS USD 575.97 and on a version in extended support 575.97 plus 3 × 730 × 0.21 = 459.90, USD 1,035.87 in all. A serverless cache with Valkey that holds 5 GB on average and consumes 20 billion ECPUs a month costs 5 × 730 × 0.101 = 368.65 plus 20,000 × 0.0027 = 54.00, USD 422.65 in all. An OpenSearch domain with three data nodes r7g.large.search and 500 GB of gp3 each costs 3 × 730 × 0.214 = 468.66 plus 1,500 × 0.1452 = 217.80, USD 686.46 in all; if 1 TB of the indexes is moved to UltraWarm on one ultrawarm1.medium.search, 207.32 plus 26.62 = USD 233.94 come on top while 1 TB of gp3 at USD 148.68 falls away. The figures show that Valkey saves a fifth and extended support almost doubles the cluster, that serverless at 5 GB and moderate load sits below a three-node cluster, and that UltraWarm pays off only once the UltraWarm node carries several TB.
Sources
Read on 2026-10-21. Prices: Amazon ElastiCache pricing, Amazon OpenSearch Service pricing, AWS Price List, offer AmazonElastiCache for eu-central-1, offer AmazonES. Billing data: Cost and Usage Report columns: lineItem, FOCUS 1.0 with AWS columns.