a
aws billing issues

How to Troubleshoot AWS Billing Issues

Joel Garcia Joel Garcia has been building AllCode since 2015. He’s an innovative, hands-on executive with a proven record of designing, developing, and operating Software-as-a-Service (SaaS), mobile, and desktop solutions. Joel has expertise in HealthTech, VoIP, and cloud-based solutions. Joel has experience scaling multiple start-ups for successful exits to IMS Health and Golden Gate Capital, […]

Analyzing AWS Billing Issues

If you’re running software on AWS, then each month you’ll end up troubleshooting AWS billing issues.

This last month, my AWS bill for one of our internal accounts was higher than expected. Surprise, surprise!

I started to investigate the issues by navigating to my previous months bill from the Billing & Cost Management Dashboard by selecting the Bills section of the menu, highlighted in red.

AWS provides a range of cost management tools that are instrumental in analyzing and optimizing usage. The most frequently used is the Cost Explorer, which empowers users to track and assess their AWS costs over time. With the Cost Explorer, users can identify spending trends, break down costs by service or resource, and generate custom reports. AWS Budgets enables users to establish personalized cost and usage budgets and receive notifications when nearing or surpassing these limits. These tools offer users enhanced visibility into their AWS expenditure and aid in making well-informed decisions to optimize usage effectively.

To start this process on your own AWS account, click here.

AWS Billing Issues
When I click on Bills, the following view defaults to the current month in the Date combobox, so you will want to pick the previous month. The bill that I’m investigating is November 2019, also highlighted in red.
AWS bill management
This specific AWS account has very little traffic on it. We used the account as a staging area for one of our clients that required Kubernetes. The staging area ran in US West (Oregon) and US East (Ohio) so effectively all of the services in these regions should be turned off.

CloudWatch AWS billing issues

Let’s start with the first item on the list, CloudWatch. CloudWatch is turned on at the EC2 instance level. The majority of the CloudWatch charges are coming from Oregon, the region that is no longer required, so I should be able to eliminate this cost by disabling the CloudWatch monitoring.
cloudwatchTo disable the CloudWatch monitoring, I can follow the instructions to Enable CloudWatch monitoring here, and turn off CloudWatch.

To start, I’ll open a new tab to display the AWS EC2 instances in Oregon by clicking on Service from the navigation bar, and then right mouse clicking on EC2, and opening this url in a new browser tab.

The EC2 region will display. I’ll want to ensure that I’m pointing to the right region, Oregon, highlighted in orange. Next, I’ll click on the Running Instances 1 highlighted in red.

AWS EC2 Billing
I’ll select the running instance, click on the Action menu, select CloudWatch Monitoring, and select Disable Detailed Monitoring.
5-AWS-Bill-Issues
Hmm, that’s interesting Disable Detailed Monitoring is turned off. I suppose this isn’t a problem after all, but why was I being billed?
AWS EC2 Instance Terminated Reduce AWS Bill

DynamoDB AWS billing issues

The next service charge on our invoice was for DynamoDB. Let’s take a closer look and see if we can terminate these costs for good!
DynamoDB billing issues
DocumentDB is Amazon’s version of MongoDB. We use DocumentDB to store unstructured data in a JSON format.
In November of 2019, our DocumentDB bill was entirely out of US West (Oregon), which is one of the areas that we should no longer be billed for. A quick glance at our DocumentDB in US West (Oregon) displays that we should no longer be charged for DocumentDB in December of 2019.
DynamoDB AWS billing issues
To further optimize our AWS costs, it is crucial to take a comprehensive approach to managing expenses. The next significant expense to address is our EC2 Instances. For November 2019, more than 50% of the spend was on EC2 instances.
Amazon Dynamo databaseIn the previous section, we successfully deleted the micro EC2 instance, but it is essential to ensure that all unnecessary resources are removed. A quick trip to the VPC dashboard reveals that we still have 2 NAT Gateways operational, impacting our costs.

We have identified that we are incurring charges for an ELB. To address this, navigate to the EC2 Instances view and scroll down to the Elastic Load Balancing section to delete the ELB.

AWS billing issues Oregon westWe also notice that we’re being bill for an ELB. On the EC2 Instances view, scroll down to the Elastic Load Balancing section to delete the ELB.

Moreover, our usage of Amazon’s Elastic Container Service for Kubernetes (K8S) has implications on our costs. Confirming the utilization of resources is essential to avoid unnecessary expenses.

Moving forward, it is crucial to identify and address all cost-driving factors. For instance, we currently have a t2.medium MySQL RDS instance running, which should be decommissioned to reduce costs.

Lastly, AWS is billing us for Hosted Zones that were utilized by our Kubernetes setup. To address this, navigate to Route 53 and remove the Hosted Zones for US-West-2. While the process may be cumbersome due to the single-select limitation in the Admin interface, it is a necessary step to optimize costs effectively.

We’ll navigate to Route 53 to blow away these Hosted Zones for US-West-2. Deleting Hosted Zones via the Admin interface is painful as you can only single select.

At this point, we’ve hopefully cleaned up our problematic Oregon (US-West) zone. Continue to go through your other problems and check back in during every billing period.

AWS Billing Experts

Need some additional help? Reach out to us and we can point you in the right direction!

You might also like…

Joel Garcia

Joel Garcia

Joel Garcia has been building AllCode since 2015. He’s an innovative, hands-on executive with a proven record of designing, developing, and operating Software-as-a-Service (SaaS), mobile, and desktop solutions. Joel has expertise in HealthTech, VoIP, and cloud-based solutions. Joel has experience scaling multiple start-ups for successful exits to IMS Health and Golden Gate Capital, as well as working at mature, industry-leading software companies. He’s held executive engineering positions in San Francisco at TidalWave, LittleCast, Self Health Network, LiveVox acquired by Golden Gate Capital, and Med-Vantage acquired by IMS Health.

Related Articles

AWS Snowflake Data Warehouse Pricing Guide

AWS Snowflake Data Warehouse Pricing Guide

AWS Snowflake Data Warehouse – or just Snowflake – is a data cloud built for users to mobilize, centralize, and process large quantities of data. Regardless of how many sources are connected to Snowflake or the user’s preferred type of organized data used, data is easily stored and controllably shared with selectively-authorized access. Snowflake does offer extensive control over its pricing, though how it works isn’t always clear.

Guide to Cost Factors for Amazon’s RDS Pricing

Guide to Cost Factors for Amazon’s RDS Pricing

Amazon sports a complex pricing model. As simple as the pay-for-what-you-use model sounds, there are several nuances to every service from data used to computing components chosen that can easily let users blow through their entire budget. That’s not to say AWS is an inherently expensive platform and can be adapted to with proper planning and understanding of the contributing factors to billing.

Amazon Elastic Cloud Computing Pricing Guide

Amazon Elastic Cloud Computing Pricing Guide

Amazon Elastic Cloud Computing is the default option for computing on AWS. Outside of outsourced cloud computing options, it is the default service for building, running, and scaling AWS-based applications. As such, EC2 will likely be the main driving force behind AWS bills. Understanding how to control said costs is therefore the most important factor in managing your AWS environment.

Download our 10-Step Cloud Migration ChecklistYou'll get direct access to our full-length guide on Google Docs. From here, you will be able to make a copy, download the content, and share it with your team.