Cloud Data Egress Costs: What They Are & How to Reduce Them

Kevin Bogusch | Senior Competitive Intelligence Analyst | January 24, 2024

The costs associated with data egress are an unwelcome surprise many organizations face early in their cloud migration journeys. While cloud services such as virtual machines and storage have fixed pricing, the cost to move data out of the cloud is variable and often unpredictable.

When organizations learn this, they frequently consider re-architecting their applications to reduce the amount of data traveling between network segments, either using techniques such as compression and deduplication or by adding a caching layer to reduce the bits traveling across the wire. Ideally, companies moving to the cloud will design their applications with these considerations in mind to minimize data transfer fees and improve performance.

What Is Cloud Data Egress?

Cloud data egress refers to any information that leaves a cloud provider’s network for another location. That other location could be an on-premises data center, another cloud data center in a different region, an “availability zone” (data center) in the same cloud service, or even another virtual network within the same data center.

Cloud providers vary, sometimes significantly, in how, and how much, they charge for data egress, so it’s important to understand the components that factor into their data egress calculations. Regions, for example, are locations typically consisting of multiple data centers within a tight geographic boundary. Cloud services normally provide ample network connectivity between regions to support highly available, cross-regional applications. Data moving from one region to another is metered and typically charged based on the number of gigabytes of data sent.

Availability zones are the other primary cloud service availability concept. While each cloud provider has a slightly different name for this notion, including “availability domains” or simply “zones,” the concept encompasses multiple data centers in the same geographic region that have diversity in their networking and power providers and, therefore, are unlikely to fail simultaneously. Cloud providers encourage running services across multiple availability zones for high availability, but data moving from one zone to another is metered and may be charged per gigabyte.

Are Cloud Data Egress Costs Significant?

Organizations gain several benefits when moving IT systems into a cloud computing model. Among them are unlocking the business value of modern cloud economics, faster IT improvements, higher levels of availability, and earlier access to new technologies, such as machine learning and artificial intelligence.

But a potentially “hidden” aspect of cloud economics is data egress, which can come in multiple forms. Cloud service providers track and meter network traffic moving from one location in their clouds to another—from region to region, zone to zone, or even one virtual network to another in the same region.

Inbound traffic—that is, data coming into the cloud, aka data ingress—is almost always free of charge, no matter the volume, at every cloud provider. Outbound traffic—data egress—is treated differently. Whether data is headed to the internet, on-premises data centers, offices, or even another cloud region, charges are assessed at varying rates depending on the cloud provider, the specific service, and the network path. Typically, data egress comes at a fixed price per gigabyte up to a certain threshold, with discounts applied for data transmission beyond that level.

Cloud data egress traffic can be standard network traffic from cloud virtual machines to other cloud virtual machines, such as data moving from a database to a business user’s spreadsheet. Another example, and a more significant concern in terms of cost, is traffic related to cloud-hosted storage assets used on websites or in mobile applications. A customary practice for cloud object stores is to house website assets separately from the website application; this improves performance and developer efficiency. In this architecture, a website would load images directly from a cloud object store, such as Amazon Web Services (AWS) S3, Azure Blob Storage, Google Cloud Storage, or Oracle Cloud Infrastructure (OCI) Object Storage, where those files exist as HTTP endpoints, as opposed to storing those files in a web server. When images are loaded directly from cloud storage, the application will incur charges for both read operations on the storage and the network costs associated with transferring that data from the cloud to the internet.

Busy web applications may have instances in multiple cloud regions, and storing their images in a cloud account in a single remote region can incur hefty data egress charges. While a major website or application would likely use a content delivery network (CDN) to reduce costs and improve performance, new or rapidly growing sites may not be architected to use CDNs and so may incur expensive egress charges.

These are just some examples of data egress in cloud applications. Traffic between virtual machines and database instances, virtual network peering, private links to platform-as-a-service offerings, and other architectures may all incur significant egress fees.

Key Takeaways

  • Cloud data egress costs depend on application architecture. By designing systems with data egress in mind and taking advantage of certain technologies, organizations can reduce costs.
  • Understanding how data flows affect egress costs is essential when migrating systems to the cloud.
  • Cloud data egress costs vary based on the service provider and the network path.
  • Organizations that have inherently high data egress costs may find it cost-effective to buy a dedicated network connection.
  • Cloud providers calculate egress costs on all traffic, including platform-based services such as storage and databases.

Why Cloud Providers Charge for Data Egress

Cloud providers charge for data egress to recoup the infrastructure costs associated with building the large networks going into their data centers and the bandwidth between sites, which can cost millions or billions of dollars. Investing in undersea networking, as Microsoft did in 2017 when it built a 4,104-mile undersea cable between the US East Coast and Spain, is one example of cloud providers’ investments in large-scale network infrastructure to connect their data centers.

Cloud providers also continually invest to ensure the reliability and performance of these networks, and egress charges support those investments. Customers benefit from not having to plan and work with multiple providers to develop a global network. While cloud data egress charges can be frustrating, they’re part of the price organizations must pay to take advantage of the worldwide public cloud infrastructure.

Why Cloud Data Egress Costs Look So Large

A significant difference between the public cloud and on-premises deployments is that in the public cloud, all charges are on a single invoice. On the other hand, on-premises deployments typically involve separate bills for storage, servers, networking components, and services that were likely procured from multiple vendors and at different times. Organizations also pay separately for their data centers’ power and cooling or rent for a colocation facility, as well as for various software and support costs. Seeing the equivalent cloud service charges for all that on a single invoice can be a shock to unprepared IT managers.

Additionally, most of the expenses associated with on-premises deployments are fixed, while public cloud providers offer many computing solutions at variable costs. Variable costs can be beneficial because they rise and fall as computing requirements go up and down, so organizations can avoid overpaying for capacity they don’t need. While this variable cost model is often helpful for cloud services with changing demand patterns, misconfigurations or poor design can lead to outsize cloud bills.

How Are Egress Fees Calculated?

Data egress charges are calculated in several ways, depending on the type of service and the cloud provider. However, the basic process is the same.

  1. Each cloud provider has sensors around its services, which facilitates the metering of all data traffic.
  2. Each customer’s volume of data egress is recorded by the sensors and aggregated across all regions by service.
  3. In some cases, customers are allowed “free” data egress up to a specific data volume—for example, 100 GB. Beyond that level, the customer is charged.
  4. Each customer is invoiced for its data egress charges at the end of the monthly billing cycle.

To get a sense of what this could mean in the real world, consider that the median size of all pages on the web was 2,315 kilobytes in June 2022, according to HTTP Archive’s Web Almanac. Suppose a cloud-hosted website comprises median-size pages and receives 10,000 monthly visitors, with each viewing two pages. That website would generate approximately 44.2 GB of cloud data egress every month:

10,000 x 2 = 20,000

20,000 x 2,315 KB = 46.3 billion KB

46.3 billion KB / 1 GB (1,048,576 KB) = 44.155 GB

Next, let’s look at some real-world examples of cloud data egress costs. First is a very simple example based on Azure pricing as of June 2023 for traffic from a web server outbound to the internet.

  1. The first 100 GB per month of outbound traffic is included at no additional charge.
  2. Each GB thereafter costs 8.7 cents.
  3. For 10 TB (10,240 GB), the total cost is $882.18.
  4. After 10 TB of traffic and up to 50 TB, the per-gigabyte cost drops to 8.3 cents. After 50 TB, the cost per gigabyte drops to 7 cents.

Now let’s examine a slightly more complex scenario for an AWS customer. Developers uploaded 1 TB of data to an S3 storage bucket and then transferred 4 TB to an AWS region outside the United States and 2 TB to the internet. The costs as of June 2023 would be as follows:

  1. The data storage cost is $23.55.
  2. Inbound data transfer costs are $0.
  3. The intra-AWS data egress cost is $81.92 (at 2 cents per GB).
  4. The data egress cost to the internet is $184.32 (at 9 cents per GB).

In this scenario, storage costs represent less than 10% of the total monthly data egress charges. The critical point to understand is how much traffic an application or service will generate and what that will cost for the types of services being used. A high-volume website could reduce its spending in the above example by using a content delivery network (CDN) to reduce the amount of traffic flowing directly to the internet. CDNs cache data files closer to the predicted users and in the CDN providers’ own networks, so the net cost of their services is commonly far less than the data egress charges for serving the same files from the cloud every time.

It’s worth noting that Oracle Cloud Infrastructure gives customers up to 10 TB of data egress each month at no charge. So, looking at the AWS example, an OCI customer would pay only $25.24 in data storage fees for the same amount of data egress. Similarly, the $882.18 of network egress fees incurred in the Azure example would be included in the cost of the VM for OCI customers.

5 Ways to Monitor and Manage Data Egress Costs

As seen in the above examples, data egress charges can escalate quickly. This unconstrained cost model means potential misconfigurations, such as connecting to the wrong endpoint of a geo-replicated storage account, can lead to out-of-control cloud bills. So how does an IT team manage this reality?

It’s critical to determine cloud data egress spending sooner rather than later to minimize costs. The following five tips can help:

  1. Design with cost in mind. There are several ways to architect systems to reduce costs. The most common techniques involve monitoring systems for outbound network traffic. Once you identify the systems with the most outbound traffic, you can evaluate techniques such as minimizing data transfer, compressing network streams, and using caching methods, such as CDNs. Setting up alerts that flag unusually high outbound network traffic is a best practice—it’s always better to catch an unbounded charge early in the month rather than get hit with a huge bill at the end.
  2. Monitor data egress costs. All providers offer cloud service expense management (CSEM) functionality that allows businesses to monitor their current spending. Use it to track egress costs.
  3. Tag cloud resources with the cost center. All cloud providers also provide the ability to tag resources with “key: value” pairs—for example, “Cost Center: Finance.” These tags are commonly used for both cloud automation and accounting. Tags cascade onto the customer’s bill, allowing IT to track how much applications cost and cost centers spend.
  4. Create budgets, and set alerts on those budgets. Major cloud providers enable customers to connect a budget to their alerting systems so administrators are notified when costs exceed what was planned. Setting these alerts is especially important for new projects where the early costs may be unpredictable.
  5. Store data near users. This architectural approach may seem obvious, but if users run reports from a database server in the cloud to a local server, significant data egress will occur. In some cases, high-volume egress may be inevitable, especially in the middle of a cloud migration. But it’s important to keep storage location and proximity to users in mind to manage performance and costs. Proximity is also key when storing objects such as website images. Finally, take advantage of caching options to reduce outbound data.

5 Steps to Manage Cloud Data Egress Costs diagram
Focus on designing applications to reduce data egress and then monitor the system’s real-world behavior to avoid expensive surprises.

5 Ways to Minimize Cloud Data Egress Fees

Monitoring and managing egress fees is one challenge. Lowering them is another. To reduce egress costs, enterprise IT teams need to go a level deeper into the technical stack.

1. Use a content delivery network

A CDN reads an organization’s website assets once and then caches them at an edge location much closer to the customer. Using a CDN means that when a customer requests an image or a file from your website, it’s served from the CDN rather than directly from your cloud-hosted web server. The costs of a CDN are much lower than data egress charges, and CDNs allow customers to experience better load times. While using a CDN may require minor changes to application code, the cost and performance benefits are almost always worth it.

2. Compress network traffic everywhere possible

It’s not always possible to compress network traffic, but infrastructure traffic—think VM to VM over a virtual network—can commonly be compressed for a tiny trade-off in increased CPU cycles. The incremental cost of that CPU use is orders of magnitude less than the network egress fees.

3. Choose services carefully

Many cloud services, even within the same cloud provider, provide multiple ways to get nearly identical functionalities. For example, there are almost 20 ways to run a container in AWS. As part of the planning process, organizations should price each approach, including network charges, which can vary significantly.

4. Use a dedicated network connection

A dedicated network connection between the cloud provider and your site can be expensive, but a private link does give you unlimited use of the connection once purchased. For organizations that can’t avoid a high volume of cloud data egress, this investment can actually reduce the total cost of ownership.

5. Move complete applications to the cloud

In a hybrid cloud model, with a mix of on-premises and hosted systems, moving to an “all-cloud” model can reduce the amount of data flowing out of the cloud by locating everything in one place.

These changes can be difficult to implement, especially for production applications. In some cases, they may require application engineers to make significant changes. But the cost savings frequently make those efforts worthwhile. While using a dedicated network connection, such as ExpressRoute and Direct Connect, can require coordination with both the organization’s cloud and network provider, both Microsoft and Amazon price data egress over these direct connections at a discount compared with the rate of normal outbound egress.

Minimize Cloud Data Egress Fees with OCI

Not surprisingly, different cloud providers have different pricing structures. Azure, for example, charges for traffic from one virtual network to other connected virtual networks, even within the same cloud region. Thus, it’s well worth carefully evaluating what your data egress costs might be, especially when first migrating to the public cloud.

Oracle is well aware of the high data egress costs charged by other cloud providers and has worked to make reduced data costs a major benefit of its cloud services. Oracle Cloud Infrastructure (OCI) offers low networking prices that enable enterprises to move, at low cost, significant volumes of data, including services that frequently consume the highest amounts of bandwidth, such as live video streaming, videoconferencing, and gaming. As with other clouds, inbound data transfer is free; however, OCI offers 10 TB of data egress each month at no cost—considerably more than AWS’s 100 GB per month—allowing organizations to save significantly on data egress. Additionally, OCI’s outbound bandwidth costs are up to 25% less than AWS’s, which is a big benefit when you use services that require large amounts of bandwidth.

One of the major cloud economics considerations faced by cloud customers is the bandwidth for data egress from cloud services and networks. The associated costs can be a large surprise on the cloud bill, and the charges can be highly variable. One of the more important aspects of cloud architecture is minimizing egress costs by taking advantage of technologies, such as compression, content delivery networks, and caching layers, that can boost the performance of a site or application while also lowering costs.

5 Actions CFOs Can Take Now to Fuel Profitability and Growth

Discover game-changing tactics, from driving transformation with AI to fine-tuning your M&A strategy and embracing collaborative leadership, to help you navigate today’s challenges—and tomorrow’s—and thrive.

Cloud Data Egress Costs FAQs

Is an egress fee included in cloud storage?

No. A couple factors contribute to the cost of cloud storage. The first and most apparent is the volume of data stored in the storage account or bucket. The second is the number of reads and writes of the data during the billing period. Both factors are affected by the tier (hot, cool, cold, or archive) of the data—the hotter the tier, the lower the cost associated with those read and write transactions but the higher the storage cost per volume of data. These transactional charges are separate from data egress fees over the network.

What are data ingress and egress cloud charges?

Ingress and egress charges are costs associated with data transfer across cloud regions and zones, to and from the internet, and to and from on-premises networks. Data ingress (inbound to the cloud) generally is free, but all providers charge for data egress (outbound from the cloud provider). Egress charges are based on the volume of data and its location, such as the internet, availability zones, and other cloud regions, and are referred to as unbound or unbounded charges, meaning they’re variable and can be an expensive surprise to cloud customers.

Why does AWS charge for egress?

Like other cloud providers, AWS charges for data egress across most of its services to cover the costs of building and maintaining its network. AWS doesn’t include the cost of data egress in the pricing of services. That allows Amazon to charge lower prices on services such as virtual machines and storage buckets. Customers whose applications perform high levels of data egress end up paying the bill for that network transmission infrastructure, while customers whose applications transfer less data pay a smaller proportion of the bill.