Free calculator
AWS data transfer cost calculator
AWS charges $0.09 per GB for data out to the internet after the first 100 GB a month, $0.01 per GB on each side when traffic crosses Availability Zones, and $0.02 per GB to most other regions. A NAT gateway adds $0.045 per GB on top. Put in where your traffic goes and see the monthly bill, and what the internet part costs through CloudFront instead.
Estimated monthly data transfer bill
$0
The internet line through CloudFront instead
$0
Prices from the AWS Price List (AWSDataTransfer, US East and Frankfurt files, published 2026-09-16) and aws.amazon.com/ec2/pricing/on-demand, checked 2026-11-01. Internet out: the first 100 GB a month are free across all your AWS services and regions together, then $0.09 per GB for the next 10 TB, $0.085 for the next 40 TB, $0.07 for the next 100 TB and $0.05 above 150 TB. Between AZs: $0.01 per GB charged on the sending side and $0.01 on the receiving side. Inter-region: $0.02 per GB, $0.01 from N. Virginia to Ohio; data coming in is free. NAT gateway (Amazon VPC pricing, AWS Price List published 2026-10-28): $0.045 per gateway hour (730 hours a month) and $0.045 per GB processed, on top of any data transfer. CloudFront (checked 2026-10-19): origin to CloudFront is free, the first 1 TB and 10 million requests a month are free, then $0.085 per GB for the first 10 TB in the US and Europe, $0.01 per 10,000 HTTPS requests; the Pro flat-rate plan is $15 a month up to 10 million requests and 50 TB per distribution. Not included: traffic to S3, DynamoDB and SQS in the same region (free), Multi-AZ RDS replication (free), Direct Connect, Global Accelerator, S3 Transfer Acceleration, PrivateLink and Transit Gateway charges, and other regions' prices.
Why the bill grows
The internet line grows with your users, which is fine, but it grows at $0.09 a GB only when the bytes leave straight from EC2, a load balancer or S3. Behind CloudFront the same bytes cost $0.085 after a free terabyte, and a site that stays under 10 million requests can sit on the $15 flat-rate plan. If the CloudFront box above is much smaller than the internet line, that's usually the first change we make.
Cross-AZ traffic grows with your architecture instead. Spreading app servers over two or three zones for availability is right, but every request from one zone to a database, cache or queue in another is billed twice, once on each side. Chatty services (a cache read per request, a service mesh, Kafka replicating across zones) can make this line bigger than the internet one without anyone noticing, because nothing on the bill says which service sent the bytes.
NAT gateway processing is the line that often shouldn't exist. Traffic from private subnets to S3 or DynamoDB in the same region is free, but routed through a NAT gateway it pays $0.045 per GB. A free gateway endpoint fixes it. The full example, a $388.50 bill brought to $256.46 with no change to the application, is in AWS data transfer costs: which gigabytes you pay for.
If data transfer is one line on a bigger AWS bill, our free cloud cost audit ($0) reads the whole bill, and we cut startup AWS bills for $0 up front, paid from half the verified saving for 6 months.