Cost-Optimized Architecture Design · Topic 1 of 8

Purchase Options and Commitments

Match AWS purchase options to usage: Savings Plans, Reserved Instances, Spot, capacity reservations, DynamoDB modes and Database Savings Plans.

  • 6 min
In a nutshell
  • Compute Savings Plans cover EC2, Fargate and Lambda, but not RDS, EBS or data transfer.
  • Savings Plans and regional RIs discount usage but reserve no capacity, while zonal RIs and Capacity Reservations do.
  • Spot needs flexibility across instance types and AZs and a plan for the two minute notice.

What it is

Every AWS workload is billed under a purchase option. The same instance can cost very different amounts depending on whether it runs On-Demand, under a commitment, or on spare Spot capacity.

At the professional level the question is rarely "what is a Savings Plan". It is which mix of options covers a multi-account estate with a steady baseline, a seasonal peak and some interruptible batch work, at the lowest cost and the least management effort.

Usage patternbaseline, peak, batchBaselineSavings Plans or RIsPeakOn DemandBatchSpot

How it works

Compute purchase options

OptionCommitmentBest fitKey limit
On-DemandNoneUnknown, short or spiky useHighest unit price
Compute Savings PlansSpend per hour, 1 or 3 yearsSteady spend that may change family, Region or serviceCovers EC2, Fargate and Lambda only
EC2 Instance Savings PlansSpend per hour on one family in one RegionStable family in a known RegionLess flexible, deeper discount
Standard Reserved InstancesInstance attributes, 1 or 3 yearsVery stable EC2 fleetsAttributes fixed, can sell on the RI Marketplace
Convertible Reserved InstancesInstance attributes, exchangeableStable but evolving fleetsSmaller discount than Standard
Spot InstancesNoneFault tolerant, flexible jobsTwo minute interruption notice

Savings Plans are commitments to a dollar amount per hour, not to specific instances. Compute Savings Plans apply across instance families, sizes, Regions, operating systems and tenancy, and also to Fargate and Lambda. They do not cover RDS, EBS or data transfer.

In an organization with consolidated billing, Savings Plans and Reserved Instance discounts are shared across member accounts by default. Buying commitments centrally in one account and letting sharing spread them is usually the lowest effort design. Sharing can be turned off for accounts that must keep their own discounts.

Capacity versus discount

Discounts and capacity are separate ideas. Regional Reserved Instances and Savings Plans give a discount but reserve no capacity. Zonal Reserved Instances reserve capacity in one Availability Zone.

On-Demand Capacity Reservations hold capacity in a specific AZ without a term, billed at the On-Demand rate whether you use them or not. Pair them with a Savings Plan or regional RI to get the discount as well. For short GPU needs, such as a training run, EC2 Capacity Blocks for ML reserve accelerated instances for a defined future window.

Need guaranteed capacity in one AZCapacity Reservationbilled On DemandaddSavings Plandiscount applied

Spot done well

Spot suits stateless tiers, containers, CI, batch and checkpointed training. Diversify across many instance types and AZs, and use the price capacity optimized allocation strategy in an Auto Scaling group or EC2 Fleet. Handle the two minute notice and rebalance recommendations so work drains cleanly.

Database capacity modes and commitments

ServiceOptionsChoose when
DynamoDBOn-demand or provisioned, plus reserved capacityOn-demand for unknown or spiky traffic, provisioned with auto scaling for predictable traffic
RDSOn-Demand or reserved DB instancesReserved for long running production instances
AuroraProvisioned instances or Aurora Serverless v2Serverless v2 for variable or intermittent load
Aurora storageAurora Standard or Aurora I/O-OptimizedI/O-Optimized when I/O is 25% or more of Aurora spend
Many databasesDatabase Savings PlansFlexible 1 year commitment across engines and Regions

DynamoDB reserved capacity applies only to provisioned mode. On-demand is now the default and recommended mode for most tables, so a commitment only makes sense for steady, well forecast provisioned throughput.

Aurora I/O-Optimized removes per request I/O charges in exchange for higher instance and storage rates. You can switch from Standard to I/O-Optimized once every 30 days, and back to Standard at any time.

Database Savings Plans are a 1 year commitment with no upfront payment. AWS documents coverage across services including Aurora, RDS, DynamoDB, ElastiCache, DocumentDB, Neptune, Keyspaces, Timestream, DMS and OpenSearch Service, including serverless options and DynamoDB on-demand and provisioned throughput. Instance coverage applies to the latest instance generations only, the plan reserves no capacity, and it cannot be combined with RIs or DynamoDB reserved capacity on the same usage.

Turning things off

Non production databases cost money while idle. An RDS instance can be stopped, but it restarts automatically after seven days. Aurora is stopped at the cluster level, because individual Aurora instances cannot be stopped.

For test environments used a few hours a day, Aurora Serverless v2 is often simpler than a stop and start schedule.

How the exam asks about this

  • "A company runs a steady EC2 baseline but plans to move part of it to Fargate and Lambda next year." -> Compute Savings Plans, because the commitment follows the usage across services.
  • "Nightly batch jobs can restart if interrupted and must cost as little as possible." -> Spot Instances, diversified across instance types with checkpointing.
  • "A DynamoDB table has unpredictable bursts and no capacity planning team." -> On-demand mode, not provisioned capacity with reserved capacity.

What to remember for the exam

  • Compute Savings Plans cover EC2, Fargate and Lambda, but not RDS, EBS or data transfer.
  • Savings Plans and regional RIs discount usage but reserve no capacity, while zonal RIs and Capacity Reservations do.
  • Spot needs flexibility across instance types and AZs and a plan for the two minute notice.
  • DynamoDB reserved capacity applies only to provisioned mode.
  • Aurora I/O-Optimized pays off when I/O is 25% or more of total Aurora spend.
  • Database Savings Plans are 1 year, no upfront, and cannot stack with RIs on the same usage.
Watch out

Do not buy a 3 year Standard RI for a workload the scenario says will be re-platformed or moved. A flexible Savings Plan, or a shorter commitment, is the safer cost answer.

Common mistakes

Assuming Savings Plans reserve capacity. They only change the price. If the question needs guaranteed capacity in an AZ, add a Capacity Reservation.

Committing to the peak. Commit to the steady baseline that runs all the time. Cover peaks with On-Demand or Spot, or the unused commitment becomes waste.

Stopping one Aurora instance to save money. Individual Aurora instances cannot be stopped. Stop the whole cluster, reduce instances, or move the workload to Aurora Serverless v2.

Check yourself

  • Which Savings Plan type still applies if a company moves workloads from EC2 to Lambda?

    Compute Savings Plans, because they apply across EC2, Fargate and Lambda usage.

  • When should a team choose Aurora I/O-Optimized over Aurora Standard?

    When I/O charges are 25% or more of total Aurora spend, since I/O-Optimized removes per request I/O charges.

  • Can DynamoDB reserved capacity lower the cost of an on-demand table?

    No. Reserved capacity applies only to provisioned mode, so the table must use provisioned capacity to benefit.

Topic 1 of 8 in Cost-Optimized Architecture Design

Test yourself on Cost-Optimized Architecture Design

The full AWS SAP-C03 question bank has 850 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by AWS. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.