Knowledge Base Reduce your AWS bill in 2021: 12 ways to cut costs today

Dan Cooper AWS

Spending too much on your AWS bill? Here are some ways to cut costs and optimise your spend in 2021.

One of the great things about AWS is the fact that you pay only for the resources you need, for as long as you need them. However, it is easy to end up paying over the odds for resources that you forget to terminate or because your configuration is less than optimum.

To reduce your AWS bill in 2021, check out these 12 ways to cut costs:

1. Use AWS Cost Explorer and cost allocation tags

Start with AWS Cost Explorer, it will show you which services are costing the most money. Are they the ones you would expect? Look back over the last 12 months and play detective. Have costs changed in line with usage, or are they out pacing it? If you haven’t already, activate Cost Allocation Tags so you can tag resources and track costs for workloads that cut across a number of services.

AWS Cost Explorer chart

2. Size your EC2 instances appropriately (and repeat often)

Consider your baseline usage and decide how to meet the demand using a combination of vertical size (the individual instance type) and horizontal scale (multiple instances). Use a combination of performance testing and CloudWatch metrics to evaluate your decisions, and continue to review the metrics over time to uncover further optimisations.

Example table of EC2 instances

3. Only run the EC2 instances you need

Identify and terminate unused instances. For production workloads, use EC2 Auto Scaling to ensure you have the correct number of instances to meet demand. For non-production environments, implement the AWS Instance Scheduler to ensure your instances only run when you actually need them.

EC2 launch template

4. Leverage Savings Plans and Reserved Instances

If you’re paying On-Demand prices on any instance, you may be able to save up to 72% on costs using Savings Plans or Reserved Instances (RIs). Savings Plans were introduced in late 2019 and provide a discount when you commit to a consistent amount of compute usage (measured in $/hour) for a 1 or 3 year term.

5. Use Spot instances for flexible workloads

Tap into unused AWS capacity using Spot instances at up to a 90% discount on On-Demand prices. Massively scale workloads that can handle interruptions (when that unused capacity is needed elsewhere) - think processing jobs, performance testing, and even web services (you can scale out an Auto Scaling group using a mix of Spot and On-Demand instances).

6. Upgrade existing EC2 instances to the latest generation

Upgrade to the latest generation instance types for better performance and often cost savings. This also provides an ideal opportunity to re-check your instance sizes to ensure they’re not over-sized (see point 2 above).

7. Delete unused EBS volumes and snapshots

Unused EBS volumes and snapshots tend to accumulate quietly in the corner, all the while adding to your AWS bill. Identify and delete the ones you don’t need. For EBS volumes, use the “Delete on Termination” attribute where appropriate; check this in your Auto Scaling launch templates and CloudFormation templates. For EBS snapshots, use the Data Lifecycle Manager to create EBS snapshot policies that limit the number of snapshots you retain.

AWS Lifecycle Policy

8. Release unattached elastic IP addresses

Elastic IP addresses are free providing they’re associated with a resource that is running, they’re the only one attached, and they’re associated with an attached network interface. Release any that fall outside this criteria otherwise you’ll end up paying per hour per address.

9. Use private IP addresses to move data within an AZ

Data transfers within an AZ are free providing you’re using private IP addresses, so use them for transfers rather than public or Elastic IP addresses when it makes sense. Remember, data transfers in from the internet are (generally) free but data transfers out or into another region, are charged. Check the Data Transfer line on your AWS bill to ensure you’re not unwittingly paying too much.

10. Consider using Lambda instead of EC2

Lambda should be your first port of call for compute in 2021 rather than EC2, certainly for new workloads. Serverless may not always fit the bill but where it does, there are cost savings to be found. Remember Red Nose Day 2019, anyone?

Lambda RequestUnicorn

11. Delete unused S3 buckets and objects

Not much more to add to this one.

12. Use lifecycle rules to select the most cost-effective S3 storage class

S3 costs can be ridiculously low but they can also add up at scale. Reduce your S3 bill by selecting the optimum storage class for each object. You can do this manually or by creating a lifecycle rule in a few simple steps.

Lifecycle rule for storage class transition

This is just a selection of ways to reduce your AWS bill but there are more… many more. For help with optimising your AWS spend, including a free audit, please get in touch with us.

Dan Cooper: Allies AWS Principal Consultant

Dan Cooper

CEO and Principal Consultant, Allies Computing Professional Services

Dan has a proven track record in helping customers leverage their data and technology to gain a commercial edge. During his 20-year career, Dan has worked in roles covering solution design, hands-on development, product management and IT strategy within both SME and enterprise orgs. He is an AWS Certified Solution Architect, a Certified Scrum Master and qualified in business analysis, PRINCE2 and ITIL 4.

Receive more great content just like this

Our email newsletter goes out once a month and we will only use your details to send you links to products and articles we think you might be interested in.

You may also like

Live Start Loading NowChatting Offline
Cookie

We use cookies to improve your experience on our site, and to provide a live chat feature. To find out more please read our privacy policy.