awsazuregcpdata-transferegresscost-optimization

Data transfer cost across clouds: the line item that varies most

Compute and storage have converged, but data transfer hasn't. Here's the shared structure (ingress free, egress tiered, cross-region charged), where AWS/Azure/GCP diverge, and the universal levers to cut it.

The C3X Team··6 min read

Quick answer

Across AWS, Azure, and GCP the structure is the same: ingress free, internet egress tiered (~$0.08-0.12/GB first tier, cheaper at scale), inter-region and cross-zone traffic charged. Rates and free allowances differ, so the cheapest depends on your egress mix. Data transfer is the cost that varies most between clouds — and the levers to cut it (CDN, co-location, endpoints) are identical everywhere.

Compute and storage prices have largely converged across the big three clouds. Data transfer hasn't — it's the line item where their pricing models genuinely differ, and for data- or content-heavy workloads it's often where the real cost gap lives. Here's the shared shape and where the clouds diverge.

The shared structure

  • Ingress: free on all three.
  • Internet egress: tiered — roughly $0.08-0.12/GB at the first tier, dropping at higher volume.
  • Inter-region: per-GB charge for data between regions.
  • Cross-zone / cross-AZ: often charged (~$0.01/GB) for traffic between zones in a region.

Where the clouds diverge

The details that move the comparison: free allowances (Azure's first 100 GB/month free, for instance), exact tier rates, how aggressively cross-zone traffic is billed, and CDN integration. The per-cloud specifics:

The levers are universal

Whatever the cloud, the ways to cut transfer cost are the same:

  1. CDN for internet content — cache at the edge so repeat reads don't re-egress from origin.
  2. Co-locate chatty services in one zone/region — same-zone internal traffic is usually free.
  3. Use private/gateway endpoints to keep traffic off charged paths (and off NAT).
  4. Limit cross-region replication to data that genuinely needs geographic redundancy.

The multi-cloud tax

Moving data between clouds pays egress on the source every time, with no free inter-cloud backbone. It's a major reason multi-cloud rarely saves money — inter-cloud transfer is a real, recurring cost to budget for, not an afterthought.

FAQ

Which cloud has the cheapest data transfer?

It varies by traffic pattern, but the structure is similar across AWS, Azure, and GCP: ingress is free, internet egress is tiered (roughly $0.08-0.12/GB at the first tier, dropping at scale), and inter-region and cross-AZ/zone traffic carry their own charges. Free allowances and exact rates differ, so the cheapest depends on your specific egress mix.

Why is data transfer the cost that varies most between clouds?

Because compute and block storage have largely converged in price, but each provider structures network charges differently — free tiers, inter-region rates, cross-zone billing, and CDN integration all differ. For data- or content-heavy workloads, transfer is often where the real cost gap between clouds opens up.

Is data transfer into the cloud free on all three?

Yes — AWS, Azure, and GCP all make ingress (inbound data) free. You pay for data going out to the internet, moving between regions, and in many cases moving between availability zones. The asymmetry is consistent across providers.

How do I reduce data transfer costs on any cloud?

The levers are the same everywhere: put a CDN in front of internet-facing content so repeat reads are served from the edge, keep chatty services in the same zone/region, use private endpoints and gateway endpoints to avoid charged paths, and limit cross-region replication to data that needs geographic redundancy.

Does going multi-cloud increase data transfer cost?

Yes, often significantly. Moving data between clouds pays egress on the source side every time, and there's no free inter-cloud backbone. Inter-cloud transfer is one of the main reasons multi-cloud rarely saves money — budget it as a real, recurring cost.

How does C3X help with data transfer cost?

Transfer is usage-driven, so C3X models it from expected GB in c3x-usage.yml and prices the resources that generate it across all three clouds, letting you attribute egress to the architecture and compare transfer-heavy designs before deploying.

What to do next

Transfer cost rides on how your architecture moves data, so attribute it to the resources and model the volume. C3X prices resources across AWS, Azure, and GCP and takes transfer volume from c3x-usage.yml, so you can compare transfer-heavy designs — and clouds — before committing. The quickstart runs it in minutes.

Try C3X on your own Terraform

Free and open source. No API key required. One command to install, one command to estimate.