cloudparts

FOCUS

The FinOps Open Cost and Usage Specification: one schema for billing data, so cost exports from clouds, SaaS vendors and data centres land in the same columns with the same meaning.

FinOps Foundation project
Type
Open source
Made by
FinOps Foundation (Linux Foundation)
Foundation
FinOps Foundation. A Joint Development Foundation series that the FinOps Foundation funds and staffs; its Governing Board appoints the steering committee. Part of the Linux Foundation
License
Specification under CC BY 4.0; contributions under the project’s contributor licence agreement
Facts checked
28 October 2026

What it is

Every cloud publishes a detailed bill as a table, but each uses its own column names, its own way of showing discounts and its own idea of what a row is. FOCUS defines one format for that data. Its core is the Cost and Usage dataset: one row per charge, with mandatory columns such as BilledCost, EffectiveCost, ListCost and ContractedCost, ChargeCategory (Usage, Purchase, Tax, Credit or Adjustment), ServiceCategory from a fixed list of 19 values such as Compute, Databases and AI and Machine Learning, ServiceProviderName, ResourceId, RegionId and a Tags column holding a JSON object. Each column comes with normative rules: for example, a commitment purchase meant to cover later usage must have an EffectiveCost of 0, so adding up effective cost never counts a prepayment twice. Providers can add their own columns, but only with an x_ prefix.

FOCUS is a specification, not software. Providers, which it calls data generators, export it themselves: in October 2026 the project listed AWS, Microsoft, Google Cloud, Oracle, Alibaba Cloud, Huawei Cloud, IBM Cloud, Cloudflare, Snowflake, Databricks, MongoDB and Vercel among them, each at its own version. Version 1.4, ratified on June 4, 2026, added Billing Period and Invoice Detail datasets, next to Cost and Usage and Contract Commitment, and 47 new columns, so a team can reconcile usage with invoices and track commitments. The text is under CC BY 4.0. The project is a series of the Joint Development Foundation, the Linux Foundation’s home for standards, supported by the FinOps Foundation, and is run by a steering committee and maintainers from cloud providers, tool vendors and large users.

Why teams pick it

  • One query works across providers: AWS, Azure, Google Cloud, Oracle and many SaaS and data platforms export it natively
  • Precise rules for discounts and commitments, with separate billed, effective, list and contracted costs on every row
  • Built by the providers and their biggest customers together, with a public GitHub process and a conformance programme for data generators
  • Grows beyond cloud: SaaS, data platforms and data centres, with token-based AI pricing planned for 1.5

Watch out for

  • Providers lag the spec: in October 2026 most exported 1.0 or 1.2, while 1.4 was current, and AWS’s and Google’s native exports sat at 1.2
  • Normalised columns hide detail: the provider’s own export, or its x_ columns, still carry information FOCUS has no column for
  • Versions are not strict compatibility promises; 1.3 deprecated ProviderName and 1.4 removed it, so queries need updating between versions
  • Allocation still depends on your tags and account structure: FOCUS standardises the data, not who owns it

Alternatives

What all cloud cost and carbon have in common →Compare side by side →

How it fits with other technologies

Unused commitments, across providers, from FOCUS data · sql

-- A commitment discount (reserved instance, savings plan, committed use)
-- shows its unused hours as rows with CommitmentDiscountStatus = 'Unused'
SELECT
  ServiceProviderName,
  CommitmentDiscountType,
  CommitmentDiscountName,
  round(sum(EffectiveCost) FILTER (WHERE CommitmentDiscountStatus = 'Unused'), 2) AS unused_cost,
  round(sum(EffectiveCost), 2) AS total_cost
FROM focus_cost_and_usage
WHERE CommitmentDiscountId IS NOT NULL
  AND ChargeCategory = 'Usage'
  AND BillingPeriodStart = TIMESTAMP '2026-09-01'
GROUP BY ALL
ORDER BY unused_cost DESC NULLS LAST;

What each version added#

FOCUS ships about twice a year, usually announced at the FinOps Foundation’s FinOps X conference in June and in November or December.

VersionReleasedMain changes
0.5June 2023First release: BilledCost, AmortizedCost, billing account and period, ChargeType, ProviderName, ServiceCategory, ResourceId and the first format rules
1.0 previewNovember 2023ListCost and pricing columns, commitment discount columns, SKUs, Tags; AmortizedCost renamed EffectiveCost
1.0June 2024ChargeClass for corrections, ContractedCost and ContractedUnitPrice, regions; UsageQuantity renamed ConsumedQuantity
1.1November 2024Capacity reservations, commitment quantities, ServiceSubcategory, SkuMeter and SkuPriceDetails
1.2June 2025InvoiceId, billing account and sub-account types, and pricing-currency columns for providers that price in one currency and bill in another
1.3December 2025Contract Commitment dataset; ServiceProviderName and HostProviderName replace ProviderName and PublisherName; Allocated* columns for costs the provider has already split
1.4June 2026Billing Period and Invoice Detail datasets, 47 new columns and rules for corrections and delivery; ProviderName and PublisherName removed

See it in a real stack

No architecture uses FOCUS yet. Drop it into the playground and wire it up yourself.Open playground →
Where it came from2023–2026

The work started in the FinOps Foundation’s Open Billing working group, where practitioners tried to agree how billing data should look. In January 2023 the group decided to move it into a new Linux Foundation project, set up as a specification so the cloud providers could commit to it. The foundation announced FOCUS in May 2023 with a steering committee chaired by Udam Dewaraja, then head of cloud financial management at Citigroup, and including Google and Microsoft. The plan was to start with infrastructure-as-a-service and then add SaaS, PaaS and on-premises costs.

Version 0.5 came out at FinOps X in June 2023, and the 1.0 preview in November 2023 with AWS, Microsoft, Google Cloud and Oracle as formal contributors and companies such as Capital One, Walmart, Workday and Goldman Sachs. After 1.0 in June 2024, the providers shipped native exports: Google as a BigQuery view, Microsoft in Cost Management exports and AWS in Data Exports, which reached FOCUS 1.2 in November 2025.

Later versions followed what large users needed to close their books: invoice IDs and currencies in 1.2, contract commitments and split costs in 1.3, and invoice reconciliation in 1.4, ratified on June 4, 2026. The same week, the Linux Foundation announced a Tokenomics Foundation that will jointly fund extending FOCUS to token-based AI pricing, which the project plans for 1.5.

Why it’s built this way

A specification, not a converter
Earlier tools converted each provider’s format after the fact and broke when it changed. FOCUS asks providers to export it themselves, which is why it was set up as a standards project with the providers on the steering committee.
Four cost columns on every row
Finance needs the invoiced amount, teams need cost after discounts and prepayments, and procurement needs list and contracted prices to measure savings. Keeping all four on one row avoids separate datasets that never reconcile.
Fixed lists for categories
ChargeCategory and ServiceCategory may only take listed values, so “all compute spend” or “all taxes” means the same thing for every provider, while ServiceName keeps the provider’s own product name.
Custom columns must start with x_
Providers can still publish details FOCUS lacks, and the prefix guarantees a future FOCUS column never collides with a provider’s own.

Timeline

  1. 2023

    Open Billing work moves to a new LF project in January; FOCUS announced in May; 0.5 in June; 1.0 preview in November

  2. 2024

    FOCUS 1.0 in June; 1.1 in November

  3. 2025

    1.2 in June; AWS Data Exports for FOCUS 1.2 generally available in November; 1.3 in December

  4. 2026

    1.4 ratified June 4; Tokenomics Foundation announced to fund token pricing in FOCUS

Sources15 · facts checked 28 October 2026

Improve this page on GitHub