Deep dive into AWS pricing: Spot Instances, Reserved Instances, Savings Plans
A practitioner’s guide to choosing the right AWS compute pricing model for cost, flexibility and reliability. Includes examples, best practices, tools, and a step-by-step checklist to optimize your cloud bill.
1. Introduction
AWS pricing is a core skill for cloud engineers, FinOps practitioners, and engineers who want to keep cloud costs predictable. At the heart of AWS pricing is a simple philosophy: pay only for what you use. But AWS offers multiple ways to lower compute cost in exchange for varying levels of commitment and flexibility.
This guide explains the major compute pricing models you’ll encounter — On-Demand, Reserved Instances (RIs), Spot Instances, and Savings Plans — and shows where each model fits. We’ll also cover the essential AWS tools that make analysis and decisions practical (AWS Cost Explorer, Pricing Calculator, Budgets, Trusted Advisor, and Anomaly Detection).
Quick takeaways: use a mix. For unpredictable short-term workloads choose On-Demand; for predictable steady workloads use RIs or Savings Plans; for fault-tolerant, interruptible workloads, use Spot for huge savings. Use the AWS Pricing Calculator and Cost Explorer to model and verify.
2. AWS Pricing Models — Overview
Here are the compute pricing models we’ll cover:
- On-Demand Instances — pay hourly (or per-second) for compute without long-term commitment.
- Reserved Instances (RIs) — commit to 1 or 3 years for discounts (Standard, Convertible, Scheduled).
- Spot Instances — buy unused EC2 capacity at steep discounts with interruption risk.
- Savings Plans — commit to a $/hour spend for 1 or 3 years for compute discounts (Compute and EC2 Instance Savings Plans).
- For completeness: Dedicated Hosts and Capacity Reservations exist for compliance/certification workloads — we’ll mention them briefly below.
Quick comparison table
| Model | Commitment | Discount Range | Flexibility | Ideal use case |
|---|---|---|---|---|
| On-Demand | None | 0% | Very high | Unpredictable / dev & test |
| Reserved Instances (RIs) | 1–3 years | Up to ~72% | Lower (depends on RI type) | Steady baseline workloads |
| Savings Plans | 1–3 years | Up to ~72% | High (Compute SP most flexible) | Variable but predictable spend |
| Spot Instances | None | Up to ~90% | High (but interruptible) | Batch, analytics, ML training, CI/CD |
Sources: AWS documentation confirms Savings Plans and RIs can reach ~72% savings, and Spot savings can reach up to ~90% versus On-Demand.
3. On-Demand Instances (The default)
What they are
On-Demand instances are the simplest model: you launch EC2 (or pay Fargate/Lambda) and pay published hourly or per-second rates. There’s no long-term commitment — the cloud-native “rent what you need” model.
Advantages
- No upfront commitment or long-term contracts.
- Full flexibility to resize, change families, or terminate instantly.
- Great for development, testing, proofs-of-concept, and unpredictable loads.
Disadvantages
- Most expensive per-unit cost for steady-state workloads.
- Unpredictable bills if not monitored.
How to estimate On-Demand cost
Use the AWS pricing pages or the AWS Pricing Calculator to model hourly and monthly costs. The in-console AWS Pricing Calculator can import historical usage (if you have a billing account) and produce realistic forecasts and comparisons.
4. Reserved Instances (RIs) — explained
Definition
Reserved Instances are a billing discount applied to your account in return for committing to use a specific instance family, region, and tenancy for one or three years. RIs are not physical instances — they’re discounts applied to matching running instances.
Important facts: RIs can offer significant discounts (AWS documents up to ~72% vs On-Demand), but they require commitment and careful planning.
Types of RIs
- Standard RIs: Highest discounts, lowest flexibility. Best when you know instance family and region will remain stable.
- Convertible RIs: Slightly lower discount but let you exchange RIs for different families or operating systems (good for evolving workloads).
- Scheduled RIs: For predictable, recurring workloads at specific times (e.g., nightly or weekend jobs).
Payment options
You can pay: All Upfront, Partial Upfront, or No Upfront. All Upfront often provides the biggest effective savings but requires cash up front.
Savings potential
Expect savings up to ~72% compared to On-Demand for certain instances and long commitments (AWS publishes up to ~72% for RIs/Savings Plans). Use Cost Explorer RI reports to compare the effective hourly rate for your commitment.
Key considerations / risks
- Commitment risk: You’re locked into 1–3 years — changes in architecture or cloud providers can reduce ROI.
- Region & size limits: Standard RIs commonly apply to specific instance families and regions; ensure your RI matches your actual usage.
- Management overhead: RIs require tracking and occasionally exchanging or selling (in the RI marketplace) — Finance/FinOps coordination matters.
Best practices for RIs
- Use AWS Cost Explorer RI recommendations to find candidates for RIs.
- Pair RIs with Auto Scaling carefully — RIs apply as billing discounts to running instances that match the RI attributes.
- Buy Standard RIs for stable baselines; use Convertible RIs when you expect instances to change families.
- Consider the AWS Marketplace for buying/selling existing RIs if your needs change.
5. Spot Instances — for cost-driven flexibility
What are Spot Instances?
Spot Instances let you use AWS’s spare EC2 capacity at steep discounts — commonly cited as “up to ~90% off On-Demand.” Spot is ideal for workloads that can handle interruptions and restart gracefully.
How Spot pricing works
Spot prices reflect supply and demand for spare capacity. AWS sets Spot prices, and they adjust over time. You pay the Spot price for the instance while it’s running. Because Spot capacity can be reclaimed, AWS provides interruption notices (typically a two-minute warning) before stopping or terminating the instance.
Spot lifecycle
- Request Spot capacity (via console, API, Spot Fleet, or Spot Instances in Auto Scaling).
- If capacity is available at your price (or via capacity-based allocation), the instance launches.
- AWS may later interrupt the instance if capacity is needed; you receive a short notice to save state or migrate.
Advantages
- Enormous cost savings (often 50–90%).
- Can be used for large scale, low-cost compute for analytics, ML, HPC, or rendering.
Disadvantages
- No guaranteed availability — interruptions are possible.
- Architecture must be fault tolerant (stateless or checkpointed workloads).
Best practices using Spot
- Use Spot with Spot Fleets or EC2 Auto Scaling groups that mix Spot and On-Demand.
- Implement graceful shutdown and checkpointing when interruption notices arrive. AWS provides a two-minute warning to the instance metadata service.
- Prefer containerized workloads (ECS/EKS), Batch, EMR, or distributed systems that automatically recover.
- Use Spot Advisor and Spot Instance Advisor (AWS Console) to see frequency of interruptions and recommended instance pools.
Spot use cases
- Big data processing (Spark / Hadoop / EMR / Data pipelines)
- CI/CD runners and test automation
- Rendering and media processing
- Batch jobs and ML training (especially with checkpointing)
- Stateless worker fleets behind a load balancer
6. Savings Plans — a flexible pricing model
Definition
Savings Plans allow you to commit to a consistent $/hour of compute usage for 1 or 3 years in exchange for discounted rates applied to eligible usage. Savings Plans apply across EC2, AWS Fargate, and AWS Lambda (for Compute Savings Plans) or can be limited to instance families and regions (EC2 Instance Savings Plans).
Types of Savings Plans
- Compute Savings Plans: Most flexible — apply across instance families, sizes, AZs, OS, tenancy, and even Fargate/Lambda. Great when your architecture or instance mix may change.
- EC2 Instance Savings Plans: Tied to a specific instance family in a region but allow size and OS flexibility within that family for lower prices.
How Savings Plans differ from RIs
While both require 1- or 3-year commitments, Savings Plans are simpler to manage and more flexible because they apply to dollars of compute rather than a particular instance configuration. If you expect to change instance types or move workloads around AWS services, Savings Plans are often recommended. AWS documentation explicitly recommends Savings Plans as an easier and more flexible way to save compared to RIs for many customers.
Savings potential
Like RIs, Savings Plans can deliver up to ~72% savings vs On-Demand for the same commitment lengths. Use the AWS Cost Explorer to model and recommend Savings Plans that best match your historical usage.
Example scenario
If you run a variable fleet of web servers (mix of m/, c/, r- families) and containers that shift between EC2 and Fargate, a Compute Savings Plan can be ideal. Commit to a predictable $/hour that approximates your baseline compute and let the Savings Plan apply automatically as usage happens.
Best practices
- Start with Compute Savings Plans if your usage spans multiple instance families or includes Fargate/Lambda.
- Combine Savings Plans with Spot Instances for peak savings: Savings Plans cover baseline predictable spend; Spot covers additional compute with aggressive discounts.
- Use AWS Cost Explorer recommendations to determine an optimal $/hour commitment.
7. Comparing the models (deeper)
Let’s compare along several axes to aid decision making: cost, flexibility, risk, management burden, and ideal workload patterns.
Cost vs Risk
- On-Demand: Highest unit cost, lowest commitment risk.
- Spot: Lowest unit cost (up to ~90% off) but highest risk of interruption. Best when architecture tolerates restarts or state can be checkpointed.
- RIs / Savings Plans: Medium-low unit cost (up to ~72% off) with long-term commitment. Lower risk than Spot but requires forecasting.
Flexibility and management complexity
- On-Demand: simplest to manage.
- Savings Plans: more flexible than RIs and easier to operate once purchased.
- RIs: more granular control but needs active tracking of matches and possible exchange operations.
- Spot: requires architecture changes and operational tooling (Spot Fleets, Auto Scaling, checkpointing).
Suggested mixes by workload type
- Production API backends (steady): Savings Plan (Compute) or EC2 Instance Savings Plan + some On-Demand for flexibility.
- Analytics / batch jobs: Spot for most work + Savings Plan for scheduling systems and control plane.
- Short lived dev/test: On-Demand or Spot (if ephemeral) with budget alerts to avoid surprises.
- Highly regulated / dedicated hardware: Dedicated Hosts or Capacity Reservations (costly but required for compliance).
8. AWS cost management tools
To operate these models effectively, AWS provides a set of cost tools. Learn them — they are essential for FinOps.
AWS Cost Explorer
Cost Explorer lets you view, explore, and forecast costs. It also offers RI and Savings Plans recommendations. Use it to find your steady baseline and candidate instances for commitment. (See AWS docs for details.)
AWS Pricing Calculator
Pricing Calculator (public and in-console) helps estimate costs of new workloads or migration scenarios. The in-console version can import your existing usage, making it easier to model the effect of purchasing RIs or Savings Plans.
AWS Budgets
Use Budgets to set alerts for cost thresholds and forecasted spending. Budgets integrate with Cost Explorer and can send notifications to Slack/email/Teams via SNS.
AWS Cost Anomaly Detection
Leverage anomaly detection to spot sudden spikes (for example, a cluster misconfiguration causing unexpected On-Demand usage). Anomaly Detection integrates with Budgets and SNS so teams can react fast.
AWS Trusted Advisor
Trusted Advisor checks for idle or underutilized resources and provides checks for cost optimization, security, and performance. Use it as a regular health check for potential rightsizing.
9. Practical examples & worked numbers
Below are simplified calculations to illustrate tradeoffs. Use the AWS Pricing Calculator for precise numbers.
Scenario A — steady web API fleet
Assume a baseline of 10 x m5.large instances running 24×7. Rough approach:
- Calculate monthly On-Demand cost:
10 * (hourly_rate_m5.large) * 24 * 30 - Estimate Savings: a 3-year All Upfront RI or Savings Plan could reduce costs by up to ~60–72% depending on payment option and instance family.
- Recommendation: Purchase Savings Plan sized to cover the baseline dollars/hour; use On-Demand for burst capacity.
Scenario B — ML training bursts
For large GPU jobs that run intermittently and can be resumed from checkpoints, prefer Spot for the heavy lifting and consider Savings Plans (Compute) for control plane and smaller baseline servers.
How to run a quick ROI check
- Use Cost Explorer to determine last 12 months of hourly compute usage and identify consistent baseline (e.g., minimum 24-hour average).
- Model a Savings Plan that covers that baseline $/hour and run a what-if in Pricing Calculator.
- Compare On-Demand vs Savings Plan cost for that baseline to compute break-even and ROI.
10. Operations & governance: how to buy and manage commitments
Commitments change how your finance teams and cloud engineers coordinate. Consider these governance practices:
Tagging & cost allocation
Ensure resources are tagged consistently so Cost Explorer and budgets can allocate spend to teams and workloads. Good tagging is the difference between a manageable FinOps practice and chaos.
Ownership & approval
Define who can purchase RIs/Savings Plans (usually FinOps or central procurement) and ensure a documented approval workflow for multi-year commitments.
Automation
Automate alerts for unusual On-Demand spend (especially when your Savings Plan/RIs aren’t applying as expected). Use runbooks for common interruption/replacement flows (Spot interruptions, instance family changes).
Quarterly reviews
Review Cost Explorer recommendations quarterly. Migration of workloads or major architecture changes require reassessing existing RIs and Savings Plans and using Convertible RI exchanges or RI marketplace when appropriate.
11. Spot + Savings Plan = the most aggressive savings posture
For organizations willing to accept operational complexity, the most aggressive approach is:
- Buy Savings Plans sized to the predictable baseline to cover essential control plane and steady workloads.
- Run elastic, fault-tolerant workloads on Spot to handle scale and absorb the bulk of compute processing.
- Use On-Demand for small, critical services that require guaranteed availability.
This pattern is especially effective for analytics platforms, media rendering, distributed test farms, and large ML training pipelines.
12. Common mistakes & how to avoid them
- Buying too many RIs/Savings Plans too early: Model 6–12 months of usage first unless you have very stable workloads.
- Ignoring tagging: Without cost allocation tags, you can’t confidently attribute savings to teams.
- No interruption handling for Spot: Spot without graceful shutdown or checkpointing leads to job failures and data loss.
- Not using Cost Explorer recommendations: The console recommendations often show opportunities that are easy wins.
13. Checklist: Implement an AWS compute cost optimization plan
- Inventory your current compute usage with Cost Explorer (last 12 months).
- Identify stable baseline usage (hours/instance families) and spike patterns.
- Model Savings Plans vs RIs in Pricing Calculator for 1-year and 3-year terms.
- Introduce Spot where workloads are fault-tolerant; use Spot Fleets/Auto Scaling.
- Set budgets and anomaly detection alerts to catch unusual spend.
- Buy commitments gradually — start with conservative Savings Plans covering 60–80% of baseline.
- Quarterly review: reallocate commitments, exchange Convertible RIs if needed, or use RI marketplace.
14. Advanced topics (short notes)
Dedicated Hosts & Capacity Reservations
Use these for compliance or BYOL scenarios where you need physical host affinity. They are expensive but sometimes required for regulatory reasons.
Reserved Instance Marketplace
If your needs change, the RI marketplace can be used to sell your unused RIs (subject to marketplace liquidity) or buy used RIs from others.
Convertible RIs vs. Savings Plans
Convertible RIs are still useful in some scenarios, but Compute Savings Plans often provide similar flexibility with less administrative overhead. Evaluate both when you have complex migration plans.
15. Frequently asked questions (FAQ)
Q: Should I buy RIs or Savings Plans?
A: If your usage spans EC2 families, containers, and Lambda — start with Compute Savings Plans. If you run a very stable instance family and want the maximum discount for that family, evaluate EC2 Instance Savings Plans or Standard RIs. Always model both in Cost Explorer & Pricing Calculator.
Q: How much can I save with Spot?
A: Spot can save up to ~90% compared to On-Demand in some cases. The effective saving depends on instance type, region, and interruption frequency. Use the Spot Instance Advisor to evaluate interruption rates for your candidate instance types.
Q: Are Savings Plans applied automatically?
A: Yes — Savings Plans apply automatically to eligible usage in your account once purchased. The application logic prioritizes the usage that returns the biggest discount to you first (see AWS Savings Plans docs).
16. Real-world examples & case studies (short)
Many companies run a hybrid approach: baseline covered by Savings Plans, heavy batch/analytics moved to Spot, critical services left On-Demand, and governance by FinOps using Cost Explorer. The combination routinely yields 40–80% effective cost reductions versus naive On-Demand usage.
17. Summary & final recommendations
There’s no single “best” model — the right mix depends on workload predictability, tolerance for interruption, and organizational appetite for operational complexity. Rules of thumb:
- Use On-Demand for unpredictable, short, or experimental workloads.
- Use Savings Plans (Compute) as the default choice for flexible, predictable spend.
- Use Reserved Instances where you have stable, long-lived instance families and can manage the RI lifecycle.
- Use Spot aggressively for fault-tolerant, stateless, or checkpointable workloads.
- Always monitor with Cost Explorer, Pricing Calculator, Budgets, and Trusted Advisor.













Leave a Reply