Over the past several months, CoLab executives and customers have told us that managing cloud spend is a big challenge.
And it’s no wonder – cloud spend is rising, predicted to reach $791 billion by 2028 and growing at a 17% CAGR. McKinsey reported that enterprises believe 30% of their cloud spend goes to waste yearly, leaving hundreds of billions of dollars on the table.
Managing cloud spend is a tricky problem. There are often multiple stakeholders involved, all with different metrics they’re responsible for managing. Finance may be interested in improving gross margins, while the engineering and product teams are focused on maximizing their product’s performance and reliability.
To make matters more difficult, the metrics and tooling associated with managing the cloud and managing spend are siloed, and might speak the language of one department, but not the other.
To bring these competing objectives together, a new domain has emerged. “FinOps” (a portmanteau of “Finance” and “DevOps”, according to the FinOps Foundation) helps companies of all sizes adopt the tools and practices to reduce spend without sacrificing performance.
What is FinOps?
FinOps coming into the zeitgeist is like the rise of DevOps in 2007 to 2008, when developers (those writing the code) and IT (those deploying and supporting the code) were fundamentally at odds with each other – often having competing goals, different department heads, and even sitting on different office floors from each other.
As with DevOps, FinOps has brought a flurry of best practices and new technologies to help companies solve this problem. In this FinOps primer, we outline our views of some best practices for managing cloud spend – from understanding where you are today, getting some quick wins under your belt and ultimately creating a culture of FinOps at your organization.
Understand your spend and benchmark against your peers
The first step in your FinOps journey is understanding where you sit relative to your peers’ cloud spend. The two key questions include:
- How much do I spend today on cloud services, and what will I spend in the future?
- What do companies similar to mine spend on the cloud?
To answer the first question, consider using tools most cloud providers include in their offerings. AWS Cost Explorer, GCP Cost Management and Microsoft Cost Manager are good places to start. If you’re using Kubernetes, Kubecost and CAST AI are popular tools to get visibility into spend and proactively monitor costs.
For multi-cloud environments, “Mega Bill” platforms like FinOut and Vantage are helpful to consolidate cloud spend from all of your different providers (including Snowflake, Kubernetes, AWS, GCP and Azure). These tools even give you a breakdown of spend per customer and per feature, revealing insights about cloud unit economics and gross margin per customer.
Getting a meaningful breakdown of spend from the visibility tools mentioned above often relies on manually tagging workloads in the cloud to identify ownership and attribute costs to teams. To make this process easier, create a solid tagging system that uses a standardized set of tags that your engineers can use. Systems should balance specificity with usability, and update tags on a regular basis to reflect changes.
Consider having one team member block off time once per quarter to do a quick hygiene check of tags, and make sure the set of labels you’re using are up-to-date. FinOps World has a helpful framework to build your tagging policy.
Now that you have a solid view into current cloud spend, it’s time to get a forecast of future spend. All of the major cloud providers offer a cost calculator to help you make forecasts. Typically the most suitable person to help create this model is the engineer who will be deploying the cloud resource, as they will have the most in-depth subject matter expertise.
Depending on the maturity of your organization, you might think about trend-based forecasting using historical data to predict future spend. Unfortunately, trend-based forecasting cannot capture events like launching a new feature, entering a new geography or spikes in demand.
But there’s another tactic to tackle this: driver-based forecasting, which fills gaps in trend-based forecasting. It uses key performance indicators (or “drivers”) to predict future spend, like new features launched, new users, regional expansion and reverse-demand drivers like churn and divestments. AWS has a great blog that goes into more detail of how to calculate driver-based spend.
Next, explore how your peers compare in terms of spend. The FinOps Foundation has some helpful benchmarks to assist your evaluation, which account for size of organization and vertical.
Getting some quick wins using existing (and new) technology
Once you have a solid understanding of your cloud spend and how it stacks up against similar companies, you may want to consider some optimization strategies.
To get started, you may consider getting someone on your engineering or DevOps teams to investigate low-hanging fruit opportunities, like taking advantage of your cloud providers’ savings plans or capacity reservations like AWS Reserved Instances. Densify has some great tips to help you start with your optimization efforts, including maximizing your software licensing spend and monitoring your cost anomalies.
Monitoring costs on an ongoing basis can help you identify seasonal trends and spikes outside of your spend. You may consider establishing a cadence to review and monitor costs, or assigning a “Cloud Custodian” that monitors any anomalies and remediates any issues.
Next, it might be helpful to think about leveraging new vendors that help autoscale or manage your instances. Many vendors are tackling this in several major areas (Optimize, Utilization and Continuous Improvement Rates), which you can see in our market map below.
To start your evaluation of different optimization vendors, reflect on your current cloud architecture. Many optimization vendors only focus on one specific piece of infrastructure, so knowing which ones are relevant for you is key.
Creating a culture of FinOps at your organization
Finally, building a shared culture of FinOps at your organization is critical for longevity of cloud spend management. A cross-functional working group or “guild” of business leaders, finance and engineering can come together to address the cloud spend problem.
Think about asking this group to align on a common set of objectives, KPIs, or OKRs around spend. Each member should create an objective that their department can influence, such as “As a Finance leader, I will drive budget and forecast accuracy.” The FinOps Foundation has some great examples of department commitments here.
As with any cross-departmental initiative, developing a shared language about metrics and goals is critical to its success. Create an easily accessible dashboard that aligns all of your objectives that each team member understands and update it regularly.
FinOps is a team effort that requires a full understanding of your benchmarks and a commitment to track and update over time. It’s important to ensure your FinOps initiatives don’t fall by the wayside after you get started. By aligning everyone on your objectives and why this is important, you can embed FinOps into your process and your culture and stay efficient over time.