Spot vs Reserved Instances (2026): Savings or Stability
Spot vs Reserved Instances compared on discount depth, interruption risk, commitment, and workload fit. A clear verdict on when each pricing model wins.
If you are reshaping your cloud bill in 2026, one of the first big decisions is Spot Instances vs Reserved Instances. They are the two ends of the cloud pricing spectrum: one trades stability for the deepest discount, the other trades flexibility for a guaranteed one. The terms below are mostly AWS, but the same trade-off shows up across every major cloud. This post compares them head to head so you can decide where each belongs, or how to run both.
The short answer
- Spot Instances - pick this when your workload can tolerate interruption. Spare capacity at steep discounts off on-demand, ideal for batch jobs, CI, data processing, stateless tiers, and checkpointed ML training. Best when losing a node is recoverable and savings matter most.
- Reserved Instances - pick this for steady, always-on baseline workloads. A one or three year commitment buys a reliable discount with no interruption risk, ideal for production databases and core services. Best when usage is predictable and you can forecast it.
- Both - the mature pattern. Cover the predictable baseline with commitments, run elastic and interruptible capacity on Spot, and keep a little on-demand for spikes.
The rest of this post unpacks that decision in detail.
Deciding factor to pick
Match your priority to the recommendation. This is the Spot vs Reserved Instances decision in one table:
| Your deciding factor | Pick |
|---|---|
| Workload can be interrupted and restarted | Spot |
| You want the deepest possible discount | Spot |
| Capacity is elastic, bursty, or batch | Spot |
| Workload is always-on and predictable | Reserved |
| You cannot tolerate any interruption | Reserved |
| It is a stateful, single critical instance | Reserved |
| You can commit for one or three years | Reserved |
| You have a steady baseline plus elastic bursts | Both |
If you only remember one rule: Spot gives maximum savings on interruptible work, Reserved gives a guaranteed discount on steady baseline.
What each tool is
- Spot Instances are spare cloud capacity sold at a steep discount off the on-demand price. The catch is that the provider can reclaim them when it needs the capacity back, typically with a short termination warning - about two minutes on AWS. They are dramatically cheaper but ephemeral, so they fit fault-tolerant, stateless, interruptible, and batch workloads, never a lone stateful critical instance without resilience built in.
- Reserved Instances are a one or three year commitment in exchange for a steady, substantial discount on capacity you run continuously. There is no interruption risk and the price is predictable, which makes them the right fit for always-on baseline workloads like databases and steady production services. The trade-off is flexibility: you are locking in usage, so you need a reasonable forecast.
Spot vs Reserved Instances: head-to-head
| Dimension | Spot Instances | Reserved Instances |
|---|---|---|
| Discount depth | Deepest off on-demand | Substantial, steady |
| Interruption risk | High (provider can reclaim) | None |
| Commitment | None | One or three years |
| Availability | Variable, capacity-dependent | Guaranteed |
| Best workloads | Interruptible, batch, stateless | Always-on, predictable |
| Stateful critical apps | Risky without resilience | Well suited |
| Flexibility | Use and release freely | Locked to commitment |
| Forecasting needed | Minimal | Significant |
| Price predictability | Lower, fluctuates | High, fixed |
| ML training | Great with checkpointing | Wasteful if not constant |
| Steady databases | Risky | Ideal |
| Who absorbs the risk | You design for interruption | The provider guarantees |
When to choose Spot
Pick Spot Instances when:
- Your workload is interruptible and restartable, so losing a node mid-run is an inconvenience rather than an outage.
- You run batch and data processing jobs, CI pipelines, or rendering that can simply retry on fresh capacity.
- Your web tier is stateless and horizontally scaled behind a load balancer, so individual nodes are disposable.
- You train ML models with checkpointing, letting a job resume from the last checkpoint after a reclaim.
- You want the deepest discount available and have engineering willing to design for graceful node loss.
- You can spread across instance types and zones to reduce the chance of losing all your Spot capacity at once.
When to choose Reserved
Pick Reserved Instances (or the equivalent commitment) when:
- Your workload is always-on and predictable, so a year or more of steady usage is easy to forecast.
- The service is stateful and critical - a primary database or core API - where interruption is unacceptable.
- You want a guaranteed discount with zero interruption risk rather than the lowest possible per-hour price.
- You are covering the baseline floor of your usage that runs around the clock regardless of traffic.
- You have enough usage history to commit confidently for one or three years without overcommitting.
- You value price predictability for budgeting more than the flexibility to release capacity anytime.
Can you use them together?
Yes, and combining them is the mature FinOps pattern, not a compromise. The split we recommend:
- Reserved Instances or Savings Plans for the baseline - the steady, always-on floor of your usage gets a guaranteed discount you can forecast and budget against.
- Spot for elastic and interruptible capacity - batch, CI, data processing, stateless bursts, and checkpointed training run on the cheapest pool, designed to survive reclaim events.
- A little on-demand as a buffer - for genuine spikes and for the moments Spot capacity is short, so nothing stalls.
On Kubernetes this becomes mixed node pools: a committed baseline pool for critical pods and a Spot pool for burst and interruptible work, with disruption handling so pods reschedule cleanly when Spot nodes go away. The same logic governs where commitments end and Spot begins, which is exactly the question a reserved instances vs savings plans decision answers for the committed half. For accelerator-heavy work, pair this with a deliberate AI/GPU cost governance policy so training runs on Spot and steady inference sits on commitments.
Cost comparison
The pricing models are fundamentally different, so compare on workload fit, not just headline discount.
- Spot Instances carry the deepest discount because you are buying spare capacity, but the price fluctuates and the capacity can be reclaimed. The real cost is engineering: you pay in resilience work to handle interruptions gracefully. Savings only land for workloads that can actually tolerate that.
- Reserved Instances offer a substantial, steady discount off on-demand in exchange for a one or three year commitment. The cost is flexibility and forecasting risk: commit to capacity you do not end up using and the discount works against you.
The lowest total bill almost always comes from layering them rather than choosing one. Commitments lock in savings on the predictable baseline, Spot squeezes the most out of elastic and interruptible work, and on-demand fills the gaps. We avoid quoting specific discount percentages here because they vary by cloud, region, instance family, and commitment term - the durable truth is that Spot can be dramatically cheaper for interruptible work and commitments offer a reliable discount on steady usage.
Common pitfalls
- Putting critical stateful workloads on Spot - a lone primary database or single stateful instance on Spot will go down on a reclaim event. Without replication and graceful failover, that two-minute warning is not enough.
- Overcommitting on Reserved Instances - locking in one or three years of capacity you do not actually use turns a discount into waste. Right-size the commitment to your true baseline, not your peak.
- Ignoring the Spot termination notice - if your workload does not drain on the warning, you lose in-flight work and corrupt state. Build the handler before you rely on Spot.
- Concentrating Spot on one instance type - depending on a single instance type or zone means a capacity crunch can wipe out all your Spot nodes at once. Diversify to stay resilient.
- Treating it as one big either-or decision - Spot and commitments are layers, not rivals. Forcing everything onto one model leaves savings on the table or stability at risk.
Related reading
- Reserved Instances vs Savings Plans - how the two main commitment models compare for covering your steady baseline
- Kubecost vs CAST AI - Kubernetes cost visibility versus automated optimization, including Spot automation
- AI/GPU Cost Governance - Spot strategy for training and commitment planning for steady inference
- More comparisons and guides on the finops.qa blog
Getting help
We help engineering and FinOps teams find the right split between committed baseline, Spot, and on-demand, then wire up the interruption handling and commitment coverage to make it stick. A finops.qa Assessment audits your current mix against your actual workloads and leaves you with a concrete plan for which capacity belongs on Spot and which deserves a commitment.
Frequently Asked Questions
Spot vs Reserved Instances: which should I use?
Use Spot Instances for workloads that can tolerate being interrupted - batch jobs, CI runners, data processing, stateless web tiers, and ML training that checkpoints. They are the cheapest capacity because they run on the provider's spare pool, but the provider can reclaim them with little notice, around a two-minute warning on AWS. Use Reserved Instances (or the equivalent commitment discount) for steady, always-on workloads like production databases and core services, where you commit to one or three years in exchange for a reliable discount and zero interruption risk. The mature answer is usually both: commitments for the baseline, Spot for the elastic and interruptible work.
Are Reserved Instances a good alternative to Spot?
They solve different problems rather than competing head to head. Reserved Instances trade flexibility for a guaranteed, interruption-free discount on capacity you know you will run constantly, so they are the right call for stable baseline workloads. Spot is not an alternative to that stability - it is cheaper still but ephemeral, and it can disappear when the provider needs the capacity back. If your real need is predictable, uninterrupted compute at a discount, Reserved Instances or Savings Plans are the fit. If your need is maximum savings on work that can absorb interruptions, Spot wins. They are complementary layers, not substitutes.
Can I run production or stateful workloads on Spot Instances?
You can, but only if the workload is built to survive interruption. Stateless services behind a load balancer, horizontally scaled web tiers, queue workers, and checkpointed ML training all run well on Spot because losing a node is recoverable. What you should not do is put a single stateful, critical instance - like a lone primary database - on Spot without resilience, because a reclaim event will take it down with roughly two minutes of warning. The safe pattern is to design for graceful node loss: drain on the termination notice, spread across instance types and zones, and keep a fallback to on-demand or committed capacity.
Which is cheaper: Spot or Reserved Instances?
Spot is almost always the cheaper sticker price because it sells spare capacity at steep discounts off on-demand, but that price comes with interruption risk and variable availability. Reserved Instances and Savings Plans offer a substantial, predictable discount in exchange for a one or three year commitment, with no interruption risk. So Spot is cheaper per hour when it is available, while commitments are cheaper than on-demand for anything you run continuously. The lowest total bill usually comes from combining them rather than picking one, because each covers a different slice of your usage.
Can you use Spot and Reserved Instances together?
Yes, and it is the standard FinOps pattern. Cover your steady, always-on baseline with Reserved Instances or Savings Plans so the predictable part of your bill gets a guaranteed discount, then run elastic, batch, and fault-tolerant capacity on Spot for maximum savings, and keep a little on-demand as a buffer for spikes and Spot shortfalls. On Kubernetes the same idea becomes mixed node pools: a committed baseline pool for critical pods and a Spot pool for burst and interruptible work, with disruption handling so pods reschedule cleanly when Spot nodes go away.
What happens when a Spot Instance gets interrupted?
The provider sends a short termination notice - about two minutes on AWS - and then reclaims the instance for other use. Your job is to react inside that window: stop accepting new work, finish or checkpoint in-flight tasks, deregister from load balancers, and let the orchestrator reschedule the workload elsewhere. Well-designed systems treat this as routine rather than an outage by spreading across multiple instance types and availability zones to reduce the chance of losing everything at once. If a workload cannot tolerate that interruption even with these measures, it does not belong on Spot.
Complementary NomadX Services
Related Comparisons
Get Your FinOps Defect Score
Book a free 30-minute cloud cost review. We will identify your top three FinOps gaps and give you a preliminary Defect Score - no pitch, no obligation.
Talk to an Expert