Skip to content
AWS logo

AWS Pricing in 2026

Plans, hidden costs, and alternatives compared

Is AWS worth the price?

7/10

AWS dominates cloud infrastructure with 31% market share and the broadest service catalog (200+ services), but that breadth is also its biggest cost trap.

A typical startup running a web app on EC2 + RDS + S3 + CloudFront pays $200-800/month — competitive with alternatives — but costs balloon unpredictably as traffic scales because data transfer, cross-AZ traffic, and NAT gateway fees are rarely budgeted upfront. The free tier is genuinely useful (750hrs EC2 t3.micro, 5GB S3, 1M Lambda requests/month) but expires after 12 months for most services except Lambda and DynamoDB.

AWS is not expensive by default — it is expensive when you do not actively manage costs. Teams that use Reserved Instances or Savings Plans save 30-60%, but teams that run everything on-demand and ignore their bill routinely overspend by 30-40%.

Pricing Plans

Free Trial

Free Tier

$0

  • 12 months free for many services
  • 750 hours EC2 t2.micro
  • 5GB S3 storage
  • 25GB DynamoDB
  • 1M Lambda requests/month

Pay-as-you-go

Usage-based

  • No upfront costs
  • Pay only for what you use
  • No long-term contracts
  • 200+ services available

Savings Plans

Up to 72% off

  • 1 or 3 year commitment
  • Flexible usage
  • Compute and ML discounts
  • Measured in $/hour

Hidden Costs & Gotchas

Data transfer out

First 100GB/month is free, then $0.09/GB. A site serving 1TB/month of assets pays ~$81/month just in egress. CloudFront reduces this but adds its own per-request fees. Cross-region transfer is $0.02/GB — multi-region architectures multiply this cost.

NAT Gateway tax

Each NAT Gateway costs $0.045/hour ($32.40/month) plus $0.045/GB processed. A VPC with 2 AZs running NAT Gateways costs $65/month before any traffic. This catches every team running private subnets — which is the AWS-recommended security practice.

Cross-AZ data transfer

$0.01/GB in each direction between availability zones. Multi-AZ RDS, ECS tasks spread across AZs, and ALB routing all generate cross-AZ traffic. A busy microservices architecture can rack up $50-200/month in cross-AZ fees alone.

RDS Multi-AZ doubles the price

A db.m5.large PostgreSQL instance costs $0.192/hour ($138/month) in Single-AZ. Enable Multi-AZ for production reliability and it doubles to ~$276/month. Multi-AZ is near-mandatory for production but rarely included in initial cost estimates.

EBS storage is not cheap at scale

gp3 volumes cost $0.08/GB/month. A 500GB database volume costs $40/month. But IOPS above 3,000 and throughput above 125 MB/s cost extra. Provisioned IOPS (io2) at $0.065/IOPS/month can add hundreds of dollars for database workloads.

CloudWatch logging costs

Log ingestion costs $0.50/GB. A busy application generating 50GB/month of logs pays $25/month just for ingestion, plus $0.03/GB/month for storage. Most teams do not budget for this until the bill arrives.

Elastic IP charges

As of February 2024, AWS charges $0.005/hour ($3.60/month) for every public IPv4 address, including those attached to running instances. A setup with 10 public IPs costs $36/month for addresses alone.

Support plan costs

Basic support is free but only covers billing. Developer support starts at $29/month or 3% of monthly spend. Business support (recommended for production) is $100/month or 10% of spend up to $10K then lower tiers. A $5,000/month AWS bill means $500/month in Business support.

Free tier expiration trap

EC2 (750hrs t3.micro), RDS (750hrs db.t3.micro), and S3 (5GB) free tiers expire after 12 months. Many startups budget assuming free tier and get surprised by a 3-10x cost jump at month 13. Lambda and DynamoDB free tiers are permanent.

Reserved Instance commitment risk

1-year or 3-year Reserved Instances save 30-60% but require upfront commitment. Over-provisioning RIs for workloads that shrink or migrate wastes the entire commitment. No cancellation or refund — you can sell unused RIs on the marketplace but at a discount.

Which Plan Do You Need?

Startups and scale-ups that need elastic infrastructure growing from zero to millions of users

Enterprise teams already invested in the AWS ecosystem (200+ services, deep integrations)

DevOps teams running containerized microservices (ECS, EKS, Fargate)

Data-heavy workloads: machine learning (SageMaker), big data (Redshift, EMR), real-time analytics (Kinesis)

Our Recommendation

cost Saving

1) Set up AWS Budgets with alerts — 80% of cost overruns happen because nobody checks the bill. 2) Use Compute Savings Plans for 30-60% savings on steady-state workloads. 3) Use Spot Instances for batch processing and CI/CD (70-90% discount, with interruption risk). 4) Review and delete unused EBS volumes, unattached Elastic IPs, and idle load balancers monthly. 5) Move infrequently accessed S3 data to Intelligent-Tiering or Glacier (saves 40-90%). 6) Use VPC endpoints instead of NAT Gateways where possible to avoid NAT fees. 7) Use ARM/Graviton instances for 20% cost reduction. 8) Lambda is free for low-volume workloads (1M requests/month) — use it instead of always-on EC2 for APIs with <100 requests/minute.

enterprise

Negotiate an Enterprise Discount Program (EDP) — commit to $1M+ annual spend for 10-25% across-the-board discounts. Use AWS Organizations with consolidated billing for volume discounts on S3 and data transfer. Run the Well-Architected Review (free from AWS) to identify waste. Consider multi-cloud for leverage in negotiations — AWS discounts improve when you credibly threaten to move workloads to GCP or Azure.

freelancer

Use the free tier aggressively for the first 12 months — it covers a small app comfortably. After month 12, switch to Lightsail ($3.50-10/month for simple VPS) or consider DigitalOcean/Render for straightforward projects. AWS is overkill for a personal portfolio or side project unless you are specifically learning the AWS ecosystem for career purposes.

small Business

For a 5-person startup spending $300-1,000/month on AWS: 1) Enable AWS Cost Explorer and set billing alerts at 80% of budget. 2) Use Savings Plans (not Reserved Instances) for baseline compute — they are more flexible. 3) Put static assets on CloudFront + S3 to reduce EC2 load. 4) Use Aurora Serverless v2 instead of provisioned RDS for variable-traffic databases. 5) Consider Graviton (ARM) instances for 20% cost savings with better performance.

Alternatives to AWS