Domain 4: Billing, Pricing, and Support

AWS Pricing Models (Task 4.1)

On-Demand Reserved Instances Savings Plans Spot Instances Dedicated Hosts Capacity Reservations
Exam Tip
On-Demand = pay full hourly, zero commitment. Reserved = 1yr (up to ~40%) or 3yr (~60%) for steady workloads; can be traded/sold in the RI Marketplace and shared across the org’s consolidated-billing accounts. Spot = up to 90% off, 2-minute interruption warning, for flexible workloads. Savings Plans = commit $/hour for flexible discounts (Compute SP covers EC2+Lambda+Fargate). Incoming data transfer is FREE; outgoing costs money.

AWS Pricing Models

Source: https://aws.amazon.com/pricing/

The exam matches workloads to purchase options and tests data-transfer direction. Senior engineers run a PORTFOLIO: cover the steady baseline with commitments, absorb spiky demand with On-Demand, and push interruptible work to Spot — typically 70/20/10.

The Pay-as-You-Go Philosophy

Brief: Pay for what you use, when you use it. No charge to create an account; free tiers come in three flavors — 12-month free (new accounts), always free, and short trials.

How it works: Services meter differently: EC2 per second (Linux, 60s min), S3 per GB-month + per request, Lambda per request + GB-second, data transfer per GB. The meter starts when the resource EXISTS, not when it is used — an idle NAT Gateway or load balancer bills exactly like a busy one.

EC2 Compute Purchasing Options

Option Discount Commitment Best For
On-Demand none (baseline) none Unpredictable, short-term, first-time workloads
Reserved Instances (RI) up to ~40% (1-yr) / ~60% (3-yr) 1 or 3 years Steady-state 24/7 workloads (production databases, servers)
Savings Plans up to ~66% (compute), ~72% (EC2 Instance SP) 1 or 3 years, $/hour commitment Flexible commitment: Compute SP covers EC2, Lambda, Fargate
Spot Instances up to 90% none — priced by spare-capacity market Interruption-tolerant: batch, rendering, big data
Dedicated Hosts physical server reserved for you per-host billing BYOL (per-socket/per-core), compliance needing dedicated hardware
Dedicated Instances instances on single-tenant hardware per-hour premium Regulatory isolation without a full host
Capacity Reservations pay to reserve capacity in a specific AZ even if unused none Critical workloads that MUST launch on demand

How Reserved Instances actually work

Brief: An RI is a BILLING attribute, not a special instance — you keep launching normal On-Demand instances and the discount applies automatically to matching usage.

How it works: You commit to a specific instance family, size, OS, tenancy, and Region (Standard RIs can be modified: swap AZ, resize within family) for 1 or 3 years. Unused Standard RIs can be sold in the RI Marketplace; Convertible RIs can be exchanged for different families. In an AWS Organization, RIs are shared across all consolidated-billing accounts automatically — the payer's reservation covers any member account's matching usage.

Real use-case: A company commits 20 m5.xlarge 3-yr Standard RIs for its ERP. When a workload migrates to Graviton a year later, the remaining RI term is modified to a different size/family where possible and sold in the Marketplace for the rest — the commitment did not become stranded capital.

How Savings Plans work (the modern commitment)

Brief: You commit to a dollar-per-hour spend level for 1 or 3 years; any usage below the commitment is discounted, anything above bills at On-Demand.

How it works: Compute Savings Plans apply automatically across EC2 instance families, sizes, OSes, tenancies, Regions — plus Lambda and Fargate (maximum flexibility, up to ~66%). EC2 Instance Savings Plans commit to a family+Region for the biggest EC2 discount (~72%). Usage is applied hourly; the commitment covers eligible spend automatically with no instance launching discipline.

Real use-case: A platform team with mixed workloads (EC2 web fleet, Fargate batch jobs, Lambda APIs) buys a Compute SP sized to its 24/7 baseline; the discount follows the workload mix as it shifts between services over the year — something per-instance RIs could not do.

Gotchas & interview notes: RIs/SPs are commitments on STEADY usage — committing on a spiky profile wastes money when the baseline drops. Cover your guaranteed 24/7 floor only (the 70/20/10 heuristic). The exam's "most flexible commitment covering EC2, Lambda, AND Fargate" → Compute Savings Plans.

How Spot works

Brief: Spare EC2 capacity priced by a real-time market — up to 90% off, reclaimable with a 2-minute interruption warning.

How it works: Spot prices float with supply/demand per AZ/instance-type. When capacity is needed back, AWS sends an interruption notice 2 minutes ahead (via metadata endpoint and EventBridge). Spot Block (fixed-duration) is retired — modern designs CHECKPOINT work: save state to S3/EBS, re-queue to SQS, or let the ASG relaunch elsewhere.

Real use-case: A 200-node nightly render farm runs entirely on Spot: frames checkpoint every 60 seconds to S3; a 2 a.m. interruption costs one re-rendered frame per node, not the night's work. Cost: ~10% of On-Demand.

Gotchas & interview notes: Spot is for stateless, checkpointed, retryable work — NEVER databases or session-bearing tiers. ASGs can mix Spot + On-Demand (Spot with On-Demand fallback is the standard cost pattern). The exam says "can be interrupted, up to 90% savings" → Spot, always.

Data Transfer Charges (Heavily Tested)

Direction Cost
Data IN to AWS (uploads) FREE
Data OUT to the internet Charged per GB, tiered (first 100 GB/month free)
Between AZs in the same Region (cross-AZ) Charged both directions per GB
Between Regions Charged per GB
Same AZ over a private IP FREE
CloudFront to viewers Special pricing (cheaper than EC2 egress)


How to think like a senior: egress is the cloud's "exit toll" — architect to keep data IN (serve via CloudFront to exploit cheaper edge pricing, use VPC endpoints to keep S3/DynamoDB traffic off the internet path, co-locate chatty tiers). A media platform serving 1 PB/month from EC2 directly pays ~4x what the same traffic costs through CloudFront.

Example: keep an app tier and its database in the same AZ communicating over private IPs to avoid cross-AZ charges when budgets are tight (trade-off: less HA — a deliberate cost/reliability trade, not an accident).

Gotchas & interview notes: INBOUND is free — memorize it. Cross-AZ traffic bills BOTH directions (~$0.01/GB each way); RDS Multi-AZ replication data is free, but app-tier chatter across AZs is not. Serving heavy outbound through CloudFront is both faster AND cheaper — a rare free lunch.

Storage Pricing Dimensions

  • S3: per GB-month by class + request counts + retrieval fees + data transfer
  • EBS: per GB-month provisioned + IOPS/throughput for premium types + snapshot GB
  • Lifecycle tiering slashes S3 costs for aging data (see the Storage topic)
  • ERP (steady, critical) → 3-year Compute Savings Plans (flexibility across families) or Standard RIs
  • Render farm (interruptible, spiky) → Spot Instances (90% savings; checkpoint rendering)
  • Wiki (predictable business hours) → smaller On-Demand with scheduled shutdown, or 1-yr commitment
  • Licensed app → Dedicated Host to satisfy per-core licensing

Worked Example: Choosing Purchase Options

A company runs: (1) a 24/7 production ERP on 20 m5.xlarge instances, (2) a nightly 4-hour render farm of 200 instances, (3) an internal wiki used 9-to-5, (4) a SQL Server app whose license is per-physical-core.

  • S3: per GB-month by class + request counts + retrieval fees + data transfer
  • EBS: per GB-month provisioned + IOPS/throughput for premium types + snapshot GB
  • Lifecycle tiering slashes S3 costs for aging data (see the Storage topic)
  • ERP (steady, critical) → 3-year Compute Savings Plans (flexibility across families) or Standard RIs
  • Render farm (interruptible, spiky) → Spot Instances (90% savings; checkpoint rendering)
  • Wiki (predictable business hours) → smaller On-Demand with scheduled shutdown, or 1-yr commitment
  • Licensed app → Dedicated Host to satisfy per-core licensing
The portfolio view: ~75% of the company's compute-hours are now discounted 60–90%, while keeping On-Demand headroom for the unpredictable 20% — that mix, not any single option, is what "cost-optimized compute" means.