So you’ve run into cloud cost challenges — incomplete visibility, overspending, thinning margins — and you’re wondering whether you have what it takes to build a cloud cost optimization platform in-house. It’s a responsible question (one that the FinOps Foundation even advises you to ask).
Be warned: Building your own cloud cost optimization platform seems cheaper than adding another SaaS subscription. It’s not. I have the scars to prove it
Behind the veneer of affordability lies a complex web of issues. At the very least, before you decide on either the build or the buy route, it’s worth knowing exactly what you’re in store for.
Here, using war stories from my seven years overseeing the development of the CloudZero platform, I outline some of the challenges — and potential costs — associated with building and maintaining a cloud cost optimization platform from scratch.
The 3 Main Challenges Of Building Your Own Cloud Cost Optimization Platform
1. Capturing the full state of your cloud deployment
The fundamental goal of a cloud cost optimization platform is to capture the whole state of your cloud deployment — to give you an accurate view of what you spent, when, who’s responsible, and what you got in return.
Capturing the whole state of your cloud deployment at any one point in time is somewhat feasible (“somewhat” being the key term). Whaqt’s enormously and unpredictably complex is capturing the whole state of your cloud deployment as it changes over time.
Seven years ago, when I started at CloudZero, it was common for companies to spend all their money on a single cloud provider (usually AWS). Nowadays, it’s assumed that you’re using multiple cloud providers, including PaaS, SaaS, IaaS, and, of course, AI. A tool built around a previous phase of complexity would buckle under the weight of exponentially accelerating complexity.
We’ve encountered this issue numerous times at CloudZero. Here are just a few of the vendor-specific complexities we’ve had to address:
Microsoft Azure
- Account type billing differences. Azure billing reports vary in structure and behavior for different account types (Enterprise Agreement, Microsoft Customer Agreement, Service Principal, etc). We’ve invested a significant amount of engineering time in understanding all these little variations, designing an adaptor that normalizes them, and then normalizing Azure data alongside all other cloud vendors’ data.
Google Cloud Platform (GCP)
- Resource-level data. GCP offers a different level of resource-level detail for different services. For some services, it can show you both how much the service cost and how much each of the underlying virtual machines (VMs) cost. For others, it doesn’t break out that level of granular resource detail. This makes it extremely challenging to understand who’s responsible for changing levels of cost within those services.
DBaaS Platform — who, due to our relationship with them, shall remain nameless
- API permissions. Not long ago, this platform changed the permissions we needed to call their billing API. The API change didn’t come when the vendor said it would, and when it did, it contained bugs that prevented it from working properly. We spent a significant amount of time working directly with the vendor to smooth out these issues.
This is just a sampling of the hiccups and roadblocks you’ll run into when trying to capture the full state of your cloud deployment. These issues range widely in terms of difficulty, but they often require full-time engineers to pore over billing reports, if not collaborate directly with vendors.
Which brings up an important point: This is a forever job. You don’t build a platform, turn it on, and watch it run happily for years. It requires unceasing vision, innovation, and maintenance to remain an excellent solution to an ever-complicating problem.

2. Disruptive technologies
About ten years ago, cloud cost visibility looked very different. Almost everyone used AWS, and the notion of containerization was in its infancy. When Kubernetes took the cloud by storm, all that changed.
Engineers loved Kubernetes for its flexibility and elasticity. However, when teams migrated their compute to Kubernetes, they encountered what we used to refer to as The Black Box of Kubernetes Spending. They had implemented a tag-based visibility solution for their AWS costs, but then suddenly, they had a dozen teams using a large cluster that had only a single tag, and they lost all visibility into their underlying compute costs.
As a company dedicated solely to providing cloud users with deep visibility into their costs, CloudZero was well-positioned to develop the space’s first dedicated Kubernetes visibility solution and maintain its best-in-class status in the years since. One person or a small team keeping reports would not have been enough to adapt to that change.
Kubernetes is a clear example of technological disruption upending cost visibility processes. There are numerous others, including the rise of multi-cloud and the advent of AI, each of which presents its own slew of difficulties, and each of which has a profound impact on a team’s ability to maintain cost visibility.
3. Accuracy at scale
You’re devoting significant time to understanding and ironing out the vagaries of different vendors’ billing frameworks. You’re adjusting on the fly to disruptive technologies that make it impossible to get good visibility the old way. Amid all of this, the overarching goal remains the same: Derive actionable insights for everyone, from individual engineers to your senior leadership team.
If your data isn’t 100% accurate, every step of the way, that just won’t happen.
Accuracy gets more challenging as your cloud cost footprint grows. Imagine a situation where your GTM team is trying to refine their contracts for different customer segments. To maximize contract margins, they’d need to compare the revenue and costs for each customer. They’d therefore come to you asking for accurate cost per customer data.
CloudZero’s biggest customers’ cloud bills routinely tally 200 million line items each month. Let’s assume you’ve got 1,000 customers, that they’re using 100 shared services, and that you’d rather calculate their cloud costs on an hourly basis than on a monthly basis.
The math becomes:
200 million line items x 1,000 customers x 100 shared services x 730 hours per month = 14,600,000,000,000,000That’s 14.6 quadrillion datapoints, every month. Processing the data, verifying its accuracy, allocating it to the right customers, and extracting business insights from it is more than a full-time job — it’s a full-team, or really full-company job.
How CloudZero Addresses Each Challenge
Capturing the full state of your cloud deployment: Even back in the days when companies mostly spent all their money on one cloud provider, CloudZero was built for a future, multi-cloud state. We pioneered AnyCost™, a way for customers to ingest data from any cloud provider and normalize it in a common billing framework. We have constantly led the adaptability curve, most recently being the first cloud cost optimization platform to integrate directly with Anthropic.
Plus, this is all we do. We don’t have to divert engineering resources to something other than our chief differentiation; this is our chief differentiation. CloudZero’s existence depends on anticipating and building around future complexity, and that’s exactly what we’ve done.
With that foundation layer of complete visibility, customers can slice and dice their data in a theoretically infinite number of ways. They can then develop custom dashboards, reports, and alerts around specific metrics for specific people. That can mean something as simple as S3 spending to something as complex as how each of your products/customers/features etc. is impacting your overall cloud cost per dollar of revenue.
Curious to see how this might be used in action? Check out 5 FinOps Slides To Show At Your Next Board Meeting.
Adapting to disruptive technologies: There are two main reasons why we’ve maintained best-in-class cloud cost visibility amid all the disruptions of the last ten years. The first is that visibility was always the core of our vision, and that we built it specifically to be flexible.
While legacy vendors were still segregating AWS costs from Azure and GCP costs (don’t even ask about Kubernetes), we were building a next-gen platform that normalized those costs and integrated them in a single pane of glass.
The other reason is that we haven’t had to pause other engineering activities to build specialized cost adaptors for AWS, GCP, Snowflake, MongoDB, Databricks, OpenAI, Anthropic, and many more. We’ve gotten to focus the full force of our engineering powerhouse on these projects because that’s the core of our differentiation.
If you’re reading this, cost visibility is probably not what your organization is monetizing, so it will always be an uphill battle to allocate engineering resources to these challenges.
Accuracy: Since 2022, CloudZero has sustained full SOC 1 certification (both Type 1 and Type 2). This means our financial data has repeatedly withstood the most scrupulous financial audit this side of the IRS. There is no more accurate cloud cost optimization platform — standalone, or in-house — on the planet.
It takes considerable time, money, and risk to build your own cloud cost optimization platform. It will always mean pulling engineering resources away from your core differentiation, and it will never be something you can sustain passively at a high level of quality.
CloudZero helps thousands of users across hundreds of customers handle the world’s most complex FinOps challenges, day in and day out. The full force of our engineering team is dedicated to keeping us ahead of that curve and delivering high-impact solutions for highly sophisticated cloud spenders.


