Best practices for cloud cost management with FinOps
August 23, 2022
Well-executed cloud cost monitoring is a mandatory goal for all modern IT companies that have transitioned their business to a cloud-based strategy. The challenges of executing cloud cost control are also one of the main reasons why companies choose to delay modernising their business practices and embracing cloud technologies.
In the past, infrastructure costs used to be single purchase decisions. Now that computing resources are moved to the cloud, they have become a part of the operating budget. And for many companies, adopting this new approach to cost management can easily feel even more overwhelming than the actual cloud transformation.
Because cloud costs are fundamentally different from traditional infrastructure costs, decision makers often end up comparing apples to oranges when making verdicts about aligning their business practices.
How Cloud Costs Differ From Traditional Infrastructure Costs
As you can see, investing in self-built infrastructure may feel like a safe and easy to understand strategy for the financial department, but in reality this can mean spending much more money than necessary on upfront, additional and hidden costs such as maintenance, staffing, supporting currently unused resources, etc.
What Is Cloud FinOps
For digital companies, most of the customer interactions are no longer single purchase decisions. Modern business metrics can predict a variety of behaviours that are extremely profitable for the company, but also costly in terms of using up infrastructure resources. This calls for a more complex and flexible equation for determining which costs are actually justified and support your major business goals.
The easiest way to solve this equation is to push your organisation to adopt the cultural practices of FinOps. It’s a way for teams to manage their cloud costs locally, without constant central approvals.
FinOps best practices prescribe that everyone takes ownership of their own cloud cost monitoring and optimization. This lets each team gain more financial control and predictability, and put all focus on faster product delivery. With modern practices, this will actually mean more transparency to your cloud costs - giving you detailed understanding about where exactly your expenses occur.
Why Is FinOps Important for Agile Teams?
If your organisation is striving for agile practices, the old ways of cost management can put a heavy handbrake on your in-team flexibility. If your teams cannot make their own decisions about using infrastructure, they are not independent in any of their work.
Making your teams plan infrastructure costs ahead while checking in with every single cost item will radically slow down your development. It will neutralise all possible gains obtained from your diligently implemented agile practices.
How to Implement FinOps?
To achieve effective cloud cost optimization, the teams must be supported and incentivised to adopt the FinOps mindset. Both of the following conditions must be established to see any results:
The team needs to have independence to make their own financial decisions about cloud cost management
At least one of their performance metrics needs to be directly related to the cost and benefit ratio of the services they provide.
Simply capping a team’s expenses is not ideal. Unlocking skyrocketing earnings usually requires more money spent as well, and rigid cost control policies can lead us to miss some great business opportunities.
Of course, the teams should be supported by a central group with specific expertise to prescribe and coordinate company-wide policies, introduce suitable metrics, and keep an eye on the grand scheme of things.
To make sure that gathering overwhelming amounts of granular data does not become a goal of its own, all changes should be driven by a practical question or a business need. Implementing FinOps is mostly about changing your whole company culture, and this cannot be done without having the full management on board with this new strategy.
You should involve all relevant parties when introducing FinOps to your organisation. Make sure you get the CFO or finance manager and procurement lead actively involved, as you won’t achieve meaningful changes when it’s just the development team sitting at a table.
How to Start With Cloud Cost Management
Building a system for cloud cost monitoring and optimisation is usually an iterative process, never a one-time “big bang” project. As with any other organisational change, you cannot expect instant results with all people getting on board at the same pace.
Start small and simple and grow with your understanding and capabilities. It is not necessary to incorporate all of your teams in the first iteration.
Start with a single system, learn how your method works out, and adjust whenever you discover a need for change. Once you have reached an understanding of what works for your business, expand the monitoring and optimisation to further systems.
The Finops Foundation suggests that the implementation journey should consist of three iterative phases — Inform, Optimize and Operate.
Once you’ve taken the major decision to sort out your cloud cost management, the first step should be figuring out the relevant cost centres.
Very often the most informative cost centres are not technical - knowing the costs of a certain server or database will not help you make the right business decisions. Instead, you should map out the costs of your separate products and services. This will let you match their costs with direct benefits later down the line.
Once you have a clear map of the most appropriate cost categories for your business, it’s easy to tag all cloud resources accordingly.
Be decisive about the level of detail you need, and limit the number of categories to what actually makes sense. Producing extremely granular data can be a major waste of time and resources if the information isn’t actually useful for answering questions or making business decisions.
Every sustainable business needs to keep costs and earnings in balance. The important question here should not be “how to reduce cloud costs”. Spending money is not necessarily a bad thing when accompanied by proportional results and earnings. The optimal strategy is to manage all spendings wisely, and keep in mind the ratio of costs and benefits.
In general, there are two main tools for cloud cost control:
It’s important to know you’re about to run out of budget before the billing cycle is over. Set up notifications to fire early enough so you have time to react.
While it’s tempting to set up service shutdowns at a certain cost limit, this strategy should be wisely targeted at accidental costs only. Shutting things down is not usually the best response when expenses are caused by customer demand.
When teams are allowed to take ownership of their cloud computing costs, they can make sure all costs are really relevant and justified.
Most of the optimisation activities fall into either of the following category:
Right-sizing - tailoring the cloud service to closely match your actual needs, and making sure the company is not paying for an overkill service.
Bulk purchases - signing long-term contracts for the vitally necessary services to get a better price from the service provider.
Uncovering the appropriate optimisation opportunities requires technical knowledge - another reason why this process should be done locally with the developers involved.
Keep in mind that managing cloud services is a skill set of its own, and requires experience and knowledge, ideally with the exact service provider you are using. The task of optimising costs shouldn’t be dumped on the shoulders of any developer. If necessary, get a specialist involved or partner with an expert who is able to match your needs with the opportunities of your cloud provider.
Whenever there are changes in the company strategy or business environment, FinOps should also re-evaluate its systems and do adjustments when necessary. No matter if the cause of change is new competitors, radical changes in input costs, or something else - it’s important to make sure that your FinOps setup always serves your business goals in the current moment.
Don’t forget why you started the FinOps transition in the first place - your ultimate goal is to empower your teams to align technology with your business goals and enable cloud costs transparency for the whole organisation.
Your work environment is ever-changing, and setting up FinOps is never a one-time project. It’s about making continuous improvement on your company culture. This means that you need to be actively learning and adjusting your processes whenever you determine possibilities for improvement.
When you’re not sure how to get started with your journey towards FinOps, or if you’d prefer to involve top experts for best advice - do not hesitate to get in touch with Entigo to see how we can help!
Type of expenses
Using Cloud Services
Matching your needs
Infrastructure investments consider the needs ahead, leaving a lot of resources originally unused. You immediately pay for the resources you don’t need for another few years.
You only pay for what you need and use today.
Usually a fixed, large lump sum of money
Variable small costs
There is no way of knowing whether the initiative pays off during its lifetime
No need to take on risky investment decisions without being sure about the success of your product.
Timing of costs
Absolute costs: you can plan ahead the exact time of your purchase.
Recurring costs: you need to pay the bills when they arrive, after the expense has already occurred.
What costs are usually accounted for
Price of purchased devices only. Usually maintenance, setup or repair costs are not considered.
Use of most up-to-date devices + electricity, maintenance, security certificates, ongoing development work, staff expenses
Level of control
Feels like the costs are strictly under control as the company now owns the purchased hardware.
Feels like the costs are only partially controlled, arising from the fear of unexpected expenses.