This chapter covers EC2 pricing models—On-Demand, Reserved, and Spot—which are fundamental to understanding AWS cost optimization. For the CLF-C02 exam, this topic falls under Domain 3: Cloud Technology Services, Objective 3.1 (approximately 10-15% of the exam). Mastering these pricing models is essential because questions about cost savings, instance purchasing options, and use-case scenarios appear frequently. You will learn the mechanics of each model, when to use them, and how to avoid common exam traps.
Jump to a section
Imagine you run a food truck business that needs a commercial kitchen. You have three ways to get kitchen time. On-Demand is like renting a kitchen by the hour with no commitment—you pay a higher hourly rate, but you can walk away anytime. This is perfect when you're testing a new menu item or handling an unexpected lunch rush. Reserved Instances are like leasing a kitchen for a year or three years—you pay a lower hourly rate because you commit to a long-term rental, and you even get a discount for paying upfront. If you stop using the kitchen, you still pay for the lease. Spot Instances are like bidding on unused kitchen time at a deep discount—you can get the kitchen for very low prices, but the owner can kick you out with just a two-minute notice if a full-price renter shows up. You only use this for work that can be paused and resumed, like prepping bulk ingredients that don't spoil if you stop mid-way. In AWS, On-Demand gives you full control and flexibility at a higher cost. Reserved Instances give you a discount for commitment. Spot gives you the lowest cost but with the risk of interruption. Understanding these trade-offs is critical to optimizing your cloud bill and passing the CLF-C02 exam.
Introduction to EC2 Pricing Models
Amazon EC2 offers multiple pricing models to give customers flexibility in managing costs based on their workload patterns. The three primary models are On-Demand, Reserved Instances (including Convertible and Standard), and Spot Instances. Each model has a different trade-off between cost, commitment, and flexibility. The CLF-C02 exam expects you to understand these trade-offs and recommend the appropriate model for given scenarios.
On-Demand Instances
On-Demand is the most straightforward pricing model. You pay for compute capacity by the hour or second (minimum 60 seconds) with no long-term commitments. This model is ideal for workloads that are unpredictable, short-lived, or in development/testing phases. The key characteristics are:
No upfront payment or termination fees
Pay only for what you use (per hour or per second depending on the instance type)
Full control over instance lifecycle—you can launch, stop, or terminate at any time
Highest per-hour cost compared to other models
On-Demand is suitable for applications with variable traffic, such as a new startup that doesn't know its usage patterns, or for bursty workloads like batch processing that runs for a few hours each day. AWS also offers On-Demand Capacity Reservations, which let you reserve capacity for a specific instance type in an Availability Zone without any commitment—you pay for the reservation even if you don't run instances, but you get a discount if you combine it with a Reserved Instance.
Reserved Instances (RI)
Reserved Instances provide a significant discount (up to 72% compared to On-Demand) in exchange for a commitment to a specific instance configuration in a specific region for a one- or three-year term. There are three payment options: All Upfront (largest discount), Partial Upfront, and No Upfront (smallest discount). The discount is applied to your bill when you run matching instances.
Reserved Instances come in two types:
Standard RIs: Provide a fixed discount and are best for steady-state workloads. You can modify the Availability Zone, instance size (within the same instance family), and network type.
Convertible RIs: Offer a lower discount than Standard (but still higher than On-Demand) but allow you to change the instance family, operating system, and tenancy. This is useful if you anticipate changes in your workload requirements.
Key attributes of Reserved Instances:
Scope: Regional or Zonal. Regional RIs apply to any instance in the region that matches the attributes, while Zonal RIs reserve capacity in a specific Availability Zone.
Instance size flexibility: For Standard RIs with regional scope, the discount applies to any instance size within the same instance family (e.g., a t3.large RI can cover two t3.small instances).
You can sell unused Reserved Instances on the Reserved Instance Marketplace.
Spot Instances
Spot Instances let you bid on unused EC2 capacity at up to 90% off On-Demand prices. However, AWS can reclaim the instance with a two-minute warning if capacity is needed for On-Demand or Reserved customers. This makes Spot Instances ideal for fault-tolerant, flexible, and stateless workloads such as big data analytics, containerized applications, CI/CD pipelines, and high-performance computing (HPC).
Spot Instances work as follows:
You specify the maximum price you are willing to pay per instance-hour. If the current Spot price is below your maximum, your instance runs. If the Spot price rises above your maximum, your instance is terminated (or stopped if you enabled the stop behavior).
You can use Spot Blocks to prevent your instance from being terminated for a duration of 1 to 6 hours (though this feature is being phased out in favor of Capacity Reservations).
Spot Instances are integrated with EC2 Auto Scaling and Amazon EMR, and you can use a mixed instances policy to combine On-Demand and Spot.
Savings Plans
Savings Plans (Compute and EC2 Instance) are another pricing model that offers discounts similar to Reserved Instances but with more flexibility. Compute Savings Plans apply to any EC2 instance, AWS Fargate, and AWS Lambda usage, while EC2 Instance Savings Plans apply to a specific instance family in a region. Savings Plans require a one- or three-year commitment with an hourly spend commitment. They are often tested alongside Reserved Instances on the exam.
Comparison to On-Premises
On-premises data centers require upfront capital expenditure for hardware, ongoing costs for power, cooling, and maintenance, and you must overprovision for peak demand. AWS pricing models eliminate upfront costs and allow you to match capacity to demand. On-Demand is like paying for electricity—you pay for what you use. Reserved Instances are like buying a gym membership—you pay a lower per-visit fee but commit to a period. Spot is like buying clearance items—deep discounts but limited availability.
When to Use Each Model
On-Demand: Unpredictable workloads, development/test environments, applications with no steady state.
Reserved Instances: Steady-state production workloads, known minimum capacity, databases, enterprise applications.
Spot Instances: Batch processing, data analysis, image rendering, CI/CD, workloads that can be interrupted and resumed.
Savings Plans: Any workload that can be committed to a consistent spend level, especially if you use multiple compute services.
The exam will ask you to choose the most cost-effective model for a given scenario. For example, if a company runs a web server 24/7, Reserved Instances or Savings Plans are best. If they have a batch job that runs for a few hours each night and can tolerate interruptions, Spot is best. If they are testing a new application with unknown usage, On-Demand is best.
Key Limits and Defaults
You can run up to 5,000 On-Demand instances per region (soft limit, can be increased).
Reserved Instance purchases are limited to 20 per month per region (soft limit).
Spot Instances have no default limit, but you must have an EC2 instance limit.
Spot Instance termination warning is given via the EC2 instance metadata and Amazon EventBridge (2 minutes).
Launch an On-Demand EC2 Instance
Log in to the AWS Management Console, navigate to EC2, and click 'Launch Instance'. Choose an Amazon Machine Image (AMI) and instance type. In the 'Configure Instance Details' step, under 'Purchasing option', select 'On-Demand' (default). No additional configuration is needed. Review and launch. AWS immediately provisions the instance and starts billing per second (for Linux instances) or per hour (for Windows). You can stop or terminate the instance at any time—billing stops when the instance is in 'stopped' or 'terminated' state. This is ideal for short-term needs.
Purchase a Standard Reserved Instance
In the EC2 console, under 'Reserved Instances', click 'Purchase Reserved Instances'. Select the instance type (e.g., t3.medium), scope (Regional or Zonal), term (1 or 3 years), and payment option (All Upfront, Partial Upfront, No Upfront). For example, choose a 3-year All Upfront for maximum savings. After purchase, the RI is applied to any matching instance running in the account. If you don't run any matching instance, you still pay for the RI. You can modify the RI's Availability Zone or instance size within the same family later.
Request a Spot Instance
When launching an instance, in the 'Purchasing option' section, select 'Request Spot Instances'. Set your maximum price (or use the default which is the On-Demand price). Choose a request type: 'Persistent' (maintains capacity even if instance is terminated) or 'One-time'. Optionally, set a duration for a Spot Block (1-6 hours). AWS will launch the instance when the Spot price is below your maximum. Monitor the Spot instance via the Spot Requests console. If the Spot price rises, AWS sends a termination notice via instance metadata and EventBridge.
Use Savings Plans for Cost Optimization
Navigate to AWS Cost Explorer and select 'Savings Plans'. Choose between Compute Savings Plans (covers EC2, Fargate, Lambda) or EC2 Instance Savings Plans (covers a specific instance family). Set an hourly commitment (e.g., $10/hour) and term (1 or 3 years). Choose payment option (All Upfront, Partial Upfront, No Upfront). AWS applies the Savings Plan discount to eligible usage automatically. Savings Plans are more flexible than Reserved Instances and are a common exam topic as a cost-saving alternative.
Set up a Mixed Instances Policy with Spot
In Auto Scaling groups, create a launch template. In the 'Mixed instances policy' section, define the On-Demand portion (e.g., 50%) and Spot portion (e.g., 50%). Specify instance types (e.g., c5.large, c5.xlarge) and allocation strategies (lowest price or capacity optimized). Auto Scaling will launch On-Demand and Spot instances to meet the desired capacity. This is a best practice for cost optimization and is frequently tested for scenarios requiring fault tolerance.
Business Scenario 1: E-Commerce Website with Steady Traffic
A mid-sized e-commerce company runs its production website on EC2 instances. The workload is predictable—consistent traffic during business hours with occasional spikes during sales. The company uses a combination of Reserved Instances for the baseline capacity (e.g., 10 m5.large instances 24/7) and On-Demand for handling spikes. By purchasing 3-year All Upfront Reserved Instances, they save 60% compared to On-Demand. However, they misconfigured the Reserved Instance scope by choosing Zonal instead of Regional. When an Availability Zone fails, they cannot use the RI discount in another AZ, increasing costs. The lesson: always use Regional RIs for high availability.
Business Scenario 2: Big Data Analytics with Spot Instances
A data analytics firm runs nightly Spark jobs that process terabytes of log data. The jobs are stateless and can be interrupted—if a node fails, the job restarts from the last checkpoint. They use Spot Instances with a mixed instances policy in an Auto Scaling group, setting the On-Demand base to 20% and Spot to 80%. This reduces their compute costs by 70%. However, they set the maximum Spot price too low (e.g., 50% of On-Demand), causing instances to be terminated frequently during peak hours. They adjust the maximum to the On-Demand price to ensure availability while still benefiting from lower Spot prices. The key takeaway: set the max price to the On-Demand price to avoid termination, and use Spot with fault-tolerant architectures.
Business Scenario 3: Development and Test Environments
A software company maintains multiple development and test environments that run only during business hours (8 hours/day, 5 days/week). They use On-Demand instances because the workload is intermittent and unpredictable. To save costs, they implement instance scheduling with AWS Instance Scheduler—instances are stopped during off-hours. This reduces costs by 66% compared to running 24/7. They avoid Reserved Instances because the usage pattern doesn't justify a 1-year commitment. The mistake some teams make is purchasing Reserved Instances for dev/test environments, leading to unused capacity and wasted money.
What CLF-C02 Tests
This objective (3.1) focuses on understanding the differences between EC2 pricing models and when to use each. The exam will present scenarios with specific workload characteristics (e.g., 'a batch job that can be interrupted,' 'a production database that must run 24/7'). You must choose the most cost-effective model. Key terms to know: On-Demand, Reserved Instance (Standard vs Convertible), Spot Instance, Savings Plans (Compute vs EC2 Instance), and the concept of 'interruption' for Spot.
Common Wrong Answers and Why
Choosing Spot for a stateful application: Candidates see 'lowest cost' and pick Spot, forgetting that Spot instances can be terminated. The correct answer is Reserved or On-Demand.
Picking On-Demand for a steady-state workload: On-Demand is the most expensive; Reserved or Savings Plans are better for 24/7 usage.
Confusing Reserved Instances with Savings Plans: The exam may ask which gives the best discount for a specific instance family. EC2 Instance Savings Plans and Standard RIs are similar, but Savings Plans offer more flexibility. Know the difference: Compute Savings Plans cover more services but have slightly lower discounts.
Thinking Spot Blocks guarantee no interruption: Spot Blocks only guarantee no interruption for 1-6 hours, but this feature is being deprecated. AWS now recommends using Capacity Reservations for guaranteed capacity.
Specific Terms on the Exam
'Per-second billing' for On-Demand Linux instances (since 2017).
'Up to 90% off' for Spot, 'up to 72% off' for RIs.
'1-year or 3-year term' for RIs and Savings Plans.
'All Upfront, Partial Upfront, No Upfront' payment options.
'Regional vs Zonal' scope for RIs.
'Instance size flexibility' for Regional Standard RIs.
'Capacity Reservations' for guaranteed capacity (not a pricing model but a feature).
Decision Rule for Multiple Choice
When you see a question about cost optimization, first identify the workload pattern:
Is it unpredictable or short-term? → On-Demand
Is it steady-state and predictable? → Reserved Instances or Savings Plans
Is it fault-tolerant and flexible? → Spot Instances
Does it require a specific instance family? → EC2 Instance Savings Plans or Standard RIs
Does it use multiple compute services? → Compute Savings Plans
Eliminate options that don't match the pattern. For example, if the question says 'can be interrupted,' eliminate On-Demand and Reserved; Spot is the only one that can be interrupted (by AWS). If the question says 'no commitment,' eliminate Reserved and Savings Plans.
On-Demand: pay per second (Linux) or per hour (Windows) with no commitment; highest cost.
Reserved Instances: 1- or 3-year commitment; up to 72% off; Standard vs Convertible; Regional vs Zonal.
Spot Instances: up to 90% off; can be terminated with 2-minute notice; use only for fault-tolerant workloads.
Savings Plans: Compute (EC2, Fargate, Lambda) or EC2 Instance; 1- or 3-year hourly commitment; more flexible than RIs.
Instance size flexibility applies to Regional Standard RIs (e.g., a t3.large can cover two t3.small).
Capacity Reservations guarantee capacity but are not a pricing model; combine with RIs for discount.
The exam will test scenario-based selection: steady-state → RI or SP; unpredictable → On-Demand; fault-tolerant → Spot.
These come up on the exam all the time. Here's how to tell them apart.
On-Demand
Pay per hour/second, no commitment
Highest cost per hour
Ideal for unpredictable workloads
No discount
Can terminate anytime without penalty
Reserved Instances
1- or 3-year commitment required
Up to 72% discount vs On-Demand
Ideal for steady-state workloads
Payment options: All, Partial, No Upfront
Can sell unused RIs on Marketplace
Reserved Instances
Tied to a specific instance family (Standard) or convertible (Convertible)
Regional or Zonal scope
Instance size flexibility (Regional Standard)
Cannot cover Fargate or Lambda
Can be sold in Marketplace
Savings Plans
Compute SP covers any EC2, Fargate, Lambda; EC2 SP covers instance family
Hourly spend commitment
No instance size flexibility (EC2 SP has family flexibility)
Covers Fargate and Lambda (Compute SP)
Cannot be sold, but unused commitment is lost
Spot Instances
Up to 90% discount
Can be terminated by AWS with 2-min notice
Ideal for fault-tolerant workloads
Prices fluctuate
No commitment required
On-Demand
No discount
No risk of termination
Ideal for critical, stateful workloads
Fixed price
No commitment required
Mistake
Reserved Instances are physical servers reserved for you.
Correct
Reserved Instances are a billing discount applied to matching On-Demand instances. They do not reserve physical capacity unless you purchase a Zonal RI with Capacity Reservation.
Mistake
Spot Instances are always cheaper than On-Demand.
Correct
Spot prices fluctuate based on supply and demand. They can sometimes be higher than On-Demand, though typically lower. You can set a max price to avoid paying more than On-Demand.
Mistake
You can't use Reserved Instances with Auto Scaling.
Correct
Reserved Instances work seamlessly with Auto Scaling. As long as the launched instances match the RI attributes, the discount applies automatically.
Mistake
Savings Plans are only for EC2.
Correct
Compute Savings Plans cover EC2, AWS Fargate, and AWS Lambda. EC2 Instance Savings Plans cover only a specific EC2 instance family.
Mistake
You must pay upfront for all Reserved Instances.
Correct
You can choose No Upfront, Partial Upfront, or All Upfront. No Upfront requires a 1-year commitment but no initial payment.
On-Demand instances are pay-as-you-go with no commitment, while Reserved Instances require a 1- or 3-year commitment in exchange for a discount (up to 72%). On-Demand is best for unpredictable workloads; Reserved is best for steady-state workloads. On the exam, if a question mentions 'no commitment' or 'short-term,' choose On-Demand. If it mentions 'steady-state' or 'known usage,' choose Reserved.
Yes, AWS can reclaim Spot Instances with a 2-minute warning if the Spot price exceeds your maximum bid or if capacity is needed for On-Demand/Reserved customers. This makes Spot unsuitable for stateful or critical workloads. The exam will test this by asking which workload is appropriate for Spot—look for words like 'fault-tolerant,' 'stateless,' or 'can be interrupted.'
A Savings Plan is a flexible pricing model that offers discounts in exchange for a commitment to a consistent amount of compute usage (measured in $/hour) for 1 or 3 years. Compute Savings Plans apply to any EC2 instance, Fargate, and Lambda, while EC2 Instance Savings Plans apply to a specific instance family. Reserved Instances are tied to a specific instance configuration and offer instance size flexibility (Regional Standard). Savings Plans are generally more flexible but may have slightly lower discounts. On the exam, know that Compute Savings Plans cover more services.
Regional Reserved Instances apply the discount to any matching instance in any Availability Zone within the region, and they offer instance size flexibility. Zonal Reserved Instances reserve capacity in a specific Availability Zone and do not offer size flexibility. For high availability, use Regional RIs. The exam may test this by asking which RI type provides capacity reservation—Zonal does.
Yes, Reserved Instances apply automatically to any instance that matches the attributes (instance family, size, region, tenancy, etc.) launched by Auto Scaling. The discount is applied at the billing level. This is a common exam scenario: a company uses Auto Scaling and wants to reduce costs—the answer is to purchase Reserved Instances or Savings Plans that match the launch configuration.
To avoid losing your Spot Instance due to price spikes, set your maximum price to the On-Demand price. This ensures you never pay more than On-Demand, and you still get the discount when Spot prices are lower. AWS recommends using the default maximum price (On-Demand) for most workloads. The exam may ask: 'What is the best practice for setting a Spot bid price?' Answer: set it to the On-Demand price.
You can choose All Upfront (pay entire term upfront for maximum discount), Partial Upfront (pay a portion upfront, lower discount), or No Upfront (no upfront payment, lowest discount). All options require a 1- or 3-year commitment. The exam may ask which option gives the highest discount—All Upfront.
You've just covered EC2 Pricing Models — On-Demand, Reserved, Spot — now see how well it sticks with free CLF-C02 practice questions. Full explanations included, no account needed.
Done with this chapter?