Skip to content
Intro
7 min

Cloud Egress Fees: The Surprise Bill You Didn't Plan For

Your cloud data transfer costs can spike unexpectedly. Here's why and how to manage them.

Last updated: March 20, 2026

You built your app on AWS. You're paying $150/month for your EC2 instances and RDS database. Then you get your first $900 bill. The line item: "AWS Data Transfer."

Nobody told you that moving data out of AWS—to your users, to a backup location, or even to a different region—isn't free. It's not cheap either.

This is egress, and it's one of the most consistently misunderstood costs in cloud computing.

What egress actually means

Egress is data leaving a cloud provider's network. The inverse—data coming in—is typically free or nearly free. This asymmetry surprises most people.

Think of it like a toll road: getting on is free or cheap. Getting off, especially if you're going far, costs money.

Why SMBs get hit with surprise egress bills

Your backups are going to the wrong place. You set up automated backups to a location outside your cloud region. Every night, 50GB of database backups transfers out. At AWS egress rates of $0.09/GB, that's $4.50/day or $135/month just for backups.

You're serving content from cloud storage. Your app serves images and PDFs from S3. Every time a user downloads something, that's egress. Serve 10,000 files averaging 500KB each, and you've transferred about 5GB out. At $0.09/GB, that's $0.45 per day. Sounds small—until you're serving 100,000 files a day.

You're moving data between regions. Many teams spin up resources in us-east-1 for their app and eu-west-1 for their database. Data moving between regions incurs cross-region egress charges on both sides.

You migrated to the cloud and pulled data in. Initial migration is usually one-way (data going into the cloud). But if you ever need to extract a full database snapshot to analyze locally, that's egress.

Your SaaS tool integrations pull data out. Tools like Segment, Zapier, or data warehousing solutions (Snowflake, Redshift) often pull data from your cloud environment. Each sync is data leaving your network.

Real egress pricing (2025-2026)

AWS:

  • Data transfer within the same region (AZ to AZ): $0.01/GB
  • Data transfer out to internet: $0.09/GB (first 10TB/month)
  • Cross-region transfer: $0.02-0.08/GB depending on regions
  • Data transfer in: Free

Azure:

  • Data transfer out to internet: $0.087/GB (first 100TB/month)
  • Zone 1 (same region): $0.01/GB
  • Zone 2 (some regions): $0.02-0.08/GB

GCP:

  • Data transfer out to internet: $0.12/GB (first 1TB)
  • Cross-region within US: $0.01-0.02/GB

These rates decrease at higher volumes, but for a typical SMB running a web app or SaaS, the base rates are what you're paying.

What can go wrong

A single bad backup configuration can cost more than your server. We've seen cases where a misconfigured backup job running to an external location created $500-800/month in egress charges on a $200/month server.

Content-heavy sites can have egress bills larger than hosting costs. If you're serving a lot of videos, PDFs, or downloadable files from cloud storage, your egress can exceed your compute costs.

Vendor migration attempts can be cost-prohibitive. If you want to leave your cloud provider and your database is 1TB, the egress to download it all could cost $90-120 just to get your own data out.

Cloud-to-cloud transfers add up fast. Moving from AWS to Azure? Every GB costs you on both sides.

How to reduce egress costs

1. Use a Content Delivery Network (CDN). Cloudflare, Fastly, or AWS CloudFront caches your static content at edge locations. Users download from the nearest edge, not your origin server. Egress from your origin drops dramatically.

2. Keep backups in the same region. If your app runs in us-east-1, keep your backups there too. Same-region transfers are 5-10x cheaper than cross-region or internet egress.

3. Compress before transferring. Gzip or zstd your backups before they leave your network. A 50GB database might compress to 10GB, cutting your egress cost by 80%.

4. Use object storage with built-in egress optimization. S3 has features like S3 Transfer Acceleration that route traffic through CloudFront edge locations, potentially reducing costs depending on your traffic patterns.

5. Monitor your data transfer in real time. Set up alerts for unusual egress spikes. Most cloud consoles have built-in data transfer monitoring.

Vendor questions (copy/paste)

  • What will my monthly egress cost be for [describe your data patterns: X users, Y GB database, Z backups per week]?
  • Is there a free tier for data transfers within the same region?
  • What does it cost to download all my data if I want to leave?
  • Do you offer any egress caps or alerts to prevent runaway bills?
  • Are there partner or CDN integrations that could reduce my egress costs?

Minimum viable implementation

  1. Read your current bill's data transfer line item. If it's blank or zero, check whether you're even tracking it yet.
  2. Enable data transfer alerts in your cloud console at $100, $250, and $500 thresholds (or whatever makes sense for your budget).
  3. Move backups to the same region as your primary resources if they aren't already.
  4. Add a CDN (Cloudflare is free tier for most static sites) in front of any content-heavy site.
  5. Audit your integrations that pull data out of your cloud environment monthly.

When to hire help

  • Your monthly egress bill is more than $200 and you don't know why.
  • You're planning to migrate between cloud providers and need to estimate exit costs.
  • You run a content-heavy site (video, downloads) and want a CDN architecture review.
  • You discovered a months-long backup job that's been running to an external location, and you need to fix it.

Egress costs are fixable once you know about them. The problem is they're invisible until they're not.

Related Reading

Need Help Implementing This?

If you'd like guidance tailored to your specific infrastructure, we offer focused consultations. No sales pressure, just practical next steps.

Get in Touch