Skip to main content
Optimization

Data transfer cost

Data transfer cost is what cloud providers charge to move data: out to the internet, between regions, between availability zones, and through services such as NAT gateways. Data coming in from the internet is usually free; data going out rarely is. It's priced per gigabyte, so it grows with traffic and often surprises teams.

In plain English

Think of a warehouse that takes deliveries in for free but charges for every parcel shipped out, and a smaller fee for every box moved between its own buildings. Storage is cheap; it's the movement that adds up.

Formula and worked example

Data transfer cost = the sum, over every path, of GB moved × price per GB

GB moved
= the data sent on one path in the period, such as out to the internet or between zones
Price per GB
= the provider's rate for that path; for internet traffic it falls in tiers as volume grows
Worked example. Northwind Labs' AWS data transfer in March, by path.
Out to the internet: API responses and downloads$2,600
NAT gateway data processing$1,400
Between Availability Zones: services calling each other across zones$1,100
Between regions: replication to a disaster-recovery region$900
Cost of moving data in March$6,000

That's 5.2% of the $115,000 bill, and only the internet line is what most teams think of as egress. The NAT and cross-zone lines come from architecture: an S3 gateway endpoint, which has no charge, takes S3 traffic off the NAT gateway, and keeping chatty services in one zone shrinks the cross-zone line.

Why data transfer cost matters

Data transfer rarely has its own line in a budget, because it isn't a service anyone buys. It's a side effect of architecture: where services run, how they talk to each other, and where their users are. That makes it easy to miss until it's large.

On AWS, traffic between Availability Zones is billed in both directions, as data out of one resource and data into the other, so chatty services spread across zones pay twice for every gigabyte. Traffic between regions is billed where it leaves.

Common mistakes

  • Watching only internet egress. Cross-zone traffic, inter-region replication and NAT gateway processing are often bigger together, and they don't appear under any one service.
  • Sending AWS service traffic through a NAT gateway. Traffic from private subnets to S3 or DynamoDB through a NAT gateway pays NAT processing on every gigabyte. Gateway endpoints for S3 and DynamoDB carry it with no charge.
  • Spreading chatty services across zones by accident. Keep services that talk constantly in the same zone where resilience allows, and put a NAT gateway in each zone that uses one.
  • Leaving it out of design reviews. Data transfer is decided when the architecture is drawn. Estimate it then, alongside compute and storage.

Where to find it in AWS, Azure and Google Cloud

Where to find Data transfer cost by cloud provider
AWSData transfer usage typesIn the Cost and Usage Report, the usage type names the path: Region-DataTransfer-Out-Bytes to the internet, Region-DataTransfer-Regional-Bytes between zones, and Region-Region-AWS-Out-Bytes between regions. Data in from the internet is free.
AzureBandwidthData transfer is billed as Bandwidth. Data in is free; data out to the internet is charged after the first 100 GB a month, and data between regions is charged where it leaves.
Google CloudNetwork data transferIngress is free, though a load balancer or Cloud NAT that processes it may charge. Egress to the internet is priced by network tier and destination, and traffic between regions, or between zones in the same region, is charged.

How CloudYali helps

CloudYali's AWS Data Transfer cost views split data transfer by path, out to the internet, between Availability Zones and between regions, and by the service that moved the data, with NAT gateway hours and data processed in a view of their own.

  • Billing & cost types

    Cost and Usage Report (CUR)

    The Cost and Usage Report (CUR) is AWS's most detailed billing dataset: every charge, down to the hour and the resource, with its usage, rates, discounts and commitment details, delivered as files to an S3 bucket you own. CUR 2.0, created through AWS Data Exports, has a fixed set of columns.

  • Optimization

    Cloud waste

    Cloud waste is cloud spend that buys nothing the business needs: idle resources, over-provisioned resources and commitments paid for but not used. It's measured in money rather than resources, and removing it lowers the bill without changing what users get, which is why cost optimization usually starts there.

  • FinOps foundations

    Unit economics

    Unit economics is measuring cloud cost per unit of business value, such as cost per order, per customer or per API call, by dividing what a product costs by how much it delivered. It shows whether spend is growing because the business is growing or because the product is becoming less efficient.

  • Governance & planning

    Cost anomaly

    A cost anomaly is spend well outside what a service, account or team normally costs, such as a day costing several times its recent average. Anomaly detection compares each day with a baseline learned from history and alerts on the difference, so a runaway job is caught in days, not at the end of the month.

  • Allocation & accountability

    Cost allocation

    Cost allocation is assigning every part of the cloud bill to the team, product or customer responsible for it, using accounts, tags and agreed rules for shared costs. It turns one invoice into numbers each owner can act on, and it is the basis for showback, chargeback and unit economics.

Frequently asked questions

  • Is data transfer into the cloud free?

    Usually. AWS, Azure and Google Cloud don't charge for data coming in from the internet. They charge for data going out, and for data moving between zones and regions inside their networks.

  • What is egress?

    Data leaving a cloud provider's network, usually to the internet. It's the best-known data transfer charge, but not the only one.

  • Why is my NAT gateway so expensive?

    AWS charges a NAT gateway for every hour it runs and every gigabyte it processes. Heavy traffic to S3 or DynamoDB through it is a common cause; gateway endpoints carry that traffic with no charge.

Sources

Ready to optimize your cloud costs?

Start your free trial today and see how CloudYali can help you save.