Setting FinOps KPIs helps keep your whole organization aligned toward the same financial goals.
However, it takes more than simply setting a broad, company-wide financial goal and turning every employee loose to work on that goal without more specific directions. It’s far better to come up with realistic and achievable goals tailored toward each person or team that will be responsible for them.
That’s because KPIs should ideally be focused around the typical persona of each team.
Consider the differences between a finance persona, an engineering persona, and a product persona. Finance team members tend to prioritize certain dollar amounts and budget thresholds; engineers would be more interested to measure idle instances and tagged resources; and product teams likely care most about unit costs and how those costs compare to revenue.
This variation in priorities can and should be evident in the different KPIs you set for each department.
The other factor to consider is how you plan to reach your end goal. You can always build new products to drive revenue higher. But sometimes all you need to increase profit is to trim spending in key areas.
The following KPI examples keep strategic cost-cutting as a priority. We have taken care to include at least one goal oriented specifically toward finance, engineering, and product team members.
Use these 6 FinOps KPIs to make progress toward wider margins.
1. Aim For A Consistent 80-90% Reservation Coverage With A Savings Plan
Depending on your cloud provider, a reservation plan may go by a different name. For example, Google customers may be familiar with “committed usage” plans that come with a discount. AWS and Azure customers can opt into reserved instances that cost less than paying for cloud services on-demand.
Regardless of the name, the principle is similar: If you can commit to using a certain amount of resources every month, you can book those resources ahead of time to save money.
Most businesses should aim for 80% reservation coverage to start with. This means 80% of your usage should be covered by reservations. If you can get to 90%, that’s even better. Try not to reserve 100% of your resources ahead of time, however, because you’ll likely end up wasting some resources and therefore paying too much.
The only exception to this “80-90%” rule is if you’re able to prioritize Spot Instances above reservations. This doesn’t work for every business, because spot there are inherent risks associated with Spot Instances.
You may have machines running on one instance for a while and suddenly get a two-minute warning that your instance will be ending.
This isn’t ideal for organizations that need consistent, reliable server access — such as banks, healthcare clinics, and other critical operations — but if your business can handle the risk of machines going down when you’re least expecting it, Spot Instances are an excellent way to save on costs.
2. Strive To Tag At Least 90% Of Your Taggable Resources
Some resources are taggable and others are not. Unless you use a platform like CloudZero, which allows you to conveniently manage even the most stubborn of untaggable resources, there’s usually not much you can do about the untaggable portion. What you can control, however, are your taggable items.
Tagging can be tedious and cumbersome, which is why many companies tend to let tagging policies slide. However, it’s important to tag as many resources as possible so you can tell where your money is going.
Having 90% of your taggable items tagged is a great milestone. Over time, you can always push that percentage higher.
3. Keep Orphaned Resources To Around 5% Or Less Of Your Used Resources
Most businesses have at least a couple of machines running with no one keeping track of what that machine might actually be doing. If a machine isn’t tagged or tracked, it could be running up $100 per month or even per day, with no way to tell whether the machine’s applications are vitally important to the business or something that could or should be shut down.
It does take time for engineers to dive into these orphaned machines to see what’s going on. But you might be surprised how much you can save by looking into these orphaned machines and stopping the ones that aren’t important.
4. Get The Number Of Idle Machines As Close To Zero As Possible
Similarly, some percentage of your machines will always be sitting idle at any given point in time. These idle machines may be performing a vital task by staying on standby to absorb unexpected spikes in demand. Or, they could be running for no reason at all.
Again, it may take some time to figure out how many idle machines are currently running, how long they have been idle, and the costs associated with supporting them while they do nothing. However, it’s well worth the time to investigate any resources that appear idle, because these are easy choices when it comes time to trim costs.
Some cloud providers will call out machines that have been sitting idle for long periods of time. If you’re receiving messages that some machines have been idle for 30 days, measure these idle resources month over month and try to get the number as low as possible.
5. Optimize Spend On Weekends Versus Weekdays
Some businesses experience far more activity on weekdays than on weekends, and others may have surges after the traditional work week ends.
If your company has variable levels of usage, attempting to cut costs based on a flat average may do more harm than good.
By shaving costs across the board, you may save a tiny bit during low periods, but you would still likely be paying for a significant proportion of idle resources during these times. Worse, you’d risk sabotaging your performance during spikes of higher demand.
It’s far better to look at your spend from day to day to identify trends that indicate it’s safe to cut costs. If 95% of your demand comes between nine to five o’clock during the work week, you can probably slash costs over the weekend without sacrificing performance.
6. Get Cost Tracking Down To A Unit Economics Level
Ideally, you’ll want to understand, in detail, how much each product, feature, and customer costs your business. You can compare those costs to the revenue generated in that category to see what your thickest and thinnest margins look like.
Then, you’ll be able to determine whether to replicate processes for certain successful products, trim unsuccessful ones, focus on specific customer segments, or anything else that makes sense for your situation.
Much of your efforts will likely be focused on optimization and waste reduction, which can both go a long way toward widening margins and improving profits.
But before you can get there, you must have a way of tracking these unit costs. Cloud providers do not provide detailed breakdowns of your costs based on the applications and features you want to track.
So unless your engineers are prepared to build a system for tracking the desired metrics from the ground up, you’ll need to find a cloud cost platform to fill in the gaps.
Cost-tracking platforms such as CloudZero make it possible to measure costs in such granular detail that you can determine the costs to support an individual product, feature, or even customer demographic. From there, the groundwork is in place to make educated cost optimization decisions.