Billing, Budgeting and Cost Management

Natasha Ong
This is some text inside of a div block.
4 min read

Dollar dollar bills! Let's talk money and managing costs in this topic.

As companies and individual pros like us explore AWS, we might start to wonder how much this is all costing us. Companies, who also have to report their spending to their shareholders and accountants, definitely need a good handle on this!

Here are a few example questions companies (including NextWork) would think about when using AWS:

  • How can we accurately predict our next month's costs? Do we have the tools and data to make informed estimates?
  • If we're expanding to a different city or location, what's the cost of moving resources there?
  • Are we spending too much? Are we managing our budgets well?
  • Woah! That bill was bigger than I thought. What happened this month?

That's why AWS' billing, cost management and budgeting tools are so valuable! They help us answer those questions, are easy to use, and are right on the AWS Management Console too.

Billing & Cost Management Dashboard

The Billing & Cost Management dashboard gives you handy insights into your AWS costs and usage.

It displays current month-to-date spending (i.e. which services have been charging you the most since the start of the month), forecasts for the next month, and service usage, giving you a big picture view of what's happening in your account spending.

Why we love the Billing & Cost Management Dashboard

You can use it to:

  • Pay your AWS bill, monitor your usage, and analyse and control your costs.
  • Compare your current month-to-date balance with the previous month, and get a forecast of the next month based on current usage.
  • View month-to-date spend by service.
  • View Free Tier usage by service.
  • Access Cost Explorer and create budgets. We'll learn about these in a second!
  • Purchase and manage Savings Plans.
  • Publish AWS Cost and Usage Reports.

Here's a sneak peek of a bill in AWS - notice how it's already broken down by region. Super handy for global companies with deployments all across the world!

Cost Explorer

Quick refresher: AWS operates on a flexible, pay-as-you-go cost model, where you're only charged for what you use. No fixed bills here!

Instead, your bill amount changes with the resources you use and how you use them. That's why it's really important to be able to drill down into your bill and see just how you're spending money.

Enter the AWS Cost Explorer, your trusty friend for cost analysis and visualisation (i.e. turning your spending history into graphs and charts).

Example of the AWS Cost Explorer dashboard.

This example of the Cost Explorer dashboard shows monthly costs for Amazon EC2 instances over a 6-month period. The bar for each month separates the costs for different Amazon EC2 instance types, such as t2.micro or m3.large. Now in a glance, you get a sense of which instance types and which months have been more expensive!

Why we love Cost Explorer

  • Cost Explorer has a default report of the costs and usage for your top five AWS services in terms of spending. You can apply custom filters and groups to analyse your data. For example, you can view resource usage at the hourly level.
  • You get 12 months of historical data to track your spending patterns.
  • Customise your reports and group costs using other filters like service, region, or tags*.
*Tags are labels you define that helps you categorise and manage your expenses. Imagine if we could tag every spending in our bank accounts with "groceries", "clothes" and "fuel".

For example, you can tag an EC2 instance and a database with a specific project name. Then you can come into the AWS Cost Explorer, filter by tag, and see all of the expenses with that project.

AWS Budgets

As you're ramping up your AWS resouces, you probably want to make sure you're not spending an amount outside of your control. As with most companies, you want to track costs and make sure you keep within your limits. Introducing AWS Budgets.

AWS Budgets are your trusty companions on the cost management adventure, giving you reminders and alerts if you're spending more than you'd like. We've set up a budget in our first few exercises!

Why we love AWS Budgets

  • You can set budgets for costs or usage, choose your budget amount, and set alert thresholds.
  • Alert thresholds mean you are proactively notified - you can get notified even if you've reached just 80% of your budget, so it doesn't wait until you've already spent too much.
  • Budgets can be shared across AWS accounts within an organisation, making cost management easier and more efficient.
  • The information in AWS Budgets updates three times a day. You'll be getting a pretty accurate measure on how close your usage is to your budgeted amounts or to the AWS Free Tier limits.

Consolidated Billing

Previously you learned about AWS Organisations and how it lets you manage multiple AWS accounts from a central location.

AWS Organisations is making a comeback in this topic with its consolidated billing feature. Think of consolidated billing like putting all your different bank accounts' transactions in one place, making it easier to manage expenses.

The consolidated billing feature of AWS Organisations lets you receive a single bill for all AWS accounts in your organisation. The default maximum number of accounts allowed for an organisation is 4 (but this can increase if you contact AWS Support).

Why we love consolidated billing

  • By consolidating, you can easily track the combined costs of all the linked accounts in your organisation. No need to look at 2-3 different bills, just focus on one!
  • You get detailed breakdowns of the combined spending, so you'll still get a clear picture of where every single dollar of your bill is coming from.
  • Bulk discount pricing! Consolidated billing allows sharing cost savings like bulk discounts, Savings Plans, and Reserved Instances across organisation accounts.
  • Some AWS services provide volume pricing discounts, which means they give you lower prices the more you use the service. In Amazon S3, after customers have transferred 10 TB of data in a month, they pay a lower per-GB transfer price for the next 40 TB of data transferred. So if your accounts' combined usage reaches 10 TB, you unlock the lower price for all your accounts in the organisation.
  • If you have a savings plan in place, or if you are using reserved instances for EC2, it can be shared across AWS accounts in the organisation

AWS Billing Conductor

AWS Billing Conductor is a customisable billing service, which means it helps you set up your own way of calculating and understanding your AWS costs.

Let's say you're running a consulting company that uses various services on AWS. Usage is divided into different teams working on different projects, and you want to understand how much each project is using. These projects are all being run for your clients, so you also want to charge your clients for their AWS usage.

  1. You can use Billing Conductor to create billing groups, which groups together AWS accounts related to specific projects or teams. Each group represents a different project.
  2. For each billing group, you can set up custom pricing rules. For example, you might decide to charge your clients different rates for the compute and storage resources they use. These pricing rules will generate an alternate version of your monthly bill that you can pass on to your client. Note that these pricing rules would not change how much AWS actually charges you.
  3. You can also create and apply one-time or recurring charges or credits to your billing groups. For example, if a project is under budget, you can reward the team with a credit that gets applied either as a specified amount or a percentage of their budget.
  4. When teams log in to the AWS billing console, they will also see a breakdown of costs that aligns with how you've set things up in the Billing Conductor. Each team gets a clear view of their project's spending.

You can also generate detailed cost reports for each billing group using AWS Cost & Usage Reports.

AWS Cost and Usage Report

AWS Cost and Usage Report provides a comprehensive breakdown of AWS charges, helping users analyse spending patterns, track costs, and optimise resource allocation.

What's the difference with AWS Cost Explorer?

  • Cost Explorer is a visual tool that gives you a high-level view of the last 12 months of usage.
  • AWS Cost and Usage Reports are spreadsheets that break down costs by the hour, day, month, product, resource tags, and so on to provide the most granular data about your AWS cost and usage. Cost and Usage Reports can trace back to the start of your AWS account usage. You can also send raw usage data straight to Amazon Athena, Amazon Redshift, AWS QuickSight (a tool that turns data into dashboards and graphs) to process your data.