AWS OpenSearch Pricing Explained: What You Need To Know
.png)
Introduction
AWS OpenSearch Service is Amazon’s managed search and analytics engine, built on the open-source fork of Elasticsearch. It offers flexible pricing models so you pay only for the resources you use. However, the wide range of options (compute nodes, storage tiers, data transfer, etc.) can make cost calculations complex. In this guide, we’ll explain all aspects of AWS OpenSearch pricing, from on-demand and reserved instances to the newer serverless pricing model, and show example workload scenarios using the AWS OpenSearch pricing calculator. We will also highlight key pricing factors (instance types, storage, ingestion, availability zones, etc.) and briefly compare OpenSearch pricing with Elasticsearch.
Region Note – All pricing examples in this article use rates for us-west-2 (Oregon) and us-east-1 (N. Virginia). Pricing will differ slightly in other AWS regions, so always run your estimate in the AWS OpenSearch pricing calculator.
Key Pricing Factors
AWS OpenSearch pricing depends on several factors that together determine your bill:
- Instance type and count: Each data or cluster node is an EC2 instance with a specific hourly rate. Larger or specialized instance families (memory-optimized, storage-optimized) cost more per hour.
- Instance hours: You pay for each hour (or partial hour) an instance is running in your domain. Partial hours are billed as full hours.
- Availability Zones (AZs): Multi-AZ deployments (with standby nodes) incur no additional charge beyond the instance hours, as Amazon OpenSearch Service does not charge extra for high availability.
- Storage type and size: You pay for the EBS volumes attached to your nodes. General Purpose SSD (gp2/gp3), Provisioned IOPS SSD (io1/io2), and magnetic volumes have different per-GB rates. For example, in a sample scenario, 35 GB of GP2 storage costs ~$4.73/month.
- Provisioned IOPS: If you use Provisioned IOPS SSD, you pay for the IOPS throughput you reserve per month, regardless of actual I/O usage.
- Data storage tier: Data can also reside in UltraWarm or cold storage tiers at a lower cost. UltraWarm costs (e.g. $0.024 per GB-month) are lower than standard EBS, and cold storage is even cheaper (archived on S3).
- Data transfer: Standard AWS data transfer charges apply for data in and out of your domain (e.g. cross-region or Internet transfers). Intra-domain node communication and snapshot retrieval are free.
- Ingestion and Direct Query: AWS offers OpenSearch Ingestion and Direct Query, which are billed in OpenSearch Compute Units (OCUs) for the compute needed. Each OCU represents a bundle of CPU, memory, and networking.
- OpenSearch Serverless: In serverless mode, you pay separately for indexing OCUs, search OCUs, and storage (on S3).
- Version support: If you run an older engine version beyond its standard support, a small extended-support fee (per Normalized Instance Hour) applies (e.g. ~$0.0065 per NIH in us-east-1 ).
Each of these factors can vary by region and needs to be considered when estimating costs.
Free Tier
If you’re just kicking the tires, Amazon OpenSearch Service is included in the AWS Free Tier:
- Compute – Up to 750 instance-hours per month on either a t2.small.search or t3.small.search node (single-AZ).
- Storage – 10 GB per month of optional EBS storage (Magnetic or General Purpose SSD).
- Duration – The offer is permanent for new accounts’ first 12 months; after that (or if you exceed the limits), normal OpenSearch Service rates apply.
What does 750 hours mean in practice? One t3.small.search node can run nonstop all month under the Free Tier, or three such nodes can run for roughly ten days before you start paying. Because the allowance is instance-hour based, any additional nodes—stand-by replicas, dedicated masters, or nodes in a multi-AZ deployment—quickly consume the quota. Once you cross the 750-hour or 10 GB thresholds, AWS bills only the overage at the standard on-demand rates, so you can experiment safely and still keep costs predictable.
On-Demand vs Reserved Instances

The simplest pricing model is On-Demand Instances. You launch any supported instance types (data nodes, dedicated master nodes, etc.) and pay the published hourly rate while they run. For example, an r6g.xlarge.search node might cost $0.335/hour, while a c6g.large.search master will cost you $0.113/hour. You can add storage (EBS) to each node, incurring additional per-GB-month charges (e.g. GP2 at ~$0.135/GB in us-east-1, as in the example). Under this model, you pay only for what you use, with no setup fees.
To reduce costs, Amazon OpenSearch Service offers Reserved Instances (RIs). With RIs you commit to a one- or three-year term and get a lower hourly rate. RIs are identical in use to On-Demand instances; the difference is purely in billing. AWS provides three payment options for RIs:
- No Upfront (NURI): Pay nothing upfront, commit to pay monthly. Offers ~31% savings (1-year) or ~48% (3-year) vs on-demand for most instance types.
- Partial Upfront (PURI): Pay a portion upfront, plus lower hourly fees. Offers ~33% savings (1-year) or ~50% (3-year) for many types.
- All Upfront (AURI): Pay the entire cost upfront, with no hourly charges. Offers ~35% (1-year) or ~52% (3-year) savings.
(Note: Savings rates vary by instance family. For example, T3.medium RIs offer about 18–32% savings over on-demand.) When you purchase an RI, you are charged for it whether or not the instance is running. The effective hourly price is the total RI cost amortized over its term. RIs are specific to each AWS region. To benefit, simply apply the RI to existing or new domains in that region.
AWS OpenSearch Serverless Pricing

AWS OpenSearch Service also offers a Serverless deployment mode. In serverless mode, you don’t manage nodes directly; instead you pay for the resources used by your search workloads. Compute capacity is measured in OpenSearch Compute Units (OCUs). One OCU equals a bundle of 6 GB RAM, CPU, and local GP3 storage for indexing or querying. OpenSearch Serverless bills compute (OCU-hours) and storage (GB-month) separately.
- Compute (OCUs): You see billing entries for indexing OCUs and for search OCUs. For example, a minimal always-on collection uses at least 2 OCUs (0.5 indexing + 0.5 search times 2 for high availability). OCUs are charged per hour (with per-second granularity) at the current OCU rate (e.g. $0.24/OCU-hour in us-east-1). If you run in dev/test mode (no standby nodes), you pay as little as 0.5 indexing OCU + 0.5 search OCU.
- Storage: Data is stored on S3 via Amazon’s managed storage. Storage cost is around $0.02/GB-month for serverless (for both index storage and OpenSearch Serverless managed storage). For example, ingesting 1440 GB/month costs about $29 in storage.
- Minimums: The first collection in an account incurs a minimum 2 OCU allocation (1 indexing + 1 search). Additional collections share OCUs if using the same KMS key.
- Examples: To illustrate, imagine running 2 OCU-hours of queries per day via Direct Query (serverless). At $0.24/OCU-hour, 2 * 0.24 * 24 = $11.52 per day in compute charges. In another example, building a dashboard with 1440 GB ingestion uses 1 OCU indexing and 1 OCU query (both running 24×7), and $0.02/GB storage. That totals roughly $384/month (1×730×0.24 for indexing, same for query, plus $29 storage).
AWS OpenSearch serverless pricing means you only pay for the OCUs (compute) and GB-month of storage consumed by your workload. This model can be cost-effective for variable workloads or dashboards where you don’t want to manage cluster sizes.
Other Pricing Options: Ingestion, Direct Query, UltraWarm & Cold Storage, and Extended Support
Beyond core compute and storage, AWS offers several related services and tiers with distinct pricing:
- OpenSearch Ingestion: This is a managed data pipeline service. You pay for the OCUs (OpenSearch Compute Units) needed to ingest and transform data. One ingestion OCU = 15 GB RAM + 2 vCPU. You can scale OCUs per pipeline and even pause pipelines (no charge when paused).
- OpenSearch Direct Query: This lets you query data in S3 or other services via OpenSearch. It is also billed in OCUs (2 vCPU + 8 GiB RAM per OCU). Charges accrue when queries run or indexes are updated. (As with serverless, you can set a max OCU budget to limit costs.) See the AWS documentation for current OCU rates.
- UltraWarm Storage: A warm tier for older data. You add dedicated UltraWarm nodes (e.g. ultrawarm1.medium.search) that use local, cached storage backed by S3. UltraWarm storage is cheap – about $0.024 per GB-month (as of writing).
- Cold Storage (Frozen Indices): The cold tier (using OpenSearch cold storage) lets you offload infrequently accessed shards to S3. You pay even less for storage (managed S3) and only incur compute fees when you query that data. AWS documentation notes cold storage is the “lowest-cost” tier for long-term retention.
- Instance Storage (OR1): Some instance types (e.g. or1.xlarge.search) are optimized for OpenSearch and can use remote indices in S3. In that example (Pricing Example 4), the instance cost was $0.418/hour, and synchronous writes to its S3-based remote store were charged at $0.024/GB-month (so 500 GB * 3 nodes = 1500 GB cost $36).
- Data Transfer and Snapshots: OpenSearch automated snapshots are stored in S3 (free 14-day retention). Restoring or accessing snapshots in S3 uses standard S3 data and transfer rates . VPC/Log integrations (CloudWatch Logs, Security Lake) may incur their own data transfer fees.
- Extended Support: If you continue running an OpenSearch or old Elasticsearch engine version beyond its standard support life, AWS charges an Extended Support fee per normalized instance-hour. For example, operating on an extended-support version adds ~$0.0065 per hour (normalized) in US East (N. Virginia).
Using the AWS OpenSearch Pricing Calculator

Estimating your monthly cost can be made easier with the AWS Pricing Calculator. AWS provides a dedicated calculator for OpenSearch Service where you input your domain configuration (region, instance types/count, storage sizes, EBS types, UltraWarm nodes, etc.) and it outputs an estimated bill. This is handy for comparing scenarios (e.g. different instance families or reserved vs on-demand) and viewing a breakdown by component. The calculator supports both traditional and serverless modes. (See the link on the official pricing page or visit the AWS Pricing Calculator and choose Amazon OpenSearch Service.)
Example calculation steps (conceptual):
- Select region and add instance types (e.g. 3× m6g.large.search for data nodes, 2× c6g.large.search for master nodes).
- Specify number of hours (e.g. 730 for full month).
- Add storage (e.g. 500 GB GP3 per data node).
- Add any additional services (UltraWarm nodes, indexing/data transfer).
- Review estimated cost per month for each line item (instances, storage, IOPS, etc.).
This process mirrors how AWS bills you (instances × hours, GB storage × month, etc.). For example, in Pricing Example 2 below, 5,840 instance-hours across various types cost $1,328.60, plus $202.50 for 1,500 GB of GP2 storage and $73.73 for 3 TB UltraWarm storage.
Example Workload Scenarios
Let’s walk through some sample scenarios to illustrate pricing.
- Example 1: Free Tier Testing
- You launch a small test domain (US-East) with 3 × t3.small.search instances, each with 15 GB gp2 storage . AWS Free Tier includes 750 hours/month of t2.small or t3.small and 10 GB EBS storage . In a 730-hour month, your 3 nodes use 2,190 hours. Subtracting the 750 free hours yields 1,440 billable hours. At $0.036/hour each, that’s ~$51.84 for compute . Your nodes have 45 GB total storage, minus 10 GB free = 35 GB chargeable. At $0.135/GB, that’s ~$4.73 storage. Total ≈ $56.57/month . This highlights how the Free Tier can offset early costs (see Table in Example 1).
- Example 2: Production Domain with UltraWarm
- A production domain in US-East uses 3 × r6g.xlarge.search data nodes (500 GB gp2 each), 3 × c6g.large.search dedicated master nodes, and 2 × ultrawarm1.medium.search UltraWarm nodes (1.5 TB each). Over 730 hours, that’s 5,840 node-hours. Instance costs: r6g.xlarge at $0.335/hr (3 nodes) = $733.65; c6g.large at $0.113/hr (3 nodes) = $247.47; ultrawarm1.medium at $0.238/hr (2 nodes) = $347.48. Total instance cost = $1,328.60. Storage: 3×500 GB = 1,500 GB gp2 at $0.135 = $202.50; UltraWarm storage 3 TB at $0.024 = $73.73. Total monthly cost ≈ $1,604.83. (This assumes on-demand pricing; using 3-year All-Upfront RIs could reduce the compute cost by ~50% or more.)
- Example 3: Multi-AZ Standby
- Multi-AZ domains include a hot standby. Crucially, AWS does not double-charge for standby nodes. For instance, adding a standby copy in AZ doesn’t change the billed instance-hours. In a well-architected 3-node setup with standby, your bill remains the same as with three nodes (only additional nodes for HA). Note: If your original cluster manager was undersized, enabling Multi-AZ might require larger master node types, which would raise cost (see AWS documentation on best practices). But AWS explicitly does not charge an extra per-hour fee for the Multi-AZ feature itself.
- Example 4: OR1 Remote Store
- Using the newest OR1 family (for offloading data to S3), suppose you have 3 × or1.xlarge.search data nodes (500 GB gp2 each) and 3 × c6g.large.search master nodes, plus 3 × ultrawarm1.medium.search UltraWarm nodes. Over a 720-hour month, instance hours = 3×or1.xlarge + 3×c6g.large + 3×ultrawarm1.medium = $902.88 + $244.08 + $514.08 = $1,661.04. Storage: 3×500 GB gp2 = 1,500 GB at GP2 rates ($0.122/GB in this example) = $183.00. OR1 nodes use S3 for durable index, so 1,500 GB remote store at $0.024/GB = $36.00. UltraWarm storage (3 TB) = $73.73 . Total ≈ $1,953.73. This shows how remote S3 storage and UltraWarm combine; the storage costs are relatively small.
- Example 5: Direct Query on S3
- With OpenSearch Direct Query, suppose you run queries that consume 2 OCU-hours in total. At $0.24/OCU-hour, 2 OCU-hours cost $0.48/hour. Running continuously over 24 hours costs $11.52 per day. (In practice, you only pay during queries or indexing, not idle time.)
- Example 6: CloudWatch Logs Dashboard (Serverless)In a typical log analytics scenario, suppose you ingest 1,440 GB of CloudWatch logs monthly. Using AWS-provided templates, your cost might break down as follows:
- Direct Query: 0.5 OCU for queries (~$3/month).
- Indexing serverless: 1 OCU * 730 hours * $0.24 = $176.
- Serverless storage: 1440 GB * $0.02 = $29.
- Search serverless: 1 OCU * 730 * $0.24 = $176.
- Total ≈ $384/month on top of any CloudWatch ingestion costs. This demonstrates how serverless OpenSearch charges (OCU and storage) can be calculated from your data volume and query frequency.
These examples illustrate how to use AWS-provided numbers (from the pricing page) to compute monthly costs. You can replicate similar calculations with your own workload profile to estimate expenses.
Looking to go beyond pricing? If you want a deeper dive into how OpenSearch actually works under the hood, check out our full walkthrough in this companion blog post.
Optimizing Costs and Final Thoughts
To optimize your AWS OpenSearch costs, consider the following strategies:
- Right-size instances: Choose instance families suited to your workload. Memory-heavy queries use memory-optimized nodes; write-heavy workloads use storage-optimized. Use Graviton2 (ARM) instances where supported for lower hourly rates.
- Leverage Reserved/Spot: For long-running production clusters, purchase RIs (or Savings Plans) to cut 30–50% off on-demand costs. For non-critical workloads, consider Spot Instances (with appropriate redundancy) for deeper discounts (note: ensure cluster can handle potential interruptions).
- Tune storage: Use GP3 over GP2 for cheaper volumes, and provision IOPS only if needed. Move older data to UltraWarm or cold storage to reduce storage fees.
- Monitor usage: Watch your data ingestion and query rates. Right-size shards/replicas to avoid over-provisioning. Remember that standby nodes in Multi-AZ cost no extra, so enable them for resilience without worrying about doubling the bill.
- Use Serverless where it fits: For unpredictable or lightly-used workloads (e.g. ad-hoc queries, small dashboards), serverless OpenSearch can be more cost-effective since you pay only when queries/indexing occur.
- Utilize the pricing calculator: Always validate your architecture with the AWS OpenSearch pricing calculator to get an estimate, and compare several scenarios.
AWS provides detailed pricing information for every component on the official Amazon OpenSearch Service pricing page. Consulting those figures (and using the calculator) will ensure you understand AWS OpenSearch pricing for your particular needs.
By thoroughly accounting for instance types, usage patterns, storage tiers, and optional services (like ingestion or direct query), you can demystify your OpenSearch bill and make informed decisions to balance performance and cost. With careful planning, you can harness the power of AWS OpenSearch Service effectively while keeping costs under control.
Monitor Your AWS OpenSearch Spend with Cloudchipr

Setting up AWS OpenSearch is only the beginning—actively managing cloud spend is vital to maintaining budget control. Cloudchipr offers an intuitive platform that delivers multi‑cloud cost visibility, helping you eliminate waste and optimize resources across AWS, Azure, and GCP.
Key Features of Cloudchipr
Automated Resource Management:
Easily identify and eliminate idle or underused resources with no-code automation workflows. This ensures you minimize unnecessary spending while keeping your cloud environment efficient.
Receive actionable, data-backed advice on the best instance sizes, storage setups, and compute resources. This enables you to achieve optimal performance without exceeding your budget.
Keep track of your Reserved Instances and Savings Plans to maximize their use.
Monitor real-time usage and performance metrics across AWS, Azure, and GCP. Quickly identify inefficiencies and make proactive adjustments, enhancing your infrastructure.
Take advantage of Cloudchipr’s on-demand, certified DevOps team that eliminates the hiring hassles and off-boarding worries. This service provides accelerated Day 1 setup through infrastructure as code, automated deployment pipelines, and robust monitoring. On Day 2, it ensures continuous operation with 24/7 support, proactive incident management, and tailored solutions to suit your organization’s unique needs. Integrating this service means you get the expertise needed to optimize not only your cloud costs but also your overall operational agility and resilience.
Experience the advantages of integrated multi-cloud management and proactive cost optimization by signing up for a 14-day free trial today, no hidden charges, no commitments.