Discover

Explore CloudZero


icon1
Overview

Discover the power of cloud cost intelligence.

why-change-icon
Why Change?

Give your team a better cost platform.

services
Services

Give engineering a cloud cost coach.

pricing-icon
Pricing

Learn more about CloudZero's pricing.

demo-icon
Demo

Request a demo to see CloudZero in action.

services
About

Learn more about CloudZero and who we are.

Features

Explore by feature


Cost Anomaly Detection Icon
Cost Anomaly Detection

Build fast with cost gaurdrails.

Budgeting Icon
Budgeting And Forecasting

Drive accountability and stay on budget.

Discount Optimization Dashboard Icon
Discount Optimization Dashboard

Manage all your discounts in one place.

CloudZero Dimensions Icon
CloudZero Dimensions

Organize spend to match your business.

Featured

How SeatGeek Decoded Its AWS Bill and Measured Cost Per Customer

Read customer story arrow-right
role-icon

By Role


Engineering

Enable engineering to make cost-aware development decisions.

Finance

Give finance the context they need to make informed decisions.

FinOps

Decentralize cloud cost and mature your FinOps program.

use-case-icon

By Use Case


provider-icon

By Provider


Amazon Web Services (AWS)

Measure, monitor, and optimize cloud spend on AWS.

Snowflake

Combine cloud cost intelligence from AWS and Snowflake.

resources-icon

Learn


Blog

Discover the best cloud cost optimization content in the industry.

CloudZero Advisor

Compare pricing and get advice on AWS services including EC2, RDS, ElastiCache, and more.

Content Library

Browse helpful webinars, ebooks, and other useful resources.

Cloud Cost Assessment

Gauge the health and maturity level of your cost management and optimization efforts.

Case Studies

Learn how we’ve helped happy customers like SeatGeek, Drift, Remitly, and more.

Featured

Guide: How To Overcome Tagging And Accelerate Cloud Cost Allocation

See guide arrow-right

What Is Cloud Cost Optimization? 15+ Best Practices For 2022

Can’t reign in cloud costs? These practices produce better results than traditional cloud cost optimization methods.

Is your current cloud cost tool giving you the cost intelligence you need?  Most tools are manual, clunky, and inexact. Discover how CloudZero takes a new  approach to organizing your cloud spend.Click here to learn more.

As companies increasingly build in the cloud, cost optimization has become a major issue for many engineering teams. While cloud providers like AWS offer flexibility and easy scalability, cloud costs are often opaque and difficult to track.

In response, many companies that rely on the cloud are adopting cloud cost optimization strategies to gain better understanding and control the costs of their cloud-based systems, while maximizing cloud efficiency and usage. Various platforms, best practices, and solutions that address cloud cost optimization have emerged to support this push.

This guide will focus on the cloud cost optimization best practices that can make or break your strategy. 

What Is Cloud Cost Optimization?

Cloud cost optimization is a combination of strategies, techniques, best practices, and tools that not only help reduce cloud costs but also maximize the business value of using the cloud. 

It involves enhancing cloud cost efficiency by identifying and reducing mismanaged or excess resources, taking advantage of discounts to reserve higher capacity, and rightsizing computing resources to specific applications and workloads in your cloud environment.

What is the difference between cloud cost optimization vs. cloud cost management?

While cloud cost management focuses on allocating, tracking, reporting, and analyzing cloud spend, cloud cost optimization uses those insights to inform how to maximize business value at the lowest cost.

Optimizing cloud costs isn't just about reducing costs; it's also about aligning costs with business goals. An increase in costs is not necessarily a problem if it's accompanied by an increase in revenue. 

An increase in cloud costs is often driven by growth indicators like onboarding more customers or releasing additional features. Yet, these business activities also generate higher revenue — or at least they should. Higher revenue can often translate into higher margins, profitability, and investor appeal in Software-as-a-Service (SaaS).    

In cloud cost optimization, one of the most important goals is to ensure that costs correlate with productive and profitable activities. For this proactive approach to work, we need meaningful data –- what we call cloud cost intelligence.

Yet, how you use that intel could be the key to success or failure of your cloud cost optimization strategy.

In the next section, we will examine best practices for cloud cost optimization and discuss how cloud cost intelligence can help you gain a strategic advantage.

17 Best Practices To Optimize Your Cloud Costs

Follow these best practices to create a cloud cost optimization strategy that links costs to specific business activities so you can tell who, what, why, and how you are spending your cloud budget. 

That cost visibility will then empower you to make trade-offs or pull strings so that you can allocate more to cloud resources with higher ROI and reduce unnecessary costs — or to eliminate cloud waste to the bare minimum. 

1. Set up your account for monitoring

If you haven’t already, set up a master AWS organization payer account. As you create new account members, ensure their cost data rolls up into that master account. Then there will be a single source of truth for the company’s total cloud spend. Separate accounts make it very hard to track cloud costs down the road.

Next, work to capture context. There is a lot of telemetry coming out of AWS, from sources like CloudWatch, CloudTrail, and VPC flow logs. These all provide context as to what’s happening in the system. Your team needs to be sure they’re collecting this context in order to be able to tie it to billing.

Finally, start tracking your cost history. Enabling cost and usage reporting allows review of past spending, and helps create context for identifying anomalous costs.

2. Align your internal budgeting and escalation processes with business goals

A major factor in controlling costs is making sure everyone understands their budgets and goals for each project. Instead of picking an arbitrary number, engineering leaders should have conversations with executives and product leadership to understand cost requirements. 

Requirements should be based on how the products or features will be packaged and delivered (e.g., Will they be a part of a free trial or enterprise plan?). These requirements will need to be referenced as tradeoffs throughout planning and development alongside other requirements, such as speed and resiliency.

3. Make cost a first-class metric

You can do this by promoting the idea of cloud cost within the organization and making it easy for everyone on the development team to see and understand actual costs. Keep cost top-of-mind as engineering decisions are made. To make cost data easy to understand, make sure:

  • It is current.
  • It has context.
  • It can be measured.
  • There is a clear definition of good and bad.

There are several key metrics that pertain to cloud cost:

  • Unit cost - Understand what your unit cost is — is it cost per API call or cost per report? Whatever the unit, everyone should understand what factors affect cost and how unit cost impacts your bottom line. This metric helps inform decisions about how to spend resources in the cloud and how to charge customers, and will help you understand the ROI on your cloud investment. Spending a lot in the cloud isn’t a problem if the return on unit cost is strong.
  • Idle cost - Determine the baseline cost of your system with zero customer load. This is a general measure of your efficiency. Knowing your idle cost can help you determine whether an architecture change is worth the effort in terms of the savings you can realize.
  • Shared infrastructure - Shared systems can offer cost savings or engineering efficiencies, but make it challenging to split costs across multiple teams. Large organizations should consider how they will chargeback or account for shared costs.
  • Cost/load efficiency curve - Calculate your cost/load curve. Do unit costs grow at the same rate as your customer base, or do they grow exponentially as you add customers? If you have an exponential growth curve, you may reach a crossover point where the system is no longer profitable. It’s important to recognize this before it occurs, so you can think through and weigh the solutions for addressing it.
  • Innovation/cost ratio - Determine the ratio of R&D costs to production operations costs. Although there is no expectation of revenue for products in the R&D phase, those products will eventually go to market. If cost has not been considered during R&D, moving to production can be challenging.

Looking for a cloud cost optimization tool that automatically maps costs to the activities that generated them? Schedule a CloudZero demo to see how it works.

4. Define other metrics important to business goals.

It is crucial that everyone in the business whose work impacts cost understands the fundamentals of the business and uses this information to drive decision-making processes.

Everyone should understand the most important goals of the organization at any given point in time. For startups, the goal may be customer growth above all else. For more mature organizations, the goal may be to increase margins. 

When DevOps understands what these goals look like, it’s possible to make day-to-day and high-level decisions that center around what is best for the business alongside what is valuable to customers.

Metric

Questions To Ask / Questions It Can Answer

Cost per feature

  • How much will it cost to build this feature?
  • How much incremental revenue will this feature bring in?
  • Is this feature worth building right now? (Or is there another one that would map to business goals better right now?)
  • How much are legacy decisions costing us?
    • If we were to tackle tech debt, which projects would provide the most “bang for buck” in the short term? Long term?
  • What parts of application affect costs in a disproportionate way?
    • Do they justify themselves via revenue?

Cost per customer and segment

  • How much does a new customer cost us in terms of cloud storage, compute, etc.?
  • How much is each new customer worth in terms of revenue?
  • Are we making or losing money on certain types or sizes of customer?
  • Is there a better way to price offerings to account for costs?
  • Are segments such as enterprise customers higher or lower margin than other segments?

Cost per app

(or cost of platform, etc.)

  • How much does it cost to run our app daily? Monthly? Yearly?
  • How does that cost change with customer acquisition?
  • Are we making money on the app?
  • What are our margins?

Cost per team

  • How much is each team spending in the cloud?
  • Are there opportunities for cost sharing or economies of scale?

Revenue

  • How much is the company making on the platform/app(s)?
  • What is the projected annual revenue?

Cloud cost

  • What is the annual cost of running our entire cloud?
  • How is that expected to grow or shrink over time?

Cost per unit*


*the definition of “unit” varies based on what you are selling and how; see Unit Cost section above

  • What is our cost per unit?
  • What is our revenue per unit?
  • What are the margins?
  • Are there opportunities to reduce cost per unit?
  • Is our business model mapped well to our cost per unit?

Time to market

  • How long does it take to get products / features to market?
  • How much does that cost in terms of man-hours?
  • Are there ways to decrease time to market? (And thus decrease the overall cost of delivery?)

Cost per cloud service

  • How much are we spending on:
    • Storage?
    • Compute?
    • Databases?
    • Other cloud services?
  • When cost spikes arise, which services are affected? (e.g., logging is a common culprit)

Cost of R&D

  • How much are we spending on R&D?
    • Man hours
    • Technology costs
  • What is the potential value of outcomes (products, services, etc.)?
  • What types of R&D efforts are worth our time?

Cost deviations

  • When a cost spike occurs, what is the cause?
  • Is the increased cost balanced out by increased revenue?
  • If not, how can we put a stop to the spike?

5. Get the right data to the right people at the right time

More data is not always better; in some instances, too much data is part of the problem. For this reason, it’s worth understanding what types of data are most useful to which team members and find ways to decrease the noise of extraneous data.

For example, engineers need to be able to compare and contrast. With baseline data and the ability to look backwards, DevOps can understand whether something is broken or where an anomaly has arisen. DevOps organizations also need to be able to slice and dice data by resource and by team, as well as by feature and service. With this type of granular data, they can fix problems faster.

Finance, on the other hand, often cares more about forward-facing projections. For example, they may want to know: “How much will our cloud bill increase if we add six new customers this month?” or “How much can we expect to spend on the cloud before the fiscal year is over?” Finance will care most about return on investment — in other words, how much revenue are we getting from our investment in the cloud?

CloudZero aligns cloud costs to key business metrics, such as cost per  customer or product feature. Our Cost Per Customer report allows teams to see  how individual customers drive their cloud spend and how much specific  customers cost their business. With cloud cost intelligence, companies can make  informed engineering, business, and pricing that ensure profitability.Click  here to learn more.

Ultimately, engineering and finance are looking at the same data, but they need to see it in different formats and be able to organize it in different ways in order to answer the questions that are most important to them in their roles. When you think about surfacing data, you also need to make sure that data is relevant — that you are able to give the right people the right data at the right time.

6. Use data to optimize cloud costs at each stage of the software development lifecycle

Too often, cost only becomes a consideration after a product has been built and launched. Ideally, cost optimization should be a concern throughout the software development lifecycle. 

  • Planning stage - Teams should be able to justify the budget they need and use cost data to inform product roadmap and technical debt-related decisions. This enables them to reduce unexpected spend and quickly adjust the budget when necessary.
  • Deployment and operation - Teams should be able to quickly identify unpredicted spend and adjust.
  • Design and build stage - Teams should have the data they need at hand to make cost-effective architecture decisions. They should be able to report on planned spend and understand their cost of goods sold (the unit cost).
  • Monitoring stage - It should be possible to reassess cost by team, product, or feature and report on operational expenditures and ROI, segmented by business initiative.

Remember, every engineering decision has an associated cost. By shifting cost optimization left, each stage becomes an opportunity to maximize your cloud ROI at the earliest possible. 

7. Make timely cost decisions with real-time analytics 

Team members who have access to the right data at the right time can make timely changes that impact the bottom line and product quality. You don't want to discover cost-saving opportunities too late. 

Rather, you want to observe cost indicators as they change. You'll be able to determine if your costs are trending normally, or if there are any anomalous activities that could lead to overspending. 

If you don't like what you see, you can take immediate action to prevent further losses. Alternatively, you can devote more resources to support the associated workload if it leads to higher earnings.   

You will need a cost platform with real-time reporting and anomaly detection to accomplish this.     

8. Weaponize cloud costs for business strategy

Most organizations default to charging customers based on the metrics they already have access to. In other words, they “back themselves into” their pricing strategy. 

Instead of picking the metrics that are best for the business, they pick the ones they can already track. This makes sense on the surface, but it often becomes an issue when pricing strategies are not tied directly to cloud costs.

For example, a business that offers code scanning might charge by megabyte of code scanned, but maybe charging by line of code would make more sense in terms of business outcomes. Customer growth may lead to nonlinear cost increases in the cloud, and leave the business struggling to make up for the margins.

All features of a product should have a dollar cost associated with them. 

If DevOps starts by setting up the application to measure the metric mentioned in this guide from the very beginning, then it’s possible to develop a very keen sense of how much individual features and transactions cost the business. 

That gives product teams flexibility to creatively price offerings, since they will have a very clear and direct sense of how much it costs to run and scale.

Ultimately, this level of visibility enables companies to create an ideal business model and to unlock new opportunities. If you use cloud cost transparency to your advantage, you can turn price into a competitive weapon that can help you outpace competitors.

9. Capture the big picture in one platform 

With multiple dashboards monitoring petabytes of data from multiple cloud vendors, it is tough to make the right decisions. Instead, use a single source of truth for your most critical information. 

The unified view provides teams with complete, end-to-end visibility into costs. In addition, it makes it easier to zoom in on a specific resource. With this visibility, teams can slice and dice cloud spend and usage per resource to gain granular insights such as cost per customer, cost per feature, and cost per deployment.  

CloudZero allows engineering teams to drill down and inspect the specific  costs and services driving their product, features, and more. Group costs by  feature, product, service, or account to uncover unique insights about your  cloud costs that will help you answer what’s changing, why, and what you can do  about it.Click here to learn more.

10. Rightsize your cloud computing resources 

Right-sizing involves finding, reviewing, and modifying cloud resources to fit the unique requirements of individual workloads and applications. You can rightsize servers for processing, storage, memory, throughput, graphics, databases, and more. 

Because rightsizing in AWS offers more than 1.7 million combinations, you can use a number of cost tools to get advice on the best instance type for a given use case. While the process might take a bit of time, the results go beyond cost savings to improve performance, thereby improving customer experiences.     

11. Gradually optimize tomorrow’s costs today with cloud-native design

Most organizations migrate to the cloud by rehosting (lift-and-shift migration). The move involves transferring on-premises systems into a cloud environment without modifying them. Rehosting is a fast and cost-saving option, but it may lead to moving on-premises inefficiencies to the cloud, which can lead to runaway costs. 

If time, funds, and skills aren't available to refactor your legacy applications and mission-critical workloads, you can still make incremental design changes to rid them of inefficiencies that could increase cloud waste.

12. Call and keep engineering at the cloud cost optimization table

Engineers can't help save money if they aren't responsible for costs. In SaaS, engineering projects, including development, deployment, testing, and issue resolution, often generate the bulk of cloud costs. 

Without engineers' involvement, it is also impossible to tag resources properly, rightsize them, or eliminate unused ones. As such, it is wise to involve engineering in all cost discussions. 

When engineering has the right cost data, like cost per product feature or cost per deployment, it can determine which architectural decisions maximize business value at the lowest cost to the company.

With CloudZero, engineering teams can view cost per feature or product over  the past few hours, days, weeks, and months. This enables teams to monitor cost  performance and make informed engineering decisions that will help them reduce  or optimize their AWS costs.Click here to learn more.

13. Scoop volume discounts by reserving capacity

Reservation Instances (RIs) are a discount program for businesses that commit to using AWS for one or three years. These discounts can amount to up to 75% savings. Depending on your previous usage and costs, you can estimate whether long-term commitments will result in cost optimization.    

14. Roll with spot instances to optimize costs even more

You can save up to 90% when you choose Spot Instances over AWS On-Demand Instances. However, Spot Instances are not cost-saving for all workloads. A few ideal use cases for Spot Instances include distributed databases, processing big data/machine learning, running CI/CD operations, and powering stateful applications. 

There's also this. Spot Instance prices and availability change. For this reason, you'd need someone or a team to monitor and select the best combination of price and volume to maximize savings and system efficiency.

15. Automate cloud spend optimization 

It is both time-consuming and labor-intensive to identify, review, and monitor ongoing rightsizing and cost-optimization opportunities. Manual processes make it easy for teams to overlook opportunities. This is where automation can help. A good example is AWS Auto Scaling

Modern cost platforms can rapidly scale down resource usage, thus costs, as your application requires fewer and fewer resources. In addition, some tools can terminate EC2 instances based on predefined times or capacity limits. Both measures are hard to take in real-time and manually without compromising performance.      

16. Make continuous cloud cost optimization the new normal 

Once you make cost a first-class metric, the next thing to do is nurture a cost-awareness culture. You can do this by making cost optimization a continuous process along the entire DevOps lifecycle. How?

Standardizing best practices for operating on the cloud can help with this. You can then assign cost governance responsibilities to a specific person or group to ensure accountability, consistency, and continuous improvement. 

The goal is to maintain an efficient cloud system that does not rack up unexpected costs without anyone noticing until they receive a surprise cloud bill.

A Modern Cost Optimization Strategy: Cloud Cost Intelligence

The above best practices for cloud cost optimization all require a lot of data — data that is linked to specific teams and cloud features.

While many cloud cost optimization tools can help you reduce cloud spend to some degree, few have the ability to provide the detailed data needed to reasonably administer these best practices. Most cloud cost optimization software products essentially look backwards, and lack the ability to map costs directly to the activities that generate them. 

They may reveal when a cost spiked yesterday (after it has already resulted in an unanticipated expense), for example. But typically, they will not be able to pinpoint the precise event or feature that produced the spike. 

Instead, it’s up to your developers to pore through a lengthy report to determine what caused the spike. The cost anomaly may continue until the source is detected, and developers will waste time looking for the cause instead of focusing on more valuable work.

When you can automatically connect costs to the specific teams, events, features, or even customers that generate them, you will have moved beyond traditional cloud cost optimization to cloud cost intelligence.

Cloud cost intelligence tells you where you’re spending your money and (more importantly) what that means in the context of your business. It continuously delivers the data stakeholders need to detect and fix anomalies — and design and build cost-efficient products — automatically correlated to the activity generating the cost. 

Cost data is connected to individual features, events, and teams, so there is no need to search for the cause of unexpected cost spikes. In short, cloud cost intelligence represents the ultimate in transparency, giving finance, developers, engineers, and any other relevant parties the information they need, when they need it, to control cloud costs.

You can achieve cloud cost intelligence with the help of a solution like CloudZero. CloudZero is the only cloud cost intelligence platform that empowers engineering to understand and control cloud costs. CloudZero aligns costs to teams, customers, unit cost KPIs, product features, and more — so you can stop guessing and know precisely where to pull strings to balance cost and system performance.

To ensure that the right people on your team get the right data at the right time, CloudZero:

  • Pulls in both billing and resource data from across your AWS account to automatically group costs and surface insights.
  • Aligns cost to business metrics, without manual tagging effort.
  • Updates continuously, to give you real-time cost data.
  • Sends automatic anomaly reports to the appropriate teams.
  • Runs cost and resource data through a powerful data normalization and machine learning engine to associate costs with the activity or teams that produced them.
  • Gives a clear picture of how your costs are trending and where you need to focus to control nonessential costs.

Want To See CloudZero in Action?

We’d love to give you a tour! Request a demo today to see how cloud cost intelligence can boost your organization’s bottom line.

STAY IN THE LOOP


Join thousands of engineers who already receive the best AWS and cloud cost intelligence content.