FinOps Foundation Insights

Introducing FOCUS™ 1.2: SaaS/PaaS Support, Invoice Reconciliation, and Deeper Cloud Allocation

June 3, 2025 | Article: 10 minute read

Key Insight: FOCUS 1.2 unifies “Cloud+” reporting for Practitioners by folding SaaS and PaaS billing data into the same schema as core cloud spend. It also introduces an invoice ID column that links each row directly to provider invoices, streamlining charge-back and month-end close, and sharpens cost allocation with new billing account and sub account granularity. Three new providers also announced support; Alibaba Cloud, Databricks and Grafana.


What’s New in FOCUS 1.2

FOCUS version 1.2 was ratified by the FOCUS Steering Committee on May 29, 2025. It helps to satisfy these use cases:

Cloud+ unified reporting

SaaS / PaaS | Virtual currency lifecycle

FinOps | Multi-currency normalization

Cloud | Invoice reconciliation & chargeback

Analytics | Unit-cost & density metrics

As reported in the State of FinOps 2025, many Practitioners are now working in a Cloud+ era where they are applying FinOps Principles to Cloud+ Scopes of technology cost and usage data from SaaS tools, licenses, private clouds, data centers, AI spend, and other sources. FOCUS provides a common format to unify billing data from these differing Scopes of technology spend.

What is a virtual currency?

A virtual currency is a provider-defined unit of account—such as a “credit,” “token,” or “DBU”—that a SaaS or PaaS platform uses to meter and price customer consumption.

One or more of these units are consumed whenever a workload runs (e.g., per-query, per-minute, per-row). The provider assigns each unit a cash value in a national currency (USD, EUR, etc.) on the price list or the customer’s contract; invoices then shows the monetary total, not the units themselves.

Virtual currencies therefore sit between raw technical usage (bytes processed, seconds elapsed) and the dollar amount you ultimately pay, enabling the vendor to adjust pricing simply by changing the unit-to-cash conversion rate.

SaaS virtual currency examples: Snowflake, Databricks, and MongoDB

Example: Snowflake

The below table shows what consuming 25 Snowflake credits looks like with the relevant 1.2 columns. This example shows the pricing currency in USD (how Snowflake prices) and the billing currency in EUR.

The exchange rate for the sake of this example is 1 USD = 1.008 EUR (FX rate used in the invoice)

FOCUS Column Example values Purpose / mapping
ProviderName Snowflake Identifies the SaaS/PaaS source
ChargePeriodStart 2025-05-14T00:00:00Z Beginning of the hour
ChargePeriodEnd 2025-05-14T01:00:00Z End of the hour
ConsumedQuantity 25 # of credits consumed
ConsumedUnit Credit Unit identification
New pricing-currency fields
PricingCurrency USD Currency in which Snowflake invoices the account
PricingCurrencyListUnitPrice 3.00 List price per credit
PricingCurrencyContractedUnitPrice 2.70 Discounted unit price from negotiated rate
PricingCurrencyEffectiveCost 67.50 25 credits * $2.70
Existing billing-currency fields
BillingCurrency EUR Invoice delivered in EUR
ListCost 75.60 Converted from $75.00 @ 1.00 USD = 1.008 EUR
EffectiveCost 67.95 Converted from $67.50 @ 1.00 USD = 1.008 EUR

Key takeaways

By capturing both pricing and billing currencies you can:

FOCUS 1.2 Release Details

The canonical location for FOCUS version change is the FOCUS Changelog in Github outlining changes so that users of FOCUS version 1.1, 1.0, 1.0 Preview, and 0.5 can adopt the incremental improvements with minimal disruptions.

Version 1.2 of the FOCUS Specification adds seven new columns:

  1. InvoiceId
  2. BillingAccountType
  3. SubAccountType
  4. PricingCurrency
  5. PricingCurrencyEffectiveCost
  6. PricingCurrencyListUnitPrice
  7. PricingCurrencyContractedUnitPrice

These first three columns are applicable to all scopes of Cloud+ FinOps to reconcile invoices, allocate to different cost centers, and properly account for shared costs. 

New Specification Column Definition and Key Benefit(s)
InvoiceId Invoice ID is a provider-assigned identifier for an invoice that encapsulates some or all charges in the corresponding billing period for a given billing account. 

Invoice ID provides an identifier that enables the finance department to track transactions across billing periods. 

  • Use Case: Invoice reconciliation across billing periods. Invoices are commonly used for scenarios like tracking billing transactions, facilitating payment processes and for performing invoice reconciliation between charges and billing periods. The addition of InvoiceId enables teams to trace billing transactions (such as charges, credits, or refunds) that recur over multiple billing periods back to an invoice. 
BillingAccountType Billing Account Type is a provider-assigned name to identify the type of billing account. Billing Account Type is a readable display name and not a code

Billing Account Type is commonly used for scenarios like mapping FOCUS and provider constructs, summarizing costs across providers, or invoicing and chargeback.

FOCUS 1.0 introduced Billing Account Name, but the addition of Billing Account Type in v1.2 provides more granular information about the account. Some examples of Billing Account Types are Payer Account (AWS), Billing Account (GCP/Microsoft/OCI), Billing Profile and Subscription (Microsoft).

  • Use Case: Chargeback/showback of shared costs. Some costs are billed to a single account, but shared by many accounts. With InvoiceId, BillingAccountType, and SubAccountType, teams can allocate shared costs (such as support costs) from the Billing Accounts that are charged to the non-billing accounts that these costs flow through to.
SubAccountType Sub Account Type is a provider-assigned name to identify the type of sub account. Sub Account Type is a readable display name and not a code.

Sub Account Type is commonly used for scenarios like mapping FOCUS and provider constructs, summarizing costs across providers, or invoicing and chargeback.

FOCUS 1.0 introduced Sub Account Name, but the addition of Sub Account Type in v1.2 provides more granular information about the sub account. Some examples of Sub Account Types are Membership Account (AWS), Project (GCP), Subscription (Microsoft), and Tenancy (OCI).

Support for Virtual and National Currencies

These four columns also provide requirements for reporting in national currencies that a provider or Practitioner may choose to convert billing data into (e.g., USD to EUR). This enables the conversion of currencies, and the normalization of multiple currencies across vendors/providers.

In addition, many SaaS vendors bill in virtual currencies, such as credits or tokens. Four new columns in the FOCUS Specification provide requirements for reporting the cost and usage of these credits or tokens that SaaS providers may use to bill for their offerings. These columns enable Practitioners to track the burndown of credits or the use of virtual currencies from different vendors, and to convert virtual currencies to national currencies (e.g., tokens to USD).

Virtual currency examples (e.g., credits, tokens):

The four columns above also deepen support for billing data generated by CSPs, as they provide requirements for reporting in national currencies that a provider may choose to translate billing data into (e.g., USD to EUR), and enable Practitioners to easily normalize multiple national currencies used by different vendors/providers.

New Specification Column Definition and Key Benefit(s)
PricingCurrency Pricing Currency is the national or virtual currency denomination that a resource or service was priced in.

Pricing Currency is commonly used in scenarios where different currencies are used for pricing and billing. This FOCUS column enables normalized reporting and tracking of usage and cost in virtual and national currencies from different vendors or providers.

Use Case: FOCUS 1.0 introduced Billing Currency, but the addition of Pricing Currency in v1.2 allows for virtual currencies often used by SaaS providers, and for normalization of billing data with multiple national currencies.

PricingCurrencyEffectiveCost Pricing Currency Effective Cost is the cost of the charge after applying all reduced rates, discounts, and the applicable portion of relevant, prepaid purchases (one-time or recurring) that covered this charge, as denominated in Pricing Currency.

Use Case: This FOCUS column allows a Practitioner to perform a conversion from either a national currency to a virtual currency (e.g., tokens to USD), or from one national currency to another (e.g., EUR to USD).

This Specification does not currently define an “effective” exchange rate from Pricing Currency to Billing Currency, but this value can be calculated by using two existing columns:

PricingToBillingEffectiveExchangeRate = EffectiveCost / PricingCurrencyEffectiveCost

PricingCurrencyListUnitPrice Pricing Currency List Unit Price is the suggested provider-published unit price for a single Pricing Unit of the associated SKU, exclusive of any discounts. This price is denominated in the Pricing Currency.

Use Case: The Pricing Currency List Unit Price is commonly used for calculating savings based on various rate optimization activities.

An exchange rate reflective of List Cost can be calculated:

PricingToBillingListExchangeRate = ListUnitPrice / PricingCurrencyListUnitPrice

PricingCurrencyContractedUnitPrice Pricing Currency Contracted Unit Price is the agreed-upon unit price for a single Pricing Unit of the associated SKU, inclusive of negotiated discounts, if present, while excluding negotiated commitment discounts or any other discounts. This price is denominated in the Pricing Currency

When negotiated discounts do not apply to unit prices and instead are applied to exchange rates, the Pricing Currency Contracted Unit Price defaults to the Pricing Currency List Unit Price.

Use Case: The Pricing Currency Contracted Unit Price is commonly used to calculate savings based on negotiation activities.

An exchange rate reflective of Contracted Cost can be calculated:

PricingToBillingContractedExchangeRate = ContractedUnitPrice / PricingCurrencyContractedUnitPrice

Updates to Existing Specification Content

This release also delivers revisions of existing content in the Specification, providing fixes and clarification that increase consistency and reduce ambiguity. Material updates include changes to existing columns, added and changed attributes and metadata. All changes have been documented in the Changelog.

What’s next?

FOCUS is in its third year of development, and has gained critical adoption by numerous providers including AWS, Microsoft, Google Cloud, Oracle Cloud and now Alibaba Cloud, Databricks and Grafana. FinOps Practitioners around the world are actively using FOCUS billing datasets from these providers to uncover insights that inform business decision-making and optimize their organizations’ use of technology across many Scopes of practice.

This 1.2 release of the FOCUS Specification introduces new columns that enable expansion to SaaS and PaaS vendor billing data, paving the way for the FOCUS open standard to be the primary format for cost and usage billing data across the industry. Community support is critical, and we encourage vendors and FinOps Practitioners to attend FOCUS community calls, share feedback, and join the FOCUS Project.

FOCUS Contributors and the Steering Committee welcome feature requests for consideration in the next FOCUS 1.3 and future releases. Future versions of the FOCUS Specification will aim to further deepen support for cloud and SaaS billing data, as well as broaden support to additional Scopes of spending.

Topics
  • Industry Updates
Share

Related assets

FOCUS 1.0 is Now Available. Practitioners and Clouds Begin Adoption. FOCUS 1.1 Now Available. Adoption Continues for Practitioners and Vendors. FOCUS Sandbox and sample data available now FinOps X 2025 Day 1 Keynote: Evolution of FinOps: Cloud+ Scopes, SaaS, FOCUS™ 1.2, Cloud VP Panel