TL
The short answer

FOCUS, the FinOps Foundation open billing specification, standardises cloud cost data into one schema with consistent column names and meanings, so a single query works across AWS, Azure, GCP, and OCI instead of four incompatible exports. A FOCUS data pipeline in practice has four stages: ingest each provider's native billing export, map the provider specific fields onto FOCUS columns, reconcile differences in how commitments, discounts, and credits are expressed, and land a unified dataset in a warehouse for querying. The payoff is that allocation, unit cost, commitment reporting, and anomaly detection all run on one trustworthy base rather than on hand reconciled spreadsheets. The State of FinOps 2026 shows scope expanding to SaaS, AI infrastructure, and private estates, which makes a single normalized data layer more valuable, not less.

The promise of FOCUS is simple; the implementation is where teams get stuck. Here is how the pipeline works stage by stage and where the real difficulty lives.

Why is multi cloud billing data so hard without FOCUS?

Each provider exports billing in its own shape and vocabulary. AWS produces the Cost and Usage Report as the source of truth, Azure offers cost exports, GCP streams a billing export into BigQuery, and OCI produces cost and usage reports. The same concept, the effective cost of a unit of usage after commitments, is named and computed differently in each, and discounts, credits, and amortisation follow different rules. Analysing spend across all four therefore means reconciling four schemas by hand every time, which is slow, error prone, and impossible to keep current. FOCUS removes that tax by defining one schema everyone maps to.

What are the four stages of the pipeline?

Ingestion pulls each provider's native export on a schedule into raw storage, preserving the original so you can always reprocess. Mapping translates each provider's fields onto the FOCUS columns, so a service, a region, a resource, and a cost mean the same thing regardless of origin. Reconciliation handles the hard cases: amortising commitments consistently, applying credits and discounts the same way, and aligning billing periods and currencies. Loading lands the normalized result in a query engine, often a columnar warehouse, where reports and allocation run. Keep the raw and the normalized layers separate so a mapping fix never means re ingesting the source.

StageWhat it doesCommon pitfall
IngestPull native exports on a scheduleDropping the raw copy
MapProvider fields onto FOCUS columnsGuessing ambiguous fields
ReconcileAmortise commitments, align discountsInconsistent effective cost
LoadLand unified data for queryingNo separation of raw and clean

Table: the four stages of a FOCUS pipeline and the mistake that breaks each one.

Which FOCUS columns carry the weight?

Two columns do most of the work. BilledCost is what the invoice charges in a period; EffectiveCost amortises commitments and applies discounts so you see the true cost of consuming a resource, which is the number almost all optimization work needs. Around them, the service and resource identifiers, the region, the charge category that separates usage from tax and commitment purchases, and the tag and account columns that drive allocation make up the working set. With those mapped consistently, unit cost, showback, commitment coverage and utilization, and anomaly detection all run from one base. Getting effective cost right is the part worth the most care, because an inconsistent amortisation quietly corrupts every report built on top.

Build or buy the pipeline?

Both are valid, and the choice is a total cost of ownership question, not a technology one. Many FinOps platforms now ingest and normalize to FOCUS for you, which removes the build and maintenance burden but adds a per spend or per seat cost and some loss of control over edge cases. Building in house gives full control and avoids the platform fee but commits engineering time to keeping the mappings current as providers change their exports. The honest comparison weighs the platform cost against the engineering cost of building and maintaining, plus the value of control, and it usually favours buying below a certain scale and building above it. We assess this neutrally, with zero provider commissions and no vendor relationships to defend.

A worked example

Worked example

A European SaaS company ran across AWS, Azure, and GCP and produced its cost reports by exporting each bill and reconciling them in spreadsheets every month, a process that took days and never quite agreed with the invoices. Building a FOCUS pipeline, ingesting each native export, mapping to the FOCUS columns, and reconciling effective cost consistently, replaced the manual work with a single warehouse table. Allocation coverage rose because tags now meant the same thing everywhere, and the team could finally compute unit cost across all three clouds from one query. The reporting effort fell sharply and, more importantly, the numbers became trustworthy enough to drive commitment and rightsizing decisions. Figures are verified against billing data and anonymised.

Where this fits the wider program

A FOCUS pipeline is the data foundation under the rest of the tooling stack. It feeds the savings tracking ledger, it shapes the build or buy view in the tooling total cost of ownership, and it can reduce the number of tools you need, the subject of tool consolidation and its savings. The governance the data serves lives in the FinOps operating model guide, which links up to the cross cloud cost optimization guide.

Frequently asked questions

What is FOCUS and why does it matter?
FOCUS is the FinOps Foundation open specification that standardises cloud billing data into one schema with consistent columns and meanings. Every provider names and structures billing differently, so without a standard, multi cloud cost analysis means reconciling incompatible exports by hand. FOCUS lets one set of queries work across AWS, Azure, GCP, and OCI.
What does a FOCUS data pipeline actually do?
It ingests each provider's native billing export, maps the provider specific fields onto the FOCUS columns, reconciles how each cloud expresses cost and discounts, and lands a unified dataset in a warehouse you can query. The pipeline is the bridge between four raw bills and one consistent view of spend.
Which FOCUS columns matter most for cost work?
BilledCost and EffectiveCost are the core pair: billed is what the invoice shows, effective amortises commitments and applies discounts so you see the true cost of usage. Add service, resource, region, and the charge category and tag columns, and most cost analysis, allocation, and commitment reporting is possible from a consistent base.

Build your FOCUS pipeline with us

We design and stand up FOCUS pipelines that unify AWS, Azure, GCP, and OCI billing into one trustworthy base, and we assess build versus buy with no vendor relationships and zero provider commissions. Our guarantee: we reduce your cloud spend or we reimburse our service fee. Pricing is either a Fixed Fee scoped up front or Gainshare, a share of verified savings with no retainer and no risk.

Independent · buyer-side

Put a defensible number on your cloud spend.

No provider in the room, no published price list. Tell us your footprint and we will scope the savings against your billing data — we reduce your cloud spend or we reimburse our service fee.

Buyer-side intelligence, monthly.

The Cloud Spend Navigator: what changed in cloud pricing, commitments, and FinOps — no vendor spin.