Live pricingverified 2026-06
Ingress · the free directionUpdated 2026-06

Is cloud ingress free? Yes, with four exceptions.

Data ingress (inbound transfer from the internet) is $0.00/GB on AWS, Azure, Google Cloud, Cloudflare R2, and Backblaze B2. Uploads, inbound API calls, and restores cost nothing on the transfer line. The catch is that NAT Gateways, load balancers, cross-AZ paths, and PrivateLink charge per byte processed in either direction. Use the calculator for the egress side, then read on for when inbound bites back.

Ingress price by provider

The internet-inbound rate is the same everywhere: free. This is the deliberate other half of the egress story.

Provider
Internet ingress
Notes
AWS
$0.00/GB
Data transfer IN to all AWS services from the internet is free, every region.
Microsoft Azure
$0.00/GB
Inbound data transfers into Azure data centers are free.
Google Cloud
$0.00/GB
Ingress is free unless a load balancer or Cloud NAT processes the traffic.
Cloudflare R2
$0.00/GB
Free ingress and free egress; you pay only for storage and operations.
Backblaze B2
$0.00/GB
Uploads are free; egress is free up to 3x stored data, then $0.01/GB.

Egress is the metered direction. Compare outbound per-GB rates on the provider comparison.

The asymmetry

Free in, paid out, by design.

Free ingress removes all friction from moving data into a cloud. Metered egress then makes moving it back out expensive, which is exactly what creates switching costs. The bigger your dataset, the higher the wall around it.

That is why optimisation work targets egress almost exclusively. See the 12 reduction strategies, none of which are about ingress.

// UPLOAD

Pushing objects to S3, Blob Storage, or GCS. Free inbound, you pay only for storage.

// API IN

Inbound POST/PUT bodies and webhook deliveries arriving at your endpoints. Free.

// RESTORE

Pulling a backup or snapshot back into the region from an external source. Free inbound.

// REPLICATION IN

The receiving side of cross-region replication. The sending region pays egress; the receiver pays nothing for the inbound bytes.

When inbound data still costs money

Raw internet ingress is free, but these four AWS mechanisms charge per byte processed, not per direction. If your inbound path crosses one of them, the bytes are billed. Every rate below is the same verified figure used across this site.

NAT Gateway processing

$0.045/GBNAT Gateway deep dive

A NAT Gateway charges $0.045/GB on every byte it processes, in both directions. Responses returning to a private subnet that opened an outbound connection are processed on the way back in, so the return traffic is billed even though raw internet ingress is free.

Load balancer data processing

$0.008/GB + LCUHidden costs breakdown

Application and Network Load Balancers charge a per-GB data processing fee (around $0.008/GB on ALB) plus LCU charges, applied to all traffic they handle including inbound requests. This is why a public ALB fronting your service still adds a per-GB cost to received traffic.

Cross-AZ data transfer

$0.01/GB each wayCross-AZ explained

Traffic between Availability Zones costs $0.01/GB in each direction. Receiving data from a service in another AZ is therefore billed on the inbound side. With a typical 3-AZ architecture, roughly two-thirds of internal service-to-service traffic crosses AZ boundaries.

PrivateLink / interface VPC endpoints

$0.01/GBVPC endpoint costs

Interface VPC endpoints (PrivateLink) charge $0.01/GB on data processed plus roughly $0.01/hr per AZ. Inbound traffic reaching a service through PrivateLink is billed even though it never touched the public internet. Gateway endpoints for S3 and DynamoDB remain free.

Related Guides

Frequently Asked Questions

Does AWS charge for ingress (inbound data transfer)?

No. AWS data transfer in to its services from the internet is $0.00 per GB in every region. Uploading objects to S3, pushing data to EC2, posting to an API, or restoring from a remote backup costs nothing on the transfer line item. You only pay for the storage or compute that receives the data, not for the inbound bytes themselves. This is true on AWS, Azure, Google Cloud, Cloudflare R2, and Backblaze B2 alike.

Why is ingress free but egress expensive?

The asymmetry is a deliberate pricing strategy. Making ingress free encourages you to move data into the cloud with no friction. Charging per-GB egress (for example $0.09/GB on AWS for the first 10 TB) then makes it expensive to move that data back out, which creates switching costs and economic lock-in. The larger your dataset grows, the more it costs to migrate away. The EU has examined egress fees as a potential anti-competitive barrier, and zero-egress providers like Cloudflare R2 position the absence of egress charges as a competitive advantage.

Does inbound data through a NAT Gateway cost money?

Yes, indirectly. Internet ingress itself is free, but a NAT Gateway charges $0.045/GB for every byte it processes, in both directions. Responses returning to a private subnet that initiated an outbound connection flow back through the NAT Gateway and are billed at $0.045/GB. So while the raw inbound transfer is free, the NAT Gateway processing fee applies to the return traffic. Workloads that need to receive large volumes should use a public subnet, an Application Load Balancer, or VPC endpoints rather than routing return traffic through NAT.

Is Azure and Google Cloud ingress free too?

Yes. Azure inbound data transfer into its data centers is free, and Google Cloud ingress carries no charge in general. The Google Cloud caveat is explicit: ingress is free unless a resource that processes the inbound traffic, such as a load balancer or Cloud NAT, charges for that processing. The pattern is identical across providers: the transfer of inbound bytes is free, but any managed resource that inspects, balances, or translates that traffic may bill a per-GB processing fee.

When does inbound data actually cost money on AWS?

Four mechanisms charge on bytes regardless of direction, so they apply to inbound traffic even though raw internet ingress is free: NAT Gateway processing ($0.045/GB on all data processed), load balancer data processing (ALB/NLB, around $0.008/GB plus LCU charges), cross-AZ data transfer ($0.01/GB each way, so receiving data from another Availability Zone is billed), and PrivateLink interface VPC endpoints ($0.01/GB on data processed). If your inbound path crosses any of these, the bytes are no longer free even though the internet ingress portion is.

What is the difference between ingress and egress?

Ingress is data flowing into a cloud provider: uploads, inbound API requests, restores, and replication arriving from elsewhere. Egress is data flowing out: downloads, API responses, web content served to users, and cross-region or cross-cloud copies leaving the network. On every major provider ingress is free and egress is metered per GB. Because outbound traffic is the billed direction, cost optimisation focuses almost entirely on reducing egress, not ingress.

Ingress rates confirmed free from official AWS, Azure, and Google Cloud documentation. Processing-fee figures match this site’s verified rate set. Last verified June 2026.

Updated 10 June 2026