AWS · Updated August 2026 · 12 min read

AWS Pricing 2026: EC2, S3, Lambda, RDS Cost Breakdown

Complete service breakdown · Real cost examples · Free tier guide · Bill optimization

Bottom line: AWS pricing is usage-based and complex. A small application costs $50-200/month. EC2 compute is the biggest cost driver ($7.50-30/mo for small instances). S3 storage is cheap ($0.023/GB) but data transfer out is expensive ($0.09/GB). The Free Tier covers most services for 12 months. This guide breaks down every major service with real numbers.

AWS has 200+ services with pricing that ranges from fractions of a penny to thousands of dollars per hour. The complexity is intentional — it makes comparison shopping difficult. This guide cuts through the noise with actual prices for the services most teams use, real cost examples for common architectures, and the hidden fees that surprise first-time AWS users.

AWS Core Services Pricing 2026

Service What it does Starting price Typical monthly cost
EC2 (compute) Virtual servers $0.0104/hr (t3.nano) $7.50-30/mo for small instances
S3 (storage) Object storage $0.023/GB/mo $2.30 per 100GB
RDS (database) Managed SQL databases $0.017/hr (db.t3.micro) $12.50/mo for micro
Lambda (serverless) Run code without servers $0.20/1M requests $2-10/mo for typical API
CloudFront (CDN) Content delivery network $0.085/GB transfer $5-50/mo depending on traffic
Route 53 (DNS) DNS hosting $0.50/hosted zone/mo $0.50-5/mo

EC2 Pricing: The Biggest Cost Driver

EC2 (Elastic Compute Cloud) is usually 40-60% of an AWS bill. Prices vary by instance type, region, and purchasing option:

Instance vCPU RAM On-demand/hr Monthly (24/7) Best for
t3.nano 2 0.5 GB $0.0104 $7.50 Burst workloads, testing
t3.micro 2 1 GB $0.0104 $7.50 Small apps, development
t3.small 2 2 GB $0.0208 $15 Small production apps
t3.medium 2 4 GB $0.0416 $30 Medium traffic apps
t3.large 2 8 GB $0.0832 $60 Production workloads
m5.xlarge 4 16 GB $0.192 $138 General purpose production
c5.xlarge 4 8 GB $0.17 $122 Compute-intensive
Reserved vs On-demand: Committing to 1-year reserved instances saves 30-40%. 3-year commitments save 50-60%. A t3.small on-demand costs $15/mo; 1-year reserved is ~$10/mo; 3-year is ~$7/mo. For production workloads running 24/7, reserved instances are almost always worth it.

S3 Pricing: Cheap Storage, Expensive Transfer

S3 (Simple Storage Service) pricing is straightforward for storage but gets complex with requests and data transfer:

Component Price Example cost (100GB)
Standard storage $0.023/GB/mo $2.30/mo
Infrequent Access $0.0125/GB/mo $1.25/mo
Glacier (archive) $0.004/GB/mo $0.40/mo
PUT/POST requests $0.005/1,000 ~$0.05
GET requests $0.0004/1,000 ~$0.04
Data transfer out $0.09/GB $9.00 per 100GB
The data transfer trap: S3 storage is cheap ($2.30/mo for 100GB), but transferring that 100GB out to the internet costs $9.00 — 4x the storage cost. For applications serving large files (images, videos, downloads), data transfer often becomes the largest S3 cost. Use CloudFront CDN to reduce transfer costs.

Lambda Pricing: Pay Per Execution

Lambda is truly serverless — you pay only for what you use. Costs scale linearly with traffic:

Monthly requests Avg duration Memory Estimated cost
1 million 100ms 256MB $0.20
10 million 100ms 256MB $2.00
100 million 100ms 256MB $20.00
1 billion 100ms 256MB $200.00
Lambda Free Tier: 1 million requests and 400,000 GB-seconds per month — free forever (not just 12 months). Most small-to-medium APIs stay within the free tier. Lambda is often the cheapest compute option for variable-traffic applications.

RDS Pricing: Managed Databases

RDS (Relational Database Service) pricing depends on engine, instance size, and storage:

Instance Engine vCPU RAM Price/hr Monthly
db.t3.micro PostgreSQL/MySQL 2 1 GB $0.017 $12.50
db.t3.small PostgreSQL/MySQL 2 2 GB $0.034 $25
db.t3.medium PostgreSQL/MySQL 2 4 GB $0.068 $49
db.m5.large PostgreSQL/MySQL 2 8 GB $0.171 $123
db.r5.large PostgreSQL/MySQL 2 16 GB $0.24 $173

Additional RDS costs: storage ($0.115/GB/mo for General Purpose SSD), backups (20GB free, then $0.095/GB/mo), and Multi-AZ deployments (double the instance cost for high availability).

AWS Free Tier: What's Actually Free

Service Free allowance Duration
EC2 750 hours/month of t2.micro or t3.micro 12 months
S3 5GB storage, 20K GET/2K PUT requests 12 months
RDS 750 hours/month of db.t3.micro + 20GB storage 12 months
Lambda 1M requests + 400K GB-seconds Always free
DynamoDB 25GB storage + 25 WCU/25 RCU Always free
CloudWatch 10 custom metrics + 10 alarms Always free
CloudFront 1TB transfer out/month 12 months
Free Tier expiration: After 12 months, standard pricing applies automatically. A t3.micro running 24/7 that was free jumps to $7.50/month. Set calendar reminders before Free Tier expiration to avoid surprise bills.

Real Cost Examples: Common Architectures

Static Website (S3 + CloudFront)

Component Usage Monthly cost
S3 storage 1GB $0.023
CloudFront transfer 10GB $0.85
Route 53 1 hosted zone $0.50
Total $1.37/mo

Small Web Application (EC2 + RDS)

Component Instance Monthly cost
EC2 t3.small (2 vCPU, 2GB) $15
RDS db.t3.micro (PostgreSQL) $12.50
S3 50GB storage $1.15
Data transfer 100GB out $9.00
Total $37.65/mo

Production API (EC2 + RDS + ElastiCache)

Component Instance Monthly cost
EC2 t3.large (2 vCPU, 8GB) $60
RDS db.t3.medium (PostgreSQL) $49
ElastiCache cache.t3.micro (Redis) $12.50
S3 100GB $2.30
Data transfer 500GB out $45
Total $168.80/mo

Hidden Costs That Surprise New AWS Users

1. Data Transfer (Egress)

Data transfer OUT of AWS to the internet costs $0.09/GB after the first 100GB free. Transferring 1TB costs $90. This is often the largest hidden cost — especially for APIs serving images, videos, or large JSON responses.

2. NAT Gateway

If your EC2 instances need internet access from private subnets, you need a NAT Gateway at $0.045/hour (~$32/month) plus $0.045/GB processed. For small applications, this alone can double your infrastructure cost.

3. Elastic IPs

Elastic IPs are free while attached to running instances. But if you stop an instance and keep the Elastic IP allocated, AWS charges $0.005/hour (~$3.60/month) per unused Elastic IP.

4. CloudWatch Logs

CloudWatch Logs ingestion costs $0.50/GB. Verbose logging from applications can quickly add up. A busy application generating 10GB of logs/day costs $150/month just for log ingestion.

5. Secrets Manager

AWS Secrets Manager costs $0.40/secret/month plus $0.05 per 10,000 API calls. For applications with many environment-specific secrets, this adds up. Consider AWS Systems Manager Parameter Store (free for standard parameters) as an alternative.

Get notified when AWS changes pricing
PricePulse monitors AWS and 80+ other cloud services. Get instant alerts before cost changes affect your budget.
Set up price change alerts →

AWS vs Google Cloud vs Azure: Quick Comparison

Service AWS Google Cloud Azure
Small VM (2 vCPU, 2GB) $15/mo (t3.small) $10/mo (e2-small) $15/mo (B2s)
Object storage (100GB) $2.30/mo $2.00/mo $1.84/mo
Serverless (1M requests) $0.20 $0.10 (after 2M free) $0.20
Managed DB (small) $12.50/mo $10.95/mo $12.50/mo
Free tier 12-month + always-free Always-free (most generous) 12-month + always-free

Google Cloud is generally 10-20% cheaper for compute and has a more generous always-free tier. AWS has the broadest service catalog (200+ services) and the most mature ecosystem. Azure is competitive for Microsoft-heavy shops.

See our detailed comparison: AWS vs Google Cloud vs Azure Pricing 2026.

How to Reduce Your AWS Bill

  1. Use Reserved Instances: For production workloads running 24/7, 1-year reserved instances save 30-40%. 3-year commitments save 50-60%. A t3.small on-demand costs $15/mo; 1-year reserved is ~$10/mo.
  2. Right-size instances: Use AWS Compute Optimizer to identify underutilized instances. Downsizing from m5.xlarge ($138/mo) to t3.large ($60/mo) saves $936/year if utilization allows.
  3. Use Spot Instances for batch work: Spot instances cost 60-90% less than on-demand. Use them for batch processing, CI/CD, and non-critical workloads that can handle interruptions.
  4. Optimize data transfer: Use CloudFront CDN to serve static content. Transfer data between AWS services in the same region (free). Avoid cross-region data transfer when possible.
  5. Set billing alerts: Use AWS Budgets to set spending alerts. Get notified at 50%, 80%, and 100% of your budget threshold. This prevents surprise bills from misconfigured resources.
  6. Clean up unused resources: Delete unattached EBS volumes, release unused Elastic IPs, terminate idle EC2 instances, and clean up old S3 versions. These "zombie resources" often cost $50-200/month unnoticed.

Monitor AWS pricing automatically — free

PricePulse tracks AWS and 80+ other cloud services. Get instant email or channel alerts when prices change — so you're never caught off guard.

No credit card · Instant alerts · Cancel anytime

Found this useful? Share it.

📊 How much is your team overspending?

Use our 2023 vs 2026 comparison tool to see your exact extra annual cost on SaaS price hikes.

Calculate My Team's Overspend