When it comes to cloud migration and embracing public cloud architecture, many companies’ first question is, “How much is this going to cost me?” Unfortunately, unlike a simple market purchase, there is not always one clear answer for enterprises looking to move to the cloud.
AWS costs can be split into three types: computing, storage, and data transfer. Here, we will look at AWS charges for data transfers, AWS regions and availability zones, data transfer costs between different AWS services, tips and tricks to minimize your data transfer costs, and the fact that visibility is foundational to taking control of those expenses. (For more information, see our Guide to Cloud Computing Costs.)
What Are AWS Data Transfer Costs?
Data has been called the oil of this generation, the essential element of all business decisions that cannot be undervalued or gained in enough amounts. The cloud opens up doors for your data, providing analytics and business intelligence tools while also allowing your enterprise to do more with data lakes, mining, and aggregation.
However, moving all of this data is not free. In fact, AWS bandwidth costs can start adding up quickly and, in many cases, make up 30% or more of the total cost of cloud packages each month. Let’s break this down with a few facts about AWS data transfer costs:
– AWS will charge your company to transfer data between AWS and the web as well as within AWS itself between different services such as S3 buckets or EC2 instances
– Data transfer costs can be billed separately each month, or they may be included as part of a package
– For every region in AWS, there will be a different fee for sending and receiving data both inside the same region and to a different region. In some cases, this will be based on capacity. At other times, there will be a flat fee
– In some cases, you will be charged for transferring data one way but not in the other direction. This can happen when you are transferring data across regions when some are free while others come with a charge
– In many cases, you might find that you get charged twice –- once for transferring data out and then again when you transfer it back
– Additional costs can feel like they come out of nowhere such as NAT gateways. These can be significant and difficult to track.
All of these factors create a situation in which your business needs to stay on top of AWS data transfer costs and understand what you’re paying for each month.
This is especially true for businesses working across a hybrid data center as communications from on-premise to cloud can be unpredictable and harder to visualize at the start.
Using AWS Regions to Reduce Costs
Transferring data from the Internet to AWS is free. However, when you do the opposite, the costs will vary depending on the region. While many businesses will make a knee-jerk choice – choosing the data center location that is closest to their physical location or customer-base – it can pay to think about where your S3 buckets will be located.
The first GB is usually free regardless of where your data is being transferred. But after that, you will be charged per GB. The difference between $0.25 per GB (South America) and $0,09 per GB (US East) is huge, and the change in region may not make a practical difference for your business needs.
At the moment, there are 16 public regions as well as two non-public regions in the US and 3 in China and Japan that require special permission for access.
How to Transfer Data Within AWS
There are two different ways to transfer data within AWS, across regions, or within regions. If you’re transferring data between different AWS services across regions, your costs will vary depending on the source and target regions. Data transfer into one AWS region from another is always free. Costs will come from the outbound transfer of data alone.
To understand data transfer within regions, your business needs to understand availability zones (AZ). Costs will vary on a number of factors, but the only free way to transfer data within regions is to use the same region, the same AZ, and a private IP address. As soon as you use a different AZ, even within the same region, you will start incurring costs for each transfer in both directions – not only for outgoing data.
In zones within regions, prices can spike without businesses knowing that costs are rising at all. Where possible, keeping data transfer within a single AZ is the way to keep costs low overall. Another way is to minimize traffic between different regions.
A Note on Private IP Addresses
Some businesses do not take IP addresses into consideration at all, but a private IP address can save money. Using a public IP address or an Elastic IP address will cost you, but a private IP address is free. Where you need to use a public or Elastic IP, make sure to compress or cache your data to save on how many GBs you will pay for.
Ensure that you have compressed both static and dynamic content, and enforce caching at your own servers as well as CloudFront locations. This will also make transfer faster. Do not forget to automate this behavior for new deployment and production changes so that this is done as standard in your release cycle.
AWS Tools for Reducing Cloud Costs
With a bit of know-how, your business can certainly reduce AWS data transfer costs each month. Smart architecture is one way to get started. Ask your MSP or IT teams to create the best journey for your data, navigating a cheaper path across regions and AZs. Amazon also has some tools that can be used to leverage better data transfer prices.
Amazon CloudFront is a global content delivery network. People can transfer data from EC2 instances to CloudFront for free. For businesses that spend a lot of money transferring media, CloudFront becomes a much more economical option. Once your data is in CloudFront, the external transfer to the web will depend on the region you’re using and the amount of data you need to move. CloudFront has a free pricing tier as well as a discounted rate available for big users.
AWS Calculator. Once you know what is costing you money, you can use the AWS calculator to see what is costing you the most. You can play with regions, resources, and AZs to discover how to improve your bottom line.
Choosing AWS Services with Costs in Mind
Another way to lighten data transfer costs is to think about the services you’re using and how they affect your monthly bill. Data transfer out to the Internet will always be charged, and data transfer in will always be free. Prices differ from service to service in terms of region or AZ costs.
For example, using Amazon Aurora will charge you for data transfer to other regions, but not within the same region. Amazon RDS will charge for both types of transfer. Get familiar with the costs of your services, and use visibility to work out whether you can make intelligent changes.
How much is AWS EC2 Costing you?
As one of the most popular AWS services, architecting your data transfers to find smart uses of EC2 is a great idea. There is no charge for data transfer within the same region from EC2 to S3, Glacier, DynamoDB, SES, SQS or SimpleDB. Within the same AZ, transferring data to RDS, Redshift, ElastiCache, Elastic Load Balancing, and Elastic Network Interfaces is also free.
Remember, by using a private IP address, or if you utilize CloudFront, there will be no data transfer costs no matter the region or AZ
Use Visibility to Take Control of Cloud Costs
Whichever way you slice it, data transfer costs are not straightforward. We have just looked at EC2 – one use of data transfer on AWS – and there are still a dozen variants you need to think about.
Now, multiply that by the number of services you need to get the most out of your cloud journey – and remember that each service will have its own transfer rules.
One of the main problems for enterprises is a lack of visibility. They receive a complex invoice at the end of each month that outlines data transfer costs across all their services and without clarity into how this translates to a real live data center environment. When your enterprise wants to save money without losing the benefits of the cloud, it is stuck.
Deciphering these invoices means giving your business an accurate, real-time view of your data transfer costs that will uncover the exact services and servers that are having the biggest impact on your bottom line. Once this is uncovered, the business can make smart changes to reduce costs without causing latency errors or other performance issues. The best visibility tools will include:
– Accurate and real-time information. See what is happening with your cloud instances as it happens, with no blind spots. In contrast, raw data from invoices will always need translating before it can be valuable
– Enhanced cloud ability. Isolate the servers that are responsible for traffic or high costs, and right-size your cloud instances to reduce costs and optimize performance
– Full breakdown. Use a “single pane of glass” approach to costs and communications that will quickly reveal wasted resources that an invoice would never show. Use a visible map to get even non-technical stakeholders on board with your strategy
– Simple integration. Do not use agents or credentials that make it hard to onboard or slow down performance. Be able to see a full network map with one click
• Forecasting support. Plan for migration or cloud changes by optimizing performance ahead of time. Scale up when you need to improve performance or reduce the reserved instances where you’re paying unduly.
The right visibility tool will be your foundation for taking control of your data transfer costs by giving you all the information you need to architect your network for insight and success.
Need to correlate your real-time usage with AWS transfer costs? Right-size your cloud? Learn how Faddom can help you to right-size your cloud by mapping your entire environment in less than an hour.