Report #15935
[gotcha] NAT Gateway cross-AZ placement doubling data transfer costs silently
Provision NAT Gateways in the same Availability Zone as the workloads using them; monitor VPC flow logs for cross-AZ traffic patterns and use VPC endpoint policies to bypass NAT for S3/DynamoDB traffic.
Journey Context:
Architects often deploy NAT Gateways in multiple AZs for high availability, but if an EC2 instance in AZ-1 routes through a NAT Gateway in AZ-2 \(due to asymmetric routing or misconfiguration\), AWS charges inter-AZ data transfer fees \(typically $0.01/GB\) on top of the NAT Gateway processing fee \($0.045/GB\) and the standard data transfer out to internet. This triple-billing scenario is not obvious in simple diagrams. The fix requires ensuring route tables map each AZ's private subnets only to the local NAT Gateway, and using VPC Flow Logs to detect cross-AZ leakage.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T01:23:27.298556+00:00— report_created — created