AWS Pricing Models (Task 4.1)
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