On this page
Egress vs Ingress Bandwidth: What's the Difference?
Ingress is data coming in and is usually free; egress is data going out and is billed. Direction, not volume, is what shows up on the invoice.
Quick answer
- Ingress is traffic entering your network or cloud account: uploads, API requests, database writes. Egress is traffic leaving it: responses, downloads, backups, replication.
- Cloud providers generally do not charge for ingress and do charge for egress, which is why the outbound direction dominates the bill.
- Egress is billed per gigabyte after an allowance, and the price varies by destination: internet, another region, or another cloud.
- The same word is used for port speed and for data volume; a 1 Gbps link is capacity, while 1 TB of egress is a quantity that costs money.
- A CDN reduces origin egress by serving cached responses from the edge, but edge egress and cache-miss traffic still cost something.
What is the difference between ingress and egress?
Ingress is data moving into your environment: a user uploads a photo, a client sends a request body, a replica receives writes. Egress is data moving out: the response, a file download, a backup copied to another region, metrics shipped to a monitoring service. The direction is defined relative to your network boundary, so the same transfer can be ingress for one side and egress for the other.
Providers price the two differently for a simple reason: inbound traffic usually consumes their capacity without creating a new outbound path, while outbound traffic leaves their network and may traverse another provider’s infrastructure. That asymmetry is why ingress is commonly free and egress is metered.
| Direction | Typical examples | Usually billed? |
|-----------|-----------------------------------------|------------------------|
| Ingress | uploads, request bodies, DB writes | No, or free tier |
| Egress | responses, downloads, backups, replicas | Yes, per GB |
| Internal | service to service in one zone | Often free |
| Cross-AZ | service to service across zones | Usually billed both ways|
| Cross-region | replication, DR, analytics | Billed at a higher rate |Why is egress the one on the bill?
Because it is the direction that leaves the provider’s network and because it scales with usage in a way that is easy to meter. Every image, video, API response, and backup copy is egress. A feature that seems free in development becomes a line item when a popular page serves a large file to thousands of users.
The rate depends on the destination. Internet egress usually costs more than egress to the same provider’s other services, and cross-region or cross-cloud transfer can cost more again. That is why architectures that replicate data between regions or clouds can have a networking bill larger than their compute bill.
How do you reduce egress cost?
Serve static and media content through a CDN so repeat requests terminate at the edge instead of the origin. Compress responses and use modern image formats. Cache aggressively where correctness allows. Keep chatty service-to-service traffic inside one availability zone rather than crossing zones on every request.
For backups and analytics, prefer same-region storage and lifecycle policies that do not copy data unnecessarily. Check whether a managed service already includes transfer in its price. And measure by destination: a single expensive cross-region path is easier to fix than a diffuse increase in internet egress.
What is the difference between bandwidth and transfer?
Bandwidth is capacity: how much data can flow per second, measured in Mbps or Gbps. Transfer is volume: how much data actually moved, measured in GB or TB. A server with 1 Gbps of bandwidth can transfer hundreds of gigabytes in an hour if it is saturated, and that volume is what the egress line item counts.
Both matter for different reasons. Bandwidth limits how fast a large download completes and how many concurrent users a link can serve; transfer limits the monthly bill. A provider that advertises generous bandwidth may still charge per gigabyte, and a plan with a transfer allowance may throttle after it is exhausted.
Where this bites vibecoders
AI-generated apps often store uploads on the app server and serve them directly, which turns every image view into origin egress. Moving media to object storage behind a CDN is a small change that reduces both the bill and the load on the app. Check the direction of the traffic before optimizing the code.
Where AI coding assistants get this wrong
- Serving media directly from the application server with no CDN.
- Replicating backups across regions without checking transfer pricing.
- Confusing port speed with monthly transfer volume.
- Assuming ingress is free on every provider and service.
- Chatty service-to-service calls that cross availability zones on every request.
- Forgetting that a NAT gateway or load balancer also processes data at a cost.
Checklist
- Identify the largest outbound data paths.
- Put static and media content behind a CDN.
- Compress responses and use efficient image formats.
- Keep service-to-service traffic inside one zone where possible.
- Review cross-region replication and backup copies.
- Track egress by destination, not as one total.
FAQ
Is ingress ever charged?
It can be, depending on the service and provider. Some managed services charge for data processed on the way in, and some appliances charge for throughput in both directions. The common pattern is free ingress and metered egress, but the specific product terms decide.
Does a CDN eliminate egress cost?
No. It reduces origin egress by serving cached content from the edge, but the CDN charges for its own egress or requests, and cache misses still hit the origin. The saving comes from the ratio of edge hits to origin fetches, which is why cache hit rate is the number to watch.
Why is cross-region transfer more expensive?
Because it traverses provider infrastructure between regions and often uses dedicated backbone capacity. The price reflects that path rather than simple internet egress. Architectures that keep data close to where it is processed avoid most of this cost.
How do I estimate egress for a new app?
Multiply the average response size by requests per month, add media downloads and backups, and apply the provider’s per-gigabyte rate. For a media-heavy app, the result is dominated by the largest files, so optimize those first. Estimate before launch, then reconcile against the first invoice.
Related topics
- What Is Egress Bandwidth (and Why It Shows Up on the Bill)?
- Bits, Bytes, and Bandwidth: The Units Behind Every Spec Sheet
- What Is a CDN and Do You Need One?
- Why Is My Cloud Bill So High (and How Do I Find the Leak)?
- What Is a vCPU (and Why Isn’t It a Real Core)?