Data transfer is the AWS cost people understand least, because it is spread across a dozen line items. Every hop a byte can take (same AZ, cross-AZ, cross-Region, internet, NAT, Transit Gateway, PrivateLink, CloudFront) with US East prices and the architecture patterns that quietly multiply them.
AWS does not bill data transfer as one thing. The same gigabyte can be charged for leaving an Availability Zone, passing through a NAT gateway, crossing a Transit Gateway and leaving for the internet, each on a different line of the bill. Knowing the hops is most of the work of reducing it.
Book a free 30-minute call. You'll leave knowing what we'd do first and roughly what it costs, whether or not you hire us.
Chatty services spread across three AZs. Every call between pods or tasks has a two-in-three chance of crossing an AZ. Kubernetes topology-aware routing and keeping caches zonal cut it substantially.
NAT for AWS traffic. ECR image pulls, S3 reads and CloudWatch Logs through NAT pay $0.045/GB for traffic that has a free or cheaper path.
Self-managed replication across AZs. Databases, Kafka or Elasticsearch you run yourself pay cross-AZ for every replicated byte. Managed services often absorb this: RDS Multi-AZ replication and MSK broker replication are not billed as data transfer.
Network Load Balancers with cross-zone load balancing enabled, which is billed as cross-AZ transfer. ALB cross-zone traffic is not.
Serving files from S3 or EC2 directly to the internet instead of through CloudFront.
Logging and metrics agents shipping everything to a vendor outside AWS, paying internet egress on every byte of telemetry.
In Cost Explorer, filter to the EC2-Other service and group by usage type: DataTransfer-Regional-Bytes is cross-AZ, NatGateway-Bytes is NAT processing, DataTransfer-Out-Bytes is internet. VPC Flow Logs, queried with Athena, tell you which sources and destinations make up each number. Do this before redesigning anything; the biggest line is usually one or two flows.
Once a month: what changed in tech that month and what it means for you, from cloud and AI to security and the tools you build with. Every item links to its source. No sales pitch, unsubscribe in one click.
Book a free 30-minute call about it. Bring your setup and your bill; you'll leave knowing what we'd do first and roughly what it costs, whether or not you hire us.
Or keep reading
NAT Gateway Costs and fck-nat: Cutting the Bill, and When to Keep the Managed Gateway
A NAT gateway costs $36.50 a month per AZ before it moves a byte, then $0.045 for every gigabyte, including traffic to S3 and ECR that has a free path. fck-nat is an open-source NAT instance that runs on a t4g.nano for about $3 a month with no per-gigabyte charge. What it costs, what you give up, and how to run it safely.
Read
NAT Gateway Costs in 2026: Regional NAT, Public IPv4 Charges and the Endpoints That Cut the Bill
AWS's regional NAT gateway simplifies multi-AZ networking but costs the same per hour. The savings are elsewhere: free gateway endpoints for S3 and DynamoDB, ECR pulls kept off NAT, public IPv4 addresses at $3.65 a month each, and IPv6 egress that has no hourly charge.
Read
As of October 25, 2026. Provided as is, for general information, and accurate to the best of our knowledge on the date shown. Not legal, compliance, tax, financial or other professional advice. Prices, limits and vendor services change; check current vendor documentation before relying on anything here. Terms of use.