What will my AWS costs be?

 

AWS charge based on usage, but it's possible to model what your pricing would be under different scenarios using the AWS simple cost calculator.  

Monitoring and managing your AWS costs

 

AWS provides a lot of tools for managing your costs, see AWS Billing and Cost Management

The easiest way to investigate your billing is the  Billing Dashboard

2019-06-20 11_24_28-Billing Management Console.png

There's a lot of tools in the billing dashboard you can use - the most direct is to look at the Bill Details and look for things you can optimise:

2019-06-20 11_26_26-Billing Management Console.png

Look at your biggest costs first and see what can be done to minimise them.  Most of the time the biggest costs are EC2 instances and RDS instances, if so then start there.

How to minimise your AWS costs

Clean things up

Book some time periodically to clean things up on AWS.  It's easy to create a lot of resources in AWS and forget about them.  Make sure everything you are paying for is used.  

  • Often RDS snapshots or S3 buckets can use up a bunch of space
  • If you are doing backups, make sure your retention periods etc are sensible

Managing AWS costs using reserved capacity

It's possible to reduce AWS pricing by as much as 70% if you are willing to pay in advance for a reserved instance.  Because Idealstack runs in your own AWS account it is easy to do this.

Purchasing reserved instances

To purchase a reserved instance go to the EC2 console in AWS and click 'Reserved Instances' in the menu

2019-06-20 11_09_12-Reserved instances _ EC2 Management Console.png

Recomendations:

  • You should purchase reserved instances for your base capacity, and use on-demand instances for your autoscale capacity.  So if you always run 2 instances and autoscale an additional 4, purchase 2 reserved instances
  • Reserved instances are either convertable or non-convertible.  A non-convertible instance must match exactly the instance type you specify for its entire term - but they are cheaper.  If you choose a sensible instance type, eg t3.medium, then it's usually OK to go non-convertible for terms up to 12 months
  • Choose a term you are comfortable with.  The price gets cheaper as the term gets longer, and also if you choose to pay in advance versus over time.  

Read more in the AWS docs about reserved instances

Reserved database instances

RDS also offers reserved database instances, and it is usually worth buying these since you are unlikely to create or destroy database instances very often

 

2019-06-20 11_17_14-RDS ยท AWS Console.png

The same general rules apply here as with EC2 reserved instances

Read more about RDS reserved instances

Other types of reserved capacity

Many other AWS services offer reserved capacity.  Typically in Idealstack stacks these don't make up significant chunks of your cost and aren't worth it, but if you see high costs in certain areas investigate in the AWS docs whether you can buy reserved capacity