Not All Bytes Are Created Equal
Imagine your company has offices in one building, across town, and in another city. Passing a document to a colleague sitting next to you is free. Couriering it across town costs a little. Shipping it to another city costs more. Sending it internationally costs the most. Cloud networking works the same way — the farther data travels, and the more infrastructure boundaries it crosses, the more it costs.
To optimize costs, you must internalize the hierarchy of data movement prices. The following figures are typical industry averages based on AWS us-east-1 pricing, but the relative ordering holds across all major cloud providers:
| Traffic Path | Example | Typical Cost |
|---|---|---|
| Same AZ, private IP | App → DB in same zone | Free |
| Cross-AZ (same region) | App (Zone A) → DB (Zone B) | ~$0.01/GB |
| Cross-Region | Virginia → Oregon | ~$0.02/GB |
| Internet Egress | App → End User | ~$0.09/GB |
The Golden Rule: Keep traffic as local as possible. Data should only cross a boundary — Availability Zone, Region, or the public internet — if there is a deliberate architectural reason for it.
The cross-AZ cost of $0.01/GB sounds trivial until you run the numbers. A database that replicates 50 TB/month to a standby in another zone pays $500/month just for that replication. A microservices architecture where every service call crosses zone boundaries can accumulate thousands of dollars per month in transfer fees that appear nowhere in the original capacity plan.
The internet egress rate of $0.09/GB is the most visible cost, but it is also the most commonly optimized (via CDNs). The cross-AZ cost is the silent killer — it hides inside "EC2 Data Transfer" line items and is rarely attributed to the specific service causing it.