Posted on Mar 22, 2026 · Updated Mar 22, 2026 · 11 min read
Reserved vs Spot vs On-Demand Instances: When to Use Each (2026)
Cloud compute pricing isn't one-size-fits-all, and picking the wrong purchasing model can inflate your bill by 60-90%. Reserved instances save up to 72% compared to on-demand rates, according to AWS EC2 Reserved Instance pricing. Spot instances go even deeper, offering up to 90% discounts. But each model carries trade-offs that matter.
This guide breaks down reserved, spot, and on-demand instances across AWS, Azure, and Google Cloud. We've included real pricing comparisons, risk assessments, and a decision framework so you can match each workload to the right purchasing model. No guesswork, just numbers and rules.
TL;DR
Use reserved instances for steady-state workloads (saves 30-72%). Use spot for fault-tolerant batch jobs (saves 60-90%). Use on-demand for unpredictable or short-lived workloads. Most teams waste 27% of cloud spend (Flexera, 2025) by defaulting to on-demand when reserved or spot would work fine.
Table of contents
Reserved vs spot vs on-demand at a glance
Compute typically accounts for 60-70% of a small team's cloud bill, according to Flexera's 2025 State of the Cloud report. Choosing the right purchasing model for that compute is the single highest-impact cost decision you'll make. Here's how the three models compare across providers.
| Feature | Reserved | Spot / Preemptible | On-Demand |
|---|---|---|---|
| Discount vs on-demand | 30-72% | 60-90% | 0% (baseline) |
| Commitment | 1 or 3 years | None | None |
| Interruption risk | None | High (2 min notice on AWS) | None |
| Best for | Steady-state production | Batch, CI/CD, stateless | Dev, testing, spikes |
| AWS name | Reserved Instances / Savings Plans | Spot Instances | On-Demand |
| Azure name | Reserved VM Instances | Spot VMs | Pay-as-you-go |
| GCP name | Committed Use Discounts | Preemptible / Spot VMs | On-Demand |
The table reveals a clear pattern. You're trading flexibility for savings. Reserved instances lock you in but guarantee capacity and pricing. Spot gives the deepest discounts but can vanish mid-task. On-demand costs the most yet offers total freedom. Most teams should use all three.
Want to see how these pricing models affect your specific workload? Run the numbers in our cloud cost calculator to compare reserved, spot, and on-demand costs side by side.
What are reserved instances and when should you use them?
Reserved instances (RIs) deliver the most predictable savings for steady workloads. AWS Reserved Instances save up to 72% on a 3-year all-upfront commitment, according to AWS EC2 pricing documentation. Azure and GCP offer similar discounts through their own reservation programs. The catch: you're committing to a specific instance family, region, and term length.
For workloads that remain consistently utilized year-round, it's also worth comparing reserved cloud instances against dedicated infrastructure. Experienced cloud hosting providers like Atlantic.Net offer dedicated servers and private cloud solutions that can be more cost-effective for predictable, always-on workloads where resource requirements are unlikely to fluctuate significantly.
How reserved pricing works across providers
Each cloud provider structures reservations differently. AWS offers traditional Reserved Instances and the newer Savings Plans, which provide more flexibility across instance families. Azure calls them Reserved VM Instances. GCP uses Committed Use Discounts (CUDs) that apply to vCPU and memory rather than specific machine types.
| Provider | 1-Year Savings | 3-Year Savings | Flexibility |
|---|---|---|---|
| AWS (Savings Plans) | Up to 40% | Up to 72% | Applies across instance families |
| Azure (Reservations) | Up to 40% | Up to 72% | Instance-size flexible within family |
| GCP (CUDs) | Up to 37% | Up to 55% | Applies to vCPU/memory, not machine type |
When reserved instances make sense
Reserve capacity when you've got a production workload that runs 24/7 and won't change instance families soon. Databases are the classic example. A team running a db.r6g.xlarge RDS instance on-demand pays roughly $876/month. With a 1-year all-upfront RI, that drops to about $548/month -- a 37% savings (AWS RDS pricing).
Don't reserve everything on day one, though. Start by identifying instances with consistent utilization above 70% over the past 30-60 days. These are your reservation candidates. Anything with variable usage belongs in on-demand or spot.
Common reserved instance mistakes
The biggest mistake teams make? Over-committing. You buy a 3-year reservation, then your architecture changes six months in. Now you're paying for capacity you don't use. AWS lets you sell unused RIs on the Reserved Instance Marketplace, but Azure and GCP don't offer a secondary market.
Another pitfall: ignoring Savings Plans on AWS. They're almost always better than traditional RIs now because they apply across instance families and even across services (EC2, Fargate, Lambda). If you're still buying standard RIs on AWS, you're leaving flexibility on the table. It's also worth staying current on how AWS adjusts its pricing tiers — see our AWS pricing changes in 2026 for the latest updates that affect Reserved Instance and Savings Plan calculations.
For a deeper comparison of AWS and Azure base pricing before discounts, see our AWS vs Azure pricing comparison.
How do spot instances work and what are the risks?
Spot instances offer the deepest discounts in cloud computing -- up to 90% off on-demand prices on AWS, according to AWS Spot Instance documentation. The trade-off is stark: the cloud provider can reclaim your instance with as little as two minutes' notice. That constraint shapes everything about how you use them.
How spot pricing differs across providers
AWS Spot Instances use market-based pricing that fluctuates with supply and demand. You set a maximum price, and you keep the instance as long as spot price stays below your bid. Average spot savings land around 60-70% for popular instance types, with less common types occasionally hitting 90%.
Azure Spot VMs work similarly, with discounts up to 90% (Azure Spot Advisor). Google Cloud's Spot VMs (formerly Preemptible VMs) offer 60-91% discounts but have a maximum lifetime of 24 hours. GCP can terminate them with just 30 seconds' notice (Google Cloud Spot VM docs).
What workloads belong on spot instances?
Only workloads that can handle sudden interruption belong on spot. That's not as limiting as it sounds. CI/CD pipelines, batch data processing, video encoding, machine learning training with checkpointing, and stateless web workers behind a load balancer all work well. The key question: if this instance disappears right now, does anything break permanently?
If the answer is no, spot is probably your best option. We've seen teams cut CI/CD infrastructure costs by 60-70% by moving build runners to spot instances. The occasional interrupted build costs less than the on-demand premium you'd pay for uninterruptible capacity.
Spot instance interruption rates
Interruption frequency varies wildly by instance type and region. AWS publishes a Spot Instance Advisor showing historical interruption rates. Many popular instance types see fewer than 5% interruptions. Less popular types in high-demand regions can hit 20% or more.
To minimize disruption, diversify across multiple instance types and availability zones. AWS Spot Fleet and EC2 Auto Scaling groups make this straightforward. Request capacity from 10-15 instance types instead of a single one, and let the system pick the cheapest available option.
Many teams overprovision spot instances out of fear of interruption, which defeats the purpose. For more on how overprovisioning silently inflates bills, read our guide to cloud waste and overprovisioning. Teams that have combined spot adoption with rightsizing and reserved baselines have documented paths to cut cloud bills by 40% or more.
When does on-demand pricing actually make sense?
On-demand is the most expensive pricing model, but 27% of cloud spend goes to waste anyway, according to Flexera's 2025 State of the Cloud report. The irony? Much of that waste comes from teams paying on-demand rates for workloads that should be reserved. Still, on-demand has legitimate use cases where the premium is worth it.
Legitimate on-demand use cases
On-demand makes sense in three scenarios. First, new workloads where you haven't established a usage baseline yet. Run on-demand for 30-60 days, analyze utilization patterns, then commit. Second, genuinely unpredictable traffic spikes that exceed your reserved capacity. Third, short-lived development and testing environments that spin up and down frequently.
Here's the math that makes it clear. An m6i.xlarge on AWS costs $0.192/hr on-demand, which is roughly $140/month running 24/7. A 1-year Savings Plan drops that to about $89/month. A 3-year commitment brings it to roughly $56/month (AWS Savings Plans pricing). If you know you'll need this instance for a year, paying on-demand costs you an extra $612 annually.
GCP's sustained-use discounts: the automatic middle ground
Google Cloud offers something neither AWS nor Azure match: sustained-use discounts that apply automatically. Run an instance for more than 25% of a month and GCP starts discounting. At full-month usage, you save up to 30% without any commitment (GCP sustained-use documentation). This makes GCP's "on-demand" rate effectively 20-30% cheaper than AWS or Azure for long-running workloads.
This automatic discount gives GCP teams a built-in safety net. You don't need to predict your usage upfront. If you run something long enough, the discount kicks in. It's not as deep as a formal CUD, but it's free money you don't have to plan for.
If your on-demand bill looks surprisingly high, the problem might not be the pricing model itself. Check our guide to diagnosing high AWS bills for hidden costs like NAT Gateways and idle load balancers that add up fast.
How do you decide which instance type to use?
A HashiCorp 2024 State of Cloud Strategy survey found that 94% of enterprises use multiple clouds, yet most lack a formal framework for pricing model selection. Without clear rules, teams default to on-demand and overspend by thousands each month. Here's a straightforward decision tree.
The three-question decision tree
Question 1: Will this workload run steadily for 12+ months?
Yes → Use reserved instances (or Savings Plans on AWS). Start with a 1-year term if you're uncertain about the 3-year horizon.
Question 2: Can this workload tolerate interruption?
Yes → Use spot instances. Design for graceful shutdown, use checkpointing, and diversify across instance types.
Question 3: Is this workload temporary or unpredictable?
Yes → Use on-demand. Monitor for 30-60 days. If usage stabilizes, convert to reserved.
Real-world example: a typical small team
Consider a startup running three workloads: a production API (24/7), a nightly data pipeline, and a staging environment used during business hours. Here's how to split them across pricing models.
| Workload | Model | On-Demand Cost | Optimized Cost | Savings |
|---|---|---|---|---|
| Production API (m6i.xlarge) | 1-yr Reserved | $140/mo | $89/mo | $612/yr (37%) |
| Data pipeline (c6i.2xlarge) | Spot | $102/mo | $31/mo | $852/yr (70%) |
| Staging env (t3.large) | On-Demand | $60/mo | $60/mo | $0/yr (keep flexible) |
Total monthly savings: $122. That's $1,464 per year from three simple decisions. The staging environment stays on-demand because it runs irregularly and might change size as the team grows. But could that change? Absolutely. If staging runs consistently, it becomes a reservation candidate too. For a wider set of actions beyond purchasing model decisions, the cloud cost optimization checklist covers networking, storage, and tagging alongside compute commitments.
Can you combine all three pricing models?
Yes, and that's the approach most cost-efficient teams take. Organizations that actively manage their commitment coverage save 2-3x more than those using a single model, according to findings in the FinOps Foundation's 2024 State of FinOps report. The ideal mix depends on your workload portfolio, but a common starting point is 60-70% reserved, 15-25% spot, and 10-20% on-demand.
How to phase in a blended strategy
Don't flip everything at once. We've found that the safest path looks like this: run on-demand for your first 30-60 days to establish a baseline. Identify instances with steady utilization above 70%. Reserve those first. Then look at batch and fault-tolerant workloads for spot migration. Keep new or variable workloads on-demand until they stabilize.
AWS makes this easier with Compute Savings Plans, which automatically apply your committed spend across any EC2 usage. You don't need to match reservations to specific instances. Azure and GCP require more manual alignment between reservations and actual usage.
Alternative approach: dedicated and private cloud infrastructure
Organizations with predictable workloads don't always need public cloud reserved instances to reduce costs. Many businesses achieve similar cost predictability by running steady-state applications on dedicated servers or private cloud infrastructure from experienced hosting providers such as Atlantic.Net, while reserving public cloud spot and on-demand resources for burst capacity, development environments, and temporary workloads. This hybrid approach can simplify budgeting, eliminate variable compute pricing, and provide dedicated resource performance for production applications.
Monitoring your commitment coverage
Track two metrics: reservation utilization (are you using what you bought?) and reservation coverage (what percentage of eligible usage is covered?). AWS Cost Explorer shows both. Azure Advisor flags underutilized reservations. If utilization drops below 80%, you've over-committed. If coverage is below 60% for steady workloads, you're leaving money on-demand.
Frequently asked questions about reserved vs spot instances
What happens if my spot instance gets interrupted?
AWS gives you a 2-minute warning before reclaiming a spot instance. Azure provides a 30-second eviction notice for Spot VMs. GCP Spot VMs can be terminated with 30 seconds' notice. Your workload needs to handle graceful shutdown -- save state to durable storage, checkpoint ML training jobs, or ensure another instance picks up the work through a queue or orchestrator.
Can I convert a reserved instance to a different type?
On AWS, Convertible Reserved Instances let you change instance families mid-term, though savings are slightly lower (up to 66% vs 72% for Standard RIs). AWS Savings Plans sidestep this problem entirely by applying discounts across families. Azure Reservations are instance-size flexible within the same family. GCP CUDs apply to vCPU and memory, not specific machine types, giving the most flexibility (GCP CUD documentation).
Are spot instances reliable enough for production?
Stateless production workloads behind load balancers can run on spot if you architect for interruption. Many large-scale systems (Netflix, Lyft) run significant production traffic on spot. But stateful services like databases should never use spot. The risk profile doesn't match -- one interruption could mean data loss or extended downtime.
Should I choose a 1-year or 3-year reservation?
Start with 1-year terms. The savings difference between 1-year and 3-year is meaningful (roughly 40% vs 60-72%), but the risk of over-commitment is higher with a 3-year lock-in. Once you've confirmed a workload is truly stable for over a year, consider upgrading to a 3-year term for the next cycle. Cloud architectures change faster than most teams expect.
How do I calculate the break-even point for reserved instances?
Divide the upfront or committed cost by the on-demand hourly rate. For example, an AWS 1-year no-upfront RI at $0.12/hr vs on-demand at $0.192/hr saves $0.072/hr. You break even immediately since there's no upfront cost. For all-upfront RIs, the break-even is typically 7-9 months into a 1-year term. Use our calculator to model your specific scenario.
Estimate your cloud costs — for free
Compare AWS, Azure, and GCP pricing side by side with our free calculator, and dig into the guides to learn how to cut cloud waste. No sign-up required.