If you’re a SaaS business — especially B2B — you know that your profitability can vary significantly from customer to customer.
We all have a sense of our “expensive customers,” who use the product heavily and push things to the limit. That also means there are more profitable customers.
Who are they? And how do they use the product?
As a business, we want fewer of the former and more of the later — or at least we want to make sure that the revenue we receive from each customer type is appropriate for what it costs us to deliver value.
But if I asked you how much it cost to deliver your solution for a specific customer in a specific month, would you be able to answer?
How about a specific feature for a specific customer? Think about what you could do if you had access to that level of insight.
Unfortunately, for many companies, there’s no straight line from the details on an AWS bill to each customer or feature in their products. Cost per customer is an incredibly powerful metric that also happens to be incredibly difficult to measure.
This powerful insight into profitability, on a customer by customer basis, will create better business outcomes — ranging from helping you make smarter pricing and licensing decisions, to driving higher expansions and renewals, to being able to demonstrate a mastery of your cost of goods sold (COGS) with investors.
Multi-Tenant Cost Calculation Nightmare
Why is calculating cost per customer so difficult?
In multi-tenant architecture, resources like compute and storage are typically shared among tenants. At any given time, a collection of billable resources (EC2 and RDS instances, Kubernetes clusters, networking and monitoring services, and many more) are coming together to deliver many different features all being accessed by many different customers.
To calculate how much Customer A cost in a given hour, I’d need to:
Look at everything that Customer A did in my application during that hour
Align that activity to the various features of my application
Look at the architecture of the application to see what services make up those features
Analyze the AWS bill for each of those services to see how much they each cost in that hour
If I use Kubernetes, de-aggregate the spend of my cluster to just the pods involved in the customer transactions
Then, do the same for every other customer who used that feature in the same hour
Calculate the percentage of the hourly cost attributable to each customer
Finally, record the cost of Customer A based on their percentage of the total operating cost of the hour
Repeat hourly or at whatever granularity the business demands
No wonder only the largest SaaS companies have access to this metric! They are the only ones who can afford to dedicate entire engineering teams to instrumenting their applications and analyzing the mountains of data needed to produce the calculations.
Cloud Costs in Context: Cost + Engineering Data
CloudZero helps your fast-moving engineering teams innovate profitably by putting their cloud costs in the context of their business.
This requires combining two key dimensions: cost and engineering data.
What services are billed each month, and how are they used in the various products and features that you develop?
CloudZero isn’t just a cost reporting platform offering BI capabilities on top of cost and usage reports. CloudZero is more like a DevOps monitoring platform, which pulls in billions of events per second, normalizes the data, and enables correlation between cost and all kinds of other metrics — automatically.
This lets CloudZero group cloud costs to align with your business KPIs, like features, customers, development teams, and more by deeply understanding how your application is actually built — not just by looking at billing data.
Knowing how much a given feature costs in total is powerful enough on its own, but it doesn’t get you to cost per customer.
The CloudZero Magic: Cost + Engineering Data + User Activity
In the case of cloud cost per customer, CloudZero is able to correlate cost with customer utilization data. Because the CloudZero platform automatically organizes costs into products and features (using machine learning, not tagging) we can also show how much each feature costs per customer. We can do this whether your environment is containerized or not.
To put this into context, you’re a SaaS platform that helps retail companies manage their online presence and your biggest enterprise customer is Nordstrom, we can tell you:
How much Nordstrom costs you a month
How much it costs you to run your inventory feature just for Nordstrom
This is game changing information for you to maximize profits come renewal — or make decisions about which features to give away for free vs. charge extra.
We helped security company, Armis, measure their cost per metric. “It’s a game-changer to have our DevOps team understand the cloud cost of our software,” said Ira Silchenko, business intelligence engineer at Armis. “With CloudZero, we’re able to see which of our customers are most profitable, and know exactly which features are costing the most. That way, we can make cost-informed strategy decisions and truly understand our cost of goods sold.”
Cost per Customer: One Piece of the Unit Economics Pie
While we’re particularly excited to have cracked the cost per customer nut, it’s important to note that this is just one aspect of CloudZero’s mission to help digital businesses understand their cloud costs.
Cloud cost has many important dimensions and should be measured by metrics such as unit cost (e.g., cost per transaction), product feature, dev team, containers, and more.
Then, cloud cost intelligence needs to be delivered to the right teams, at the right time, and in the right format so action can be taken.
Relevant, timely, and context-rich cost data makes everyone more informed — and helps companies make better decisions.
Go here to to learn more about our Cost per Customer solution.
STAY IN THE LOOP
Join thousands of engineers who already receive the best AWS and cloud cost intelligence content.