Most companies can track their cloud spending by service or answer what product teams spend on AWS. What the company spends on its observability provider (which has no cost data beyond the up-front contract you signed), a data platform provider, or the AI provider your newest feature uses is usually harder to pin down. The managed service that bills via a PDF invoice once a quarter may not show up at all.
That’s for a practical reason. Cloud billing arrives every day, detailed and ready to model, so it goes in first. The rest is a mix of scattered, insufficient datasets across APIs, contracts filed with procurement, or a line in accounts payable, and getting it into the cost model means manual work that often slips to next quarter. Contracts are the easiest to lose track of. Once signed, the committed spend, ramp schedule, and the renewal date tend to sit in a PDF nobody opens again until the renewal notice arrives. The total never shows what's missing, so the gap usually comes to light much later, when a product's margin turns out thinner than the numbers said.
This is the next piece in our series on building a cost model that can answer what technology delivers for the business. Attribution, allocation, and Finance as Code all work on the costs already in the model. This one covers the spend still sitting in contracts, invoices, and spreadsheets, and what leaving it out does to the numbers.
Where the forgotten spend sits
The spend that never reaches the model tends to come from the same few places, and each one has its own reason for being left out.
| Source | How it arrives | Why it gets left out |
|---|---|---|
| SaaS and tooling | Per-seat invoices, card spend, marketplace charges | Spread across many owners and budgets |
| Software contracts | Annual or multi-year commitments, true-ups | Paid upfront, needs amortizing, sits with procurement |
| AI providers | Token bills from AI provider APIs, cloud marketplaces, and seat-based pricing | Split across several channels, none tied to a feature |
| Vendor and MSP invoices | PDF, quarterly or monthly | Unstructured, needs manual extraction |
| Internal costs | Labor, data center, private cloud | Held in finance systems, not IT tooling |
Taken one at a time, some of these may not look big enough to chase. Across a large organization, they often add up to a sizable share of IT spend. And because anything that needs manual work is the first thing dropped when a team runs short on time, these sources tend to stay out of the model year after year.
The market has already widened the scope
FinOps teams have been moving in this direction for a while. In the FinOps Foundation's State of FinOps 2026 report, 98% of respondents said their team manages AI spend or plans to within the next year, up from 63% in 2025. SaaS sits at 90%, licensing at 64%, private cloud at 57%, and data center at 48%, and 28% are beginning to include labor costs or plan to. The FinOps Framework now reflects that shift, with Technology Categories that apply the practice across cloud, SaaS, licensing, and data centers, each aligned to FOCUS data.
That puts FinOps on ground IT Financial Management has covered for years, and the two disciplines share more ground every year. Whichever name a team uses, the cost model must cover the whole estate. If cloud lives in one tool while SaaS and AI live in a spreadsheet, the team is running two cost models, and neither one can tell you a product's full cost.
Cloud-only unit economics can mislead you
Picture a product team tracking its cost per customer on AWS. The number has held steady for two quarters and recently dipped, so the team concludes its margins are in good shape.
The number leaves out everything else that grows with each new customer: more inference calls to the AI provider, more seats on the tools the team relies on, and enough extra usage to push the platform contract into a higher pricing tier. None of that touches the AWS figure. It stays accurate for the spend it measures, while the margin leaks through the spend nobody modeled.

Every source you add makes the model better
No one reaches full coverage in one step, and the model starts paying off long before then. Each source you bring in improves accuracy. The sensible place to begin beyond your cloud and AI spend is wherever the biggest gaps are, usually in large contracts and SaaS spend scattered across budgets.
The workflows teams already run monthly or quarterly improve with every addition. Chargeback gets closer to what each team consumes, budgets and forecasts hold up better, and renewal and build-versus-buy decisions weigh the full cost of each option.
Decisions made continuously depend even more on coverage. A routing rule that sends requests to a self-hosted model or an external API, or an agent deciding whether to scale a service or buy more capacity, reads the cost model every time it acts. When a source is missing from a monthly report, someone gets one wrong number and may catch it. When a routing rule reads it as missing from the data, it makes the same wrong decision thousands of times a day before anyone notices.
One foundation, any source
Adding sources only helps if the model can use them together. FOCUS gives every source the same columns and definitions, while keeping each source's original level of detail, so a line-item cloud charge and a quarterly PDF invoice can sit in the same dataset. Usage data such as tokens, seats, and telemetry sits next to the cost it explains, so a SaaS or AI charge has an owner.
From there, a new source means a new mapping. The attribution and allocation rules already in place apply to it without a rebuild, and every figure still traces back to its source and reconciles to finance totals.
How StitcherAI does it
StitcherAI brings every cost and usage source an organization has into one model, whether the data is structured or not. It connects to cloud and AI provider billing, SaaS usage, and internal IT cost data. It also ingests sources that often get left out: vendor PDF invoices, large software contracts whose commitments, ramp schedules, and renewal dates get forgotten after signing.
Each source is normalized to FOCUS, with usage data next to the cost it explains and business data alongside it. A contract or a PDF invoice can then be attributed and allocated like any cloud line. Everything reconciles to the totals in finance reports, and every figure traces back to the bill, contract, or invoice it came from. Adding the next source means adding a mapping, so the model gets more complete over time without a rebuild.

Once it's in place, that unified cost model is the one everyone works from, agents included. Finance runs chargeback, budgets, and renewal reviews on it. Product teams finally get unit economics and margins that include what each customer costs in inference, tooling, and contracts, and engineering can see what a feature will cost before it ships. Agents check the same model before routing a request or scaling a service. Since they're all reading the same numbers, every source you add improves those decisions at once.
Bill to business
A cost model is only as accurate as its sources, and every decision built on it, whether a person makes it or an agent does, carries the same gaps. StitcherAI takes in any source and shows you what's still missing, so the model gets more complete with each one you add.
See how much of your estate your cost model covers today.
