Del via


FOCUS conformance full report

This document provides a detailed list of all FOCUS 1.2 requirements and indicates the level of support provided by the Microsoft Cost Management FOCUS 1.2-preview dataset. To learn more about FOCUS, refer to the FOCUS overview.


How conformance is measured

FOCUS requirements fall into four groups:

  • MUST requirements are mandatory for all data providers.
  • SHOULD requirements are strong recommendations.
  • RECOMMENDED requirements are suggested best practices.
  • MAY requirements are optional and used to prepare FinOps practitioners for edge cases.

While there's no official measurement for FOCUS conformance, we calculate a conformance score of 94%, which accounts for all fully supported and half of the partially supported requirements. The following table summarizes requirements by level of support.

Type Supported Partial support Not supported Not applicable
MUST 325 16 8 69
SHOULD 28 5 1 11
RECOMMENDED 3 4
MAY 24 12
Summary 91.7% 5.1% 3.1%

How this document is organized

The following sections list each FOCUS requirement, the level of support in the Microsoft Cost Management FOCUS 1.2-preview dataset, and any relevant notes. For a high-level summary of the gaps, refer to the FOCUS conformance summary. Requirement IDs are for reference purposes only. IDs aren't defined as part of FOCUS.

The rest of this document lists the FOCUS requirements grouped by attribute and column. Columns define the specific data elements in the dataset and attributes define how columns and rows should behave. High-level descriptions and a link to the original requirements document are included at the top of each section.


Attributes

Column handling

Naming and ordering convention for columns appearing in a FOCUS dataset.

Source: attributes/column_handling.md

ID Type Criteria Status Notes
CH1 MUST All columns defined in the FOCUS specification MUST follow the naming and ordering requirements listed below. Supports
CH2 MUST All columns defined by FOCUS MUST follow the following rules: Supports
CH2.1 MUST Column IDs MUST use Pascal case. Supports
CH2.2 MUST Column IDs MUST NOT use abbreviations. Supports
CH2.3 MUST Column IDs MUST be alphanumeric with no special characters. Supports
CH2.4 SHOULD Column IDs SHOULD NOT use acronyms. Supports
CH2.5 SHOULD Column IDs SHOULD NOT exceed 50 characters to accommodate column length restrictions of various data repositories. Supports
CH2.6 MUST Columns that have an ID and a Name MUST have the Id or Name suffix in the Column ID. Supports
CH2.7 MAY Column display names MAY avoid the Name suffix if there are no other columns with the same name prefix. Supports We don't recommend this practice as it introduces confusion when column IDs and display names don't match.
CH2.8 MUST Columns with the Category suffix MUST be normalized. Supports
CH3.1 MUST Custom (e.g., provider-defined) columns that are not defined by FOCUS but included in a FOCUS dataset MUST follow the following rules: Supports
CH3.1.1 MUST Custom columns MUST be prefixed with a consistent x_ prefix to identify them as external, custom columns and distinguish them from FOCUS columns to avoid conflicts in future releases. Supports
CH3.1.2 SHOULD Custom columns SHOULD follow the same rules listed above for FOCUS columns. Partially Supports x_SkuMeterCategory and x_SkuMeterSubcategory aren't normalized.
CH1.3 SHOULD All FOCUS columns SHOULD be first in the provided dataset. Supports
CH1.4.1 SHOULD Custom columns SHOULD be listed after all FOCUS columns... Supports
CH1.4.2 SHOULD ...[Custom columns and FOCUS columns] SHOULD NOT be intermixed. Supports
CH1.5.1 MAY Columns MAY be sorted alphabetically... Supports Columns are sorted alphabetically for ease of use.
CH1.5.2 SHOULD ...custom columns SHOULD be after all FOCUS columns. Supports Columns are sorted alphabetically for ease of use.

Currency format

Formatting for currency columns appearing in a FOCUS dataset.

Source: attributes/currency_format.md

ID Type Criteria Status Notes
CuF1 MUST All columns capturing a currency value, defined in the FOCUS specification, MUST follow the requirements listed below. Supports
CuF2 SHOULD Custom currency-related columns SHOULD also follow the same formatting requirements. Supports
CuF2.1 MUST Currency-related columns MUST be represented as a three-letter alphabetic code as dictated in the governing document ISO 4217:2015 when the value is presented in national currency (e.g., USD, EUR). Supports
CuF2.2 MUST Currency-related columns MUST conform to StringHandling requirements when the value is presented in virtual currency (e.g., credits, tokens). Not Applicable

Date/time format

Rules and formatting requirements for date/time-related columns appearing in a FOCUS dataset.

Source: attributes/datetime_format.md

ID Type Criteria Status Notes
DTF1 MUST All columns capturing a date/time value, defined in the FOCUS specification, MUST follow the formatting requirements listed below. Supports
DTF2 SHOULD Custom date/time-related columns SHOULD also follow the same formatting requirements. Supports
DTF3 MUST Date/time values MUST be in UTC (Coordinated Universal Time) to avoid ambiguity and ensure consistency across different time zones. Supports
DTF4 MUST Date/time values format MUST be aligned with ISO 8601 standard, which provides a globally recognized format for representing dates and times (see ISO 8601-1:2019 governing document for details). Supports
DTF5 MUST Values providing information about a specific moment in time MUST be represented in the extended ISO 8601 format with UTC offset ('YYYY-MM-DDTHH:mm:ssZ') and conform to the following guidelines: Include the date and time components, separated with the letter 'T'; Use two-digit hours (HH), minutes (mm), and seconds (ss); End with the 'Z' indicator to denote UTC (Coordinated Universal Time). Supports

Discount handling

Indicates how to include and apply discounts to usage charges or rows in a FOCUS dataset.

Source: attributes/discount_handling.md

ID Type Criteria Status Notes
DH1 MUST All rows defined in FOCUS MUST follow the discount handling requirements listed below. Supports
DH2.1 SHOULD All applicable discounts SHOULD be applied to each row they pertain to... Supports
DH2.2 SHOULD All applicable discounts... SHOULD NOT be negated in a separate row. Supports
DH3 MUST All discounts applied to a row MUST apply to the entire charge. Supports
DH3.1.1 MAY Multiple discounts MAY apply to a row... Supports
DH3.1.2 MUST Multiple discounts... [on a row] MUST apply to the entire charge covered by that row. Supports
DH3.2 MUST If a discount only applies to a portion of a charge, then the discounted portion of the charge MUST be split into a separate row. Supports
DH3.3 MUST Each discount MUST be identifiable using existing FOCUS columns. Supports CommitmentDiscountId is the only FOCUS column that identifies discounts.
DH3.3.1 MUST Rows with a commitment discount applied to them MUST include a CommitmentDiscountId. Supports
DH3.3.2 SHOULD If a provider applies a discount that cannot be represented by a FOCUS column, they SHOULD include additional columns to identify the source of the discount. Partially Supports Negotiated discounts can be identified by comparing ListCost and ContractedCost.
DH4 MUST Purchased discounts (e.g., commitment discounts) MUST be amortized. Supports
DH4.1 MUST The BilledCost MUST be 0 for any row where the commitment covers the entire cost for the charge period. Supports
DH4.2 MUST The EffectiveCost MUST include the portion of the amortized purchase cost that applies to this row. Supports
DH4.3 MUST The sum of the EffectiveCost for all rows where CommitmentDiscountStatus is "Used" or "Unused" for each CommitmentDiscountId over the entire duration of the commitment MUST be the same as the total BilledCost of the commitment discount. Supports
DH4.4.1 MUST The CommitmentDiscountId and ResourceId MUST be set to the ID assigned to the commitment discount. Supports To facilitate splitting commitment discounts, commitment discount purchases and refunds use the commitment discount order while commitment discount usage uses the instance within the order. Use x_SkuOrderId to identify the commitment discount order ID for usage charges.
DH4.4.2 MUST ChargeCategory MUST be set to "Purchase" on rows that represent a purchase of a commitment discount. Supports
DH4.5.1 MUST CommitmentDiscountStatus MUST be "Used" for ChargeCategory "Usage" rows that received a reduced price from a commitment. Supports
DH4.5.2 MUST CommitmentDiscountId MUST be set to the ID assigned to the discount. Supports
DH4.5.3 MUST ResourceId MUST be set to the ID of the resource that received the discount. Supports
DH4.6.1 MUST If a commitment is not fully utilized, the provider MUST include a row that represents the unused portion of the commitment for that charge period. Supports
DH4.6.2 MUST These rows MUST be represented with CommitmentDiscountStatus set to "Unused" and ChargeCategory set to "Usage". Supports
DH4.6.3 MUST Such rows MUST have their CommitmentDiscountId and ResourceId set to the ID assigned to the commitment discount. Supports
DH5 MUST Credits that are applied after the fact MUST use a ChargeCategory of "Credit". Not Applicable Credits aren't included in any Cost Management cost and usage dataset.

Key value format

Rules and formatting requirements for columns appearing in a FOCUS dataset that convey data as key-value pairs.

Source: attributes/key_value_format.md

ID Type Criteria Status Notes
KVF1 MUST All key-value related columns defined in the FOCUS specification MUST follow the key-value formatting requirements listed below. Supports
KVF1.1 MUST Key-Value Format columns MUST contain a serialized JSON string, consistent with the ECMA 404 definition of an object. Supports
KVF1.2 MUST Keys in a key-value pair MUST be unique within an object. Supports
KVF1.3 MUST Values in a key-value pair MUST be one of the following types: number, string, true, false, or null. Supports
KVF1.4 MUST Values in a key-value pair MUST NOT be an object or an array. Supports

Null handling

Indicates how to handle columns that don't have a value.

Source: attributes/null_handling.md

ID Type Criteria Status Notes
NH1 MUST All columns defined in the FOCUS specification MUST follow the null handling requirements listed below. Partially Supports Price and cost columns may use 0 when data isn't available in Cost Management.
NH2 SHOULD Custom columns SHOULD also follow the same formatting requirements. Partially Supports Price and cost columns may use 0 when data isn't available in Cost Management.
NH3 MUST Columns MUST use NULL when there isn't a value that can be specified for a nullable column. Partially Supports Price and cost columns may use 0 when data isn't available in Cost Management.
NH4 MUST Columns MUST NOT use empty strings or placeholder values such as 0 for numeric columns or "Not Applicable" for string columns to represent a null or not having a value, regardless of whether the column allows nulls or not. Partially Supports Price and cost columns may use 0 when data isn't available in Cost Management.

Numeric format

Rules and formatting requirements for numeric columns appearing in a FOCUS dataset.

Source: attributes/numeric_format.md

ID Type Criteria Status Notes
NF1 MUST All columns capturing a numeric value, defined in the FOCUS specification, MUST follow the formatting requirements listed below. Supports
NF2 SHOULD Custom numeric value capturing columns SHOULD adopt the same format requirements over time. Supports
NF2.1 MUST Columns with a Numeric value format MUST contain a single numeric value. Supports
NF2.2 MUST Numeric values MUST be expressed as an integer value, a decimal value, or a value expressed in scientific notation. Supports
NF3 MUST Fractional notation MUST NOT be used. Supports
NF3.1 MUST Numeric values expressed using scientific notation MUST be expressed using E notation "mEn" with a real number m and an integer n indicating a value of "m x 10^n". Supports
NF3.2 MUST The sign of the exponent MUST only be expressed as part of the exponent value if n is negative. Supports
NF3.3 MUST Numeric values MUST NOT be expressed with mathematical symbols, functions, or operators. Supports
NF3.4 MUST Numeric values MUST NOT contain qualifiers or additional characters (e.g., currency symbols, units of measure, etc.). Supports
NF3.5 MUST Numeric values MUST NOT contain commas or punctuation marks except for a single decimal point (".") if required to express a decimal value. Supports
NF3.6 MUST Numeric values MUST NOT include a character to represent a sign for a positive value. Supports
NF4 MUST A negative sign (-) MUST indicate a negative value. Supports
NF4.1 MUST Columns with a Numeric value format MUST present one of the following values as the "Data type" in the column definition. Supports
NF4.2 SHOULD Providers SHOULD define precision and scale for Numeric Format columns using one of the following precision values in a data definition document that providers publish. Supports

String handling

Requirements for string-capturing columns appearing in a FOCUS dataset.

Source: attributes/string_handling.md

ID Type Criteria Status Notes
SH1 MUST All columns capturing a string value, defined in the FOCUS specification, MUST follow the requirements listed below. Supports
SH2 SHOULD Custom string value capturing columns SHOULD adopt the same requirements over time. Supports
SH3 MUST String values MUST maintain the original casing, spacing, and other relevant consistency factors as specified by providers and end-users. Partially Supports ResourceName may be changed to lower or upper case by the resource provider. If you see this, file a support request on the service team responsible for the SKU/meter. ResourceId is lowercased to meet FOCUS requirements.
SH4.1 MUST Charges to mutable entities (e.g., resource names) MUST be accurately reflected in corresponding charges incurred after the change... Supports
SH4.2 MUST Charges to mutable entities (e.g., resource names)... MUST NOT alter charges incurred before the change, preserving data integrity and auditability for all charge records. Supports
SH5 MUST Immutable string values that refer to the same entity (e.g., resource identifiers, region identifiers, etc.) MUST remain consistent and unchanged across all billing periods. Supports
SH6 SHOULD Empty strings and strings consisting solely of spaces SHOULD NOT be used in not-nullable string columns. Supports
SH7 MAY When a record is provided after a change to a mutable string value and the ChargeClass is "Correction", the record MAY contain the altered value. Supports

Unit format

Indicates standards for expressing measurement units in columns appearing in a FOCUS dataset.

Source: attributes/unit_format.md

ID Type Criteria Status Notes
UF1 MUST All columns defined in FOCUS specifying Unit Format as a value format MUST follow the requirements listed below. Supports
UF1.1 SHOULD Units SHOULD be expressed as a single unit of measure adhering to one of the following three formats. Supports While valid based on rule UF2, the following units are exceptions to this rule: Units/10 Days, Units/3 Months, Units/6 Months.
UF1.2 MAY Units MAY be expressed with a unit quantity or time interval. Supports See UF1.1.
UF1.1 MUST If a unit quantity or time interval is used, the unit quantity or time interval MUST be expressed as a whole number. Supports
UF1.1.1 MUST Unit values and components of columns using the Unit Format MUST use a capitalization scheme that is consistent with the capitalization scheme used in this attribute if that term is listed in this section. Supports
UF1.1.2 SHOULD Units SHOULD be composed of the list of recommended units listed in this section unless the unit value covers a dimension not listed in the recommended unit set, or if the unit covers a count-based unit distinct from recommended values in the count dimension listed in this section. Supports
UF2 MUST Data size unit names MUST be abbreviated using one of the abbreviations in the following table. Supports
UF2.1 MUST Values that exceed 10^18 MUST use the abbreviation for exabit, exabyte, exbibit, and exbibyte... Supports
UF2.2 MUST ...values smaller than a byte MUST use the abbreviation for bit or byte. Supports
UF3 MAY If the following list of recommended values does not cover a count-based unit, a provider MAY introduce a new noun representing a count-based unit. Supports All supported unit values are documented in the Pricing units dataset in the FinOps toolkit.
UF3.1 MUST All nouns appearing in units that are not listed in the recommended values table will be considered count-based units. A new count-based unit value MUST be capitalized. Supports
UF3.2 MUST Time-based units can be used to measure consumption over a time interval or in combination with another unit to capture a rate of consumption. Time-based units MUST match one of the values listed in the following table. Supports
UF4 MUST If the unit value is a composite value made from combinations of one or more units, each component MUST also align with the set of recommended values. Supports
UF5.1 MUST Instead of "per" or "-" to denote a Composite Unit, slash ("/") and space(" ") MUST be used as a common convention. Supports
UF5.2 SHOULD Count-based units like requests, instances, and tokens SHOULD be expressed using a value listed in the count dimension. Supports
UF5.3 SHOULD For example, if a usage unit is measured as a rate of requests or instances over a period of time, the unit SHOULD be listed as "Requests/Day" to signify the number of requests per day. Supports

Columns

Availability zone

A provider-assigned identifier for a physically separated and isolated area within a Region that provides high availability and fault tolerance.

Source: columns/availabilityzone.md

ID Type Criteria Status Notes
AZ1 RECOMMENDED AvailabilityZone is RECOMMENDED to be present in a FOCUS dataset when the provider supports deploying resources or services within an availability zone. Does Not Support Availability zones aren't available in any Cost Management cost and usage dataset.
AZ2 MUST AvailabilityZone MUST be of type String. Not Applicable
AZ3 MUST AvailabilityZone MUST conform to StringHandling requirements. Not Applicable
AZ4 MUST AvailabilityZone MUST be null when a charge is not specific to an availability zone. Not Applicable

Billed cost

A charge serving as the basis for invoicing, inclusive of all reduced rates and discounts while excluding the amortization of upfront charges (one-time or recurring).

Source: columns/billedcost.md

ID Type Criteria Status Notes
BCo1 MUST BilledCost MUST be present in a FOCUS dataset. Supports
BCo2 MUST BilledCost MUST be of type Decimal. Supports
BCo3 MUST BilledCost MUST conform to NumericFormat requirements. Supports
BCo4 MUST BilledCost MUST NOT be null. Supports
BCo5 MUST BilledCost MUST be a valid decimal value. Supports
BCo6 MUST BilledCost MUST be 0 for charges where payments are received by a third party (e.g., marketplace transactions). Supports
BCo7 MUST BilledCost MUST be denominated in the BillingCurrency. Supports
BCo8 MUST The sum of the BilledCost for a given InvoiceId MUST match the sum of the payable amount provided in the corresponding invoice with the same id generated by the InvoiceIssuer. Supports

Billing account ID

The identifier assigned to a billing account by the provider.

FOCUS billing account represents the scope at which invoices are generated, which is an Enterprise Agreement billing account (also known as enrollment) or a Microsoft Customer Agreement billing profile.

Source: columns/billingaccountid.md

ID Type Criteria Status Notes
BAI1 MUST BillingAccountId MUST be present in a FOCUS dataset. Supports
BAI2 MUST BillingAccountId MUST be of type String. Supports
BAI3 MUST BillingAccountId MUST conform to StringHandling requirements. Supports
BAI4 MUST BillingAccountId MUST NOT be null. Supports
BAI5 MUST BillingAccountId MUST be a unique identifier within a provider. Supports
BAI6 SHOULD BillingAccountId SHOULD be a fully-qualified identifier. Supports BillingAccountId uses the fully qualified Azure Resource Manager ID instead of the simple enrollment number or billing profile ID. This ensures the scope is obvious and programmatically accessible.

Billing account name

The display name assigned to a billing account.

FOCUS billing account represents the scope at which invoices are generated, which is an Enterprise Agreement billing account (also known as enrollment) or a Microsoft Customer Agreement billing profile.

Source: columns/billingaccountname.md

ID Type Criteria Status Notes
BAN1 MUST BillingAccountName MUST be present in a FOCUS dataset. Supports
BAN2 MUST BillingAccountName MUST be of type String. Supports
BAN3 MUST BillingAccountName MUST conform to StringHandling requirements. Supports
BAN4 MUST BillingAccountName MUST NOT be null when the provider supports assigning a display name for the billing account. Supports

Billing account type

A provider-assigned name to identify the type of billing account.

FOCUS billing account represents the scope at which invoices are generated, which is an Enterprise Agreement billing account (also known as enrollment) or a Microsoft Customer Agreement billing profile.

Source: columns/billingaccounttype.md

ID Type Criteria Status Notes
BAT1 MUST BillingAccountType MUST be present in a FOCUS dataset when the provider supports more than one possible BillingAccountType value. Supports
BAT2 MUST BillingAccountType MUST be of type String. Supports
BAT3 MUST BillingAccountType MUST conform to StringHandling requirements. Supports
BAT3.1 MUST BillingAccountType MUST be null when BillingAccountId is null. Supports
BAT3.2 MUST BillingAccountType MUST NOT be null when BillingAccountId is not null. Supports
BAT4 MUST BillingAccountType MUST be a consistent, readable display value. Supports

Billing currency

Represents the currency that a charge was billed in.

Source: columns/billingcurrency.md

ID Type Criteria Status Notes
BCu1 MUST BillingCurrency MUST be present in a FOCUS dataset. Supports
BCu2 MUST BillingCurrency MUST be of type String. Supports
BCu3 MUST BillingCurrency MUST conform to StringHandling requirements. Supports
BCu4 MUST BillingCurrency MUST conform to CurrencyFormat requirements. Supports
BCu5 MUST BillingCurrency MUST NOT be null. Supports
BCu6 MUST BillingCurrency MUST match the currency used in the invoice generated by the invoice issuer. Supports
BCu7 MUST BillingCurrency MUST be expressed in national currency (e.g., USD, EUR). Supports

Billing period end

The exclusive end bound of a billing period.

Source: columns/billingperiodend.md

ID Type Criteria Status Notes
BPE1 MUST BillingPeriodEnd MUST be present in a FOCUS dataset. Supports
BPE2 MUST BillingPeriodEnd MUST be of type Date/Time. Supports
BPE3 MUST BillingPeriodEnd MUST conform to DateTimeFormat requirements. Supports
BPE4 MUST BillingPeriodEnd MUST NOT be null. Supports
BPE5 MUST BillingPeriodEnd MUST be the exclusive end bound of the billing period. Supports

Billing period start

The inclusive start bound of a billing period.

Source: columns/billingperiodstart.md

ID Type Criteria Status Notes
BPS1 MUST BillingPeriodStart MUST be present in a FOCUS dataset. Supports
BPS2 MUST BillingPeriodStart MUST be of type Date/Time. Supports
BPS3 MUST BillingPeriodStart MUST conform to DateTimeFormat requirements. Supports
BPS4 MUST BillingPeriodStart MUST NOT be null. Supports
BPS5 MUST BillingPeriodStart MUST be the inclusive start bound of the billing period. Supports

Capacity reservation ID

The identifier assigned to a capacity reservation by the provider.

Source: columns/capacityreservationid.md

ID Type Criteria Status Notes
CRI1 MUST CapacityReservationId MUST be present in a FOCUS dataset when the provider supports capacity reservations. Does Not Support CapacityReservationId isn't specified in the Cost Management FOCUS 1.2-preview dataset.
CRI2 MUST CapacityReservationId MUST be of type String. Not Applicable
CRI3 MUST CapacityReservationId MUST conform to StringHandling requirements. Not Applicable
CRI3.1 MUST CapacityReservationId MUST be null when a charge is not related to a capacity reservation. Not Applicable
CRI3.2 MUST CapacityReservationId MUST NOT be null when a charge represents the unused portion of a capacity reservation. Not Applicable
CRI3.3 SHOULD CapacityReservationId SHOULD NOT be null when a charge is related to a capacity reservation. Not Applicable
CRI3.4 MUST CapacityReservationId MUST be a unique identifier within the provider. Not Applicable
CRI3.5 SHOULD CapacityReservationId SHOULD be a fully-qualified identifier. Not Applicable

Capacity reservation status

Indicates whether the charge represents either the consumption of a capacity reservation or when a capacity reservation is unused.

Source: columns/capacityreservationstatus.md

ID Type Criteria Status Notes
CRS1 MUST CapacityReservationStatus MUST be present in a FOCUS dataset when the provider supports capacity reservations. Does Not Support CapacityReservationStatus isn't specified in the Cost Management FOCUS 1.2-preview dataset.
CRS2 MUST CapacityReservationStatus MUST be of type String. Not Applicable
CRS2.1 MUST CapacityReservationStatus MUST be null when CapacityReservationId is null. Not Applicable
CRS2.2 MUST CapacityReservationStatus MUST NOT be null when CapacityReservationId is not null and ChargeCategory is "Usage". Not Applicable
CRS2.3 MUST CapacityReservationStatus MUST be one of the allowed values. Not Applicable
CRS2.4 MUST CapacityReservationStatus MUST be "Unused" when the charge represents the unused portion of a capacity reservation. Not Applicable
CRS2.5 MUST CapacityReservationStatus MUST be "Used" when the charge represents the used portion of a capacity reservation. Not Applicable

Charge category

Represents the highest-level classification of a charge based on the nature of how it is billed.

Source: columns/chargecategory.md

ID Type Criteria Status Notes
CCa1 MUST ChargeCategory MUST be present in a FOCUS dataset. Supports
CCa2 MUST ChargeCategory MUST be of type String. Supports
CCa3 MUST ChargeCategory MUST NOT be null. Supports
CCa4 MUST ChargeCategory MUST be one of the allowed values. Supports

Charge class

Indicates whether the row represents a correction to a previously invoiced billing period.

Source: columns/chargeclass.md

ID Type Criteria Status Notes
CCl1 MUST ChargeClass MUST be present in a FOCUS dataset. Supports
CCl2 MUST ChargeClass MUST be of type String. Supports
CCl2.1 MUST ChargeClass MUST be null when the row does not represent a correction or when it represents a correction within the current billing period. Supports
CCl2.2 MUST ChargeClass MUST NOT be null when the row represents a correction to a previously invoiced billing period. Supports
CCl3 MUST ChargeClass MUST be "Correction" when ChargeClass is not null. Supports

Charge description

Self-contained summary of the charge's purpose and price.

Source: columns/chargedescription.md

ID Type Criteria Status Notes
CD1 MUST ChargeDescription MUST be present in a FOCUS dataset. Supports
CD2 MUST ChargeDescription MUST be of type String. Supports
CD3 MUST ChargeDescription MUST conform to StringHandling requirements. Supports
CD4 SHOULD ChargeDescription SHOULD NOT be null. Partially Supports ChargeDescription may be null for savings plan unused charges, Marketplace charges, and other charges that aren't directly associated with a product SKU.
CD5 SHOULD ChargeDescription maximum length SHOULD be provided in the corresponding FOCUS Metadata Schema. Does Not Support

Charge frequency

Indicates how often a charge will occur.

Source: columns/chargefrequency.md

ID Type Criteria Status Notes
CFr1 RECOMMENDED ChargeFrequency is RECOMMENDED to be present in a FOCUS dataset. Supports
CFr2 MUST ChargeFrequency MUST be of type String. Supports
CFr3 MUST ChargeFrequency MUST NOT be null. Supports
CFr4 MUST ChargeFrequency MUST be one of the allowed values. Supports
CFr5 MUST ChargeFrequency MUST NOT be "Usage-Based" when ChargeCategory is "Purchase". Supports

Charge period end

The exclusive end bound of a charge period.

Source: columns/chargeperiodend.md

ID Type Criteria Status Notes
CPE1 MUST ChargePeriodEnd MUST be present in a FOCUS dataset. Supports
CPE2 MUST ChargePeriodEnd MUST be of type Date/Time. Supports
CPE3 MUST ChargePeriodEnd MUST conform to DateTimeFormat requirements. Supports
CPE4 MUST ChargePeriodEnd MUST NOT be null. Supports
CPE5 MUST ChargePeriodEnd MUST be the exclusive end bound of the effective period of the charge. Supports

Charge period start

The inclusive start bound of a charge period.

Source: columns/chargeperiodstart.md

ID Type Criteria Status Notes
CPS1 MUST ChargePeriodStart MUST be present in a FOCUS dataset. Supports
CPS2 MUST ChargePeriodStart MUST be of type Date/Time. Supports
CPS3 MUST ChargePeriodStart MUST conform to DateTimeFormat requirements. Supports
CPS4 MUST ChargePeriodStart MUST NOT be null. Supports
CPS5 MUST ChargePeriodStart MUST be the inclusive start bound of the effective period of the charge. Supports

Commitment discount category

Indicates whether the commitment discount identified in the CommitmentDiscountId column is based on usage quantity or cost (aka "spend").

Source: columns/commitmentdiscountcategory.md

ID Type Criteria Status Notes
CDC1 MUST CommitmentDiscountCategory MUST be present in a FOCUS dataset when the provider supports commitment discounts. Supports
CDC2 MUST CommitmentDiscountCategory MUST be of type String. Supports
CDC2.1 MUST CommitmentDiscountCategory MUST be null when CommitmentDiscountId is null. Supports
CDC2.2 MUST CommitmentDiscountCategory MUST NOT be null when CommitmentDiscountId is not null. Supports
CDC3 MUST CommitmentDiscountCategory MUST be one of the allowed values. Supports

Commitment discount ID

The identifier assigned to a commitment discount by the provider.

Source: columns/commitmentdiscountid.md

ID Type Criteria Status Notes
CDI1 MUST CommitmentDiscountId MUST be present in a FOCUS dataset when the provider supports commitment discounts. Supports
CDI2 MUST CommitmentDiscountId MUST be of type String. Supports
CDI3 MUST CommitmentDiscountId MUST conform to StringHandling requirements. Supports
CDI3.1 MUST CommitmentDiscountId MUST be null when a charge is not related to a commitment discount. Supports
CDI3.2 MUST CommitmentDiscountId MUST NOT be null when a charge is related to a commitment discount. Supports
CDI3.3 MUST CommitmentDiscountId MUST be a unique identifier within the provider. Supports
CDI3.4 SHOULD CommitmentDiscountId SHOULD be a fully-qualified identifier. Supports

Commitment discount name

The display name assigned to a commitment discount.

Source: columns/commitmentdiscountname.md

ID Type Criteria Status Notes
CDN1 MUST CommitmentDiscountName MUST be present in a FOCUS dataset when the provider supports commitment discounts. Supports
CDN2 MUST CommitmentDiscountName MUST be of type String. Supports
CDN3 MUST CommitmentDiscountName MUST conform to StringHandling requirements. Supports
CDN3.1 MUST CommitmentDiscountName MUST be null when CommitmentDiscountId is null. Supports
CDN3.1.1 MUST CommitmentDiscountName MUST NOT be null when a display name can be assigned to a commitment discount. Supports
CDN3.1.2 MAY CommitmentDiscountName MAY be null when a display name cannot be assigned to a commitment discount. Supports

Commitment discount quantity

The amount of a commitment discount purchased or accounted for in commitment discount related rows that is denominated in Commitment Discount Units.

Source: columns/commitmentdiscountquantity.md

ID Type Criteria Status Notes
CDQ1 MUST CommitmentDiscountQuantity MUST be present in a FOCUS dataset when the provider supports commitment discounts. Does Not Support CommitmentDiscountQuantity isn't specified in the Cost Management FOCUS 1.2-preview dataset.
CDQ2 MUST CommitmentDiscountQuantity MUST be of type Decimal. Not Applicable
CDQ3 MUST CommitmentDiscountQuantity MUST conform to NumericFormat requirements. Not Applicable
CDQ3.1 MUST CommitmentDiscountQuantity MUST NOT be null when ChargeClass is not "Correction". Not Applicable
CDQ3.2 MAY CommitmentDiscountQuantity MAY be null when ChargeClass is "Correction". Not Applicable
CDQ3.1 MUST CommitmentDiscountQuantity MUST be null in all other cases. Not Applicable
CDQ3.2 MUST CommitmentDiscountQuantity MUST be a valid decimal value. Not Applicable
CDQ3.2.1 MUST CommitmentDiscountQuantity MUST be the quantity of CommitmentDiscountUnit, paid fully or partially upfront, that is eligible for consumption over the commitment discount's term when ChargeFrequency is "One-Time". Not Applicable
CDQ3.2.2 MUST CommitmentDiscountQuantity MUST be the quantity of CommitmentDiscountUnit that is eligible for consumption for each charge period that corresponds with the purchase when ChargeFrequency is "Recurring". Not Applicable
CDQ3.2.3 MUST CommitmentDiscountQuantity MUST be the metered quantity of CommitmentDiscountUnit that is consumed in a given charge period when CommitmentDiscountStatus is "Used". Not Applicable
CDQ3.2.4 MUST CommitmentDiscountQuantity MUST be the remaining, unused quantity of CommitmentDiscountUnit in a given charge period when CommitmentDiscountStatus is "Unused". Not Applicable

Commitment discount status

Indicates whether the charge corresponds with the consumption of a commitment discount or the unused portion of the committed amount.

Source: columns/commitmentdiscountstatus.md

ID Type Criteria Status Notes
C1 MUST CommitmentDiscountStatus MUST be present in a FOCUS dataset when the provider supports commitment discounts. Supports
C2 MUST CommitmentDiscountStatus MUST be of type String. Supports
C2.1 MUST CommitmentDiscountStatus MUST be null when CommitmentDiscountId is null. Supports
C2.2 MUST CommitmentDiscountStatus MUST NOT be null when CommitmentDiscountId is not null and Charge Category is "Usage". Supports
C3 MUST CommitmentDiscountStatus MUST be one of the allowed values. Supports

Commitment discount type

A provider-assigned identifier for the type of commitment discount applied to the row.

Source: columns/commitmentdiscounttype.md

ID Type Criteria Status Notes
CDT1 MUST CommitmentDiscountType MUST be present in a FOCUS dataset when the provider supports commitment discounts. Supports
CDT2 MUST CommitmentDiscountType MUST be of type String. Supports
CDT3 MUST CommitmentDiscountType MUST conform to StringHandling requirements. Supports
CDT3.1 MUST CommitmentDiscountType MUST be null when CommitmentDiscountId is null. Supports
CDT3.2 MUST CommitmentDiscountType MUST NOT be null when CommitmentDiscountId is not null. Supports

Commitment discount unit

The provider-specified measurement unit indicating how a provider measures the Commitment Discount Quantity of a commitment discount.

Source: columns/commitmentdiscountunit.md

ID Type Criteria Status Notes
CDU1 MUST CommitmentDiscountUnit MUST be present in a FOCUS dataset when the provider supports commitment discounts. Does Not Support CommitmentDiscountUnit isn't specified in the Cost Management FOCUS 1.2-preview dataset.
CDU2 MUST CommitmentDiscountUnit MUST be of type String. Not Applicable
CDU3 MUST CommitmentDiscountUnit MUST conform to StringHandling requirements. Not Applicable
CDU4 SHOULD CommitmentDiscountUnit SHOULD conform to UnitFormat requirements. Not Applicable
CDU4.1 MUST CommitmentDiscountUnit MUST be null when CommitmentDiscountQuantity is null. Not Applicable
CDU4.2 MUST CommitmentDiscountUnit MUST NOT be null when CommitmentDiscountQuantity is not null. Not Applicable
CDU4.3 MUST CommitmentDiscountUnit MUST remain consistent over time for a given CommitmentDiscountId. Not Applicable
CDU4.4 MUST CommitmentDiscountUnit MUST represent the unit used to measure the commitment discount. Not Applicable
CDU4.5 SHOULD When accounting for commitment discount flexibility, the CommitmentDiscountUnit value SHOULD reflect this consideration. Not Applicable

Consumed quantity

The volume of a metered SKU associated with a resource or service used, based on the Consumed Unit.

Source: columns/consumedquantity.md

ID Type Criteria Status Notes
CQ1 MUST ConsumedQuantity MUST be present in a FOCUS dataset when the provider supports the measurement of usage. Supports
CQ2 MUST ConsumedQuantity MUST be of type Decimal. Supports
CQ3 MUST ConsumedQuantity MUST conform to NumericFormat requirements. Supports
CQ3.1 MUST ConsumedQuantity MUST be null when ChargeCategory is not "Usage", or when ChargeCategory is "Usage" and CommitmentDiscountStatus is "Unused". Supports
CQ3.1.1 MUST ConsumedQuantity MUST NOT be null when ChargeClass is not "Correction". Supports
CQ3.1.2 MAY ConsumedQuantity MAY be null when ChargeClass is "Correction". Supports
CQ4 MUST ConsumedQuantity MUST be a valid decimal value when not null. Supports

Consumed unit

Provider-specified measurement unit indicating how a provider measures usage of a metered SKU associated with a resource or service.

Source: columns/consumedunit.md

ID Type Criteria Status Notes
CU1 MUST ConsumedUnit MUST be present in a FOCUS dataset when the provider supports the measurement of usage. Supports
CU2 MUST ConsumedUnit MUST be of type String. Supports
CU3 MUST ConsumedUnit MUST conform to StringHandling requirements. Supports
CU4 SHOULD ConsumedUnit SHOULD conform to UnitFormat requirements. Supports
CU4.1 MUST ConsumedUnit MUST be null when ConsumedQuantity is null. Supports
CU4.2 MUST ConsumedUnit MUST NOT be null when ConsumedQuantity is not null. Supports

Contracted cost

Cost calculated by multiplying contracted unit price and the corresponding Pricing Quantity.

Source: columns/contractedcost.md

ID Type Criteria Status Notes
CnC1 MUST ContractedCost MUST be present in a FOCUS dataset. Supports
CnC2 MUST ContractedCost MUST be of type Decimal. Supports
CnC3 MUST ContractedCost MUST conform to NumericFormat requirements. Supports
CnC4 MUST ContractedCost MUST NOT be null. Partially Supports ContractedCost is never null, but may be 0 for: EA Marketplace charges, EA reservation usage when cost allocation is enabled, MCA reservation usage.
CnC5 MUST ContractedCost MUST be a valid decimal value. Supports
CnC6 MUST ContractedCost MUST be denominated in the BillingCurrency. Supports
CnC7.1 MUST When ContractedUnitPrice is null... ContractedCost of a charge calculated based on other charges (e.g., when the ChargeCategory is "Tax") MUST be calculated based on the ContractedCost of those related charges. Supports
CnC7.2 MUST When ContractedUnitPrice is null... ContractedCost of a charge unrelated to other charges (e.g., when the ChargeCategory is "Credit") MUST match the BilledCost. Supports ContractedCost may be off by less than 0.00001 due to rounding errors.
CnC8 MUST The product of ContractedUnitPrice and PricingQuantity MUST match the ContractedCost when ContractedUnitPrice is not null, PricingQuantity is not null, and ChargeClass is not "Correction". Supports ContractedCost may be off by less than 0.00001 due to rounding errors.
CnC9 MAY Discrepancies in ContractedCost, ContractedUnitPrice, or PricingQuantity MAY exist when ChargeClass is "Correction". Supports

Contracted unit price

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.

Source: columns/contractedunitprice.md

ID Type Criteria Status Notes
CnUP1 MUST ContractedUnitPrice MUST be present in a FOCUS dataset when the provider supports negotiated pricing concepts. Supports
CnUP2 MUST ContractedUnitPrice MUST be of type Decimal. Supports
CnUP3 MUST ContractedUnitPrice MUST conform to NumericFormat requirements. Supports
CnUP4.1 MUST ContractedUnitPrice MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
CnUP4.2 MUST ContractedUnitPrice MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Partially Supports ContractedUnitPrice is never null, but may be 0 for: EA Marketplace charges, EA reservation usage when cost allocation is enabled, MCA reservation usage.
CnUP4.3 MAY ContractedUnitPrice MAY be null in all other cases. Supports
CnUP5.1 MUST When ContractedUnitPrice is not null... ContractedUnitPrice MUST be a non-negative decimal value. Supports
CnUP5.2 MUST When ContractedUnitPrice is not null... ContractedUnitPrice MUST be denominated in the BillingCurrency. Supports
CnUP5.3 MUST When ContractedUnitPrice is not null... The product of ContractedUnitPrice and PricingQuantity MUST match the ContractedCost when PricingQuantity is not null and ChargeClass is not "Correction". Supports ContractedCost may be off by less than 0.00001 due to rounding errors.
CnUP6 MAY Discrepancies in ContractedUnitPrice, ContractedCost, or PricingQuantity MAY exist when ChargeClass is "Correction". Supports

Effective cost

The amortized 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.

Source: columns/effectivecost.md

ID Type Criteria Status Notes
EC1 MUST EffectiveCost MUST be present in a FOCUS dataset. Supports
EC2 MUST EffectiveCost MUST be of type Decimal. Supports
EC3 MUST EffectiveCost MUST conform to NumericFormat requirements. Supports
EC4 MUST EffectiveCost MUST NOT be null. Supports
EC5 MUST EffectiveCost MUST be a valid decimal value. Supports
EC6 MUST EffectiveCost MUST be 0 when ChargeCategory is "Purchase" and the purchase is intended to cover future eligible charges. Supports
EC7 MUST EffectiveCost MUST be denominated in the BillingCurrency. Supports
EC8.1 MUST EffectiveCost of a charge calculated based on other charges (e.g., when the ChargeCategory is "Tax") MUST be calculated based on the EffectiveCost of those related charges. Supports
EC8.2 MUST EffectiveCost of a charge unrelated to other charges (e.g., when the ChargeCategory is "Credit") MUST match the BilledCost. Supports
EC9.1 MUST The sum of EffectiveCost where ChargeCategory is "Usage" MUST equal the sum of BilledCost where ChargeCategory is "Purchase". Supports
EC9.2 MUST The sum of EffectiveCost where ChargeCategory is "Usage" MUST equal the sum of EffectiveCost where ChargeCategory is "Usage" and CommitmentDiscountStatus is "Used", plus the sum of EffectiveCost where ChargeCategory is "Usage" and CommitmentDiscountStatus is "Unused". Supports

Invoice ID

The provider-assigned identifier for an invoice encapsulating some or all charges in the corresponding billing period for a given billing account.

Source: columns/invoiceid.md

ID Type Criteria Status Notes
II1 RECOMMENDED InvoiceId is RECOMMENDED to be present in a FOCUS dataset. Supports
II2 MUST InvoiceId MUST be of type String. Supports
II3 MUST InvoiceId MUST conform to StringHandling requirements. Supports
II4.1 MUST InvoiceId MUST be null when the charge is not associated either with an invoice or with a pre-generated provisional invoice. Supports
II4.2 MUST InvoiceId MUST NOT be null when the charge is associated with either an issued invoice or a pre-generated provisional invoice. Partially Supports Supported for Microsoft Customer Agreement accounts but not for Enterprise Agreement accounts.
II5 MAY InvoiceId MAY be generated prior to an invoice being issued. Not Applicable
II6 MUST InvoiceId MUST be associated with the related charge and BillingAccountId when a pre-generated invoice or provisional invoice exists. Supports

Invoice issuer name

The name of the entity responsible for invoicing for the resources or services consumed.

For Cloud Solution Provider (CSP) accounts, InvoiceIssuerName is set to the name of the Cloud Solution Provider (CSP) distributor that has a direct relationship with Microsoft and may not represent the organization that directly invoices the end customer. For all other account types, the value is "Microsoft", even if there's an intermediary organization that invoices the end customer.

Source: columns/invoiceissuer.md

ID Type Criteria Status Notes
IIN1 MUST InvoiceIssuerName MUST be present in a FOCUS dataset. Supports
IIN2 MUST InvoiceIssuerName MUST be of type String. Supports
IIN3 MUST InvoiceIssuerName MUST conform to StringHandling requirements. Supports
IIN4 MUST InvoiceIssuerName MUST NOT be null. Supports

List cost

Cost calculated by multiplying List Unit Price and the corresponding Pricing Quantity.

Source: columns/listcost.md

ID Type Criteria Status Notes
LC1 MUST ListCost MUST be present in a FOCUS dataset. Supports
LC2 MUST ListCost MUST be of type Decimal. Supports
LC3 MUST ListCost MUST conform to NumericFormat requirements. Supports
LC4 MUST ListCost MUST NOT be null. Partially Supports ListCost is never null, but may be 0 for: Marketplace charges and reservation usage.
LC5 MUST ListCost MUST be a valid decimal value. Supports
LC6 MUST ListCost MUST be denominated in the BillingCurrency. Supports
LC7.1 MUST When ListUnitPrice is null... ListCost of a charge calculated based on other charges (e.g., when the ChargeCategory is "Tax") MUST be calculated based on the ListCost of those related charges. Supports
LC7.2 MUST When ListUnitPrice is null... ListCost of a charge unrelated to other charges (e.g., when the ChargeCategory is "Credit") MUST match the BilledCost. Supports ListCost may be off by less than 0.0000000001 due to rounding errors.
LC8 MUST The product of ListUnitPrice and PricingQuantity MUST match the ListCost when ListUnitPrice is not null, PricingQuantity is not null, and ChargeClass is not "Correction". Supports ListCost may be off by less than 0.0000000001 due to rounding errors.
LC9 MAY Discrepancies in ListCost, ListUnitPrice, or PricingQuantity MAY exist when ChargeClass is "Correction". Supports

List unit price

The suggested provider-published unit price for a single Pricing Unit of the associated SKU, exclusive of any discounts.

Source: columns/listunitprice.md

ID Type Criteria Status Notes
LUP1 MUST ListUnitPrice MUST be present in a FOCUS dataset when the provider publishes unit prices exclusive of discounts. Supports
LUP2 MUST ListUnitPrice MUST be of type Decimal. Supports
LUP3 MUST ListUnitPrice MUST conform to NumericFormat requirements. Supports
LUP4.1 MUST ListUnitPrice MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
LUP4.2 MUST ListUnitPrice MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Partially Supports ListUnitPrice is never null, but may be 0 for: Marketplace charges and reservation usage.
LUP4.3 MAY ListUnitPrice MAY be null in all other cases. Supports
LUP5.1 MUST When ListUnitPrice is not null... ListUnitPrice MUST be a non-negative decimal value. Supports
LUP5.2 MUST When ListUnitPrice is not null... ListUnitPrice MUST be denominated in the BillingCurrency. Supports
LUP5.3 MUST When ListUnitPrice is not null... The product of ListUnitPrice and PricingQuantity MUST match the ListCost when PricingQuantity is not null and ChargeClass is not "Correction". Supports
LUP5.4 MAY When ListUnitPrice is not null... Discrepancies in ListUnitPrice, ListCost, or PricingQuantity MAY exist when ChargeClass is "Correction". Supports

Pricing category

Describes the pricing model used for a charge at the time of use or purchase.

Source: columns/pricingcategory.md

ID Type Criteria Status Notes
PCt1 MUST PricingCategory MUST be present in a FOCUS dataset when the provider supports more than one pricing category across all SKUs. Supports
PCt2 MUST PricingCategory MUST be of type String. Supports
PCt2.1 MUST PricingCategory MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
PCt2.2 MUST PricingCategory MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Supports
PCt2.3 MAY PricingCategory MAY be null in all other cases. Supports
PCt2.4 MUST PricingCategory MUST be one of the allowed values. Supports
PCt2.5 MUST PricingCategory MUST be "Standard" when pricing is predetermined at the agreed upon rate for the billing account. Supports
PCt2.6 MUST PricingCategory MUST be "Committed" when the charge is subject to an existing commitment discount and is not the purchase of the commitment discount. Supports
PCt2.7 MUST PricingCategory MUST be "Dynamic" when pricing is determined by the provider and may change over time, regardless of predetermined agreement pricing. Supports
PCt2.8 MUST PricingCategory MUST be "Other" when there is a pricing model but none of the allowed values apply. Supports

Pricing currency

The national or virtual currency denomination that a resource or service was priced in.

Source: columns/pricingcurrency.md

ID Type Criteria Status Notes
PCu1 MUST PricingCurrency MUST be present in a FOCUS dataset when the provider supports pricing and billing in different currencies. Supports
PCu2 MUST PricingCurrency MUST be of type String. Supports
PCu3 MUST PricingCurrency MUST conform to StringHandling requirements. Supports
PCu4 MUST PricingCurrency MUST conform to CurrencyFormat requirements. Supports
PCu5 MUST PricingCurrency MUST NOT be null. Supports

Pricing currency contracted unit price

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, and expressed in Pricing Currency.

Source: columns/pricingcurrencycontractedunitprice.md

ID Type Criteria Status Notes
PCuCnUP1 MUST PricingCurrencyContractedUnitPrice MUST be present in a FOCUS dataset when the provider supports prices in virtual currency and publishes unit prices exclusive of discounts. Not Applicable
PCuCnUP2 RECOMMENDED PricingCurrencyContractedUnitPrice is RECOMMENDED to be present in a FOCUS dataset when the provider supports pricing and billing in different currencies and publishes unit prices exclusive of discounts. Does Not Support Not included in the Cost Management dataset based on customer feedback.
PCuCnUP3 MAY PricingCurrencyContractedUnitPrice MAY be present in a FOCUS dataset in all other cases. Not Applicable
PCuCnUP1 MUST PricingCurrencyContractedUnitPrice MUST be of type Decimal. Not Applicable
PCuCnUP2 MUST PricingCurrencyContractedUnitPrice MUST conform to NumericFormat requirements. Not Applicable
PCuCnUP2.1 MUST PricingCurrencyContractedUnitPrice MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
PCuCnUP2.2 MUST PricingCurrencyContractedUnitPrice MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Not Applicable
PCuCnUP2.3 MAY PricingCurrencyContractedUnitPrice MAY be null in all other cases. Not Applicable
PCuCnUP2.4 MUST PricingCurrencyContractedUnitPrice MUST be a non-negative decimal value. Not Applicable
PCuCnUP2.5 MUST PricingCurrencyContractedUnitPrice MUST be denominated in the PricingCurrency. Not Applicable
PCuCnUP3 MAY Discrepancies in PricingCurrencyContractedUnitPrice, ContractedCost, or PricingQuantity MAY exist when ChargeClass is "Correction". Not Applicable

Pricing currency effective cost

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.

Source: columns/pricingcurrencyeffectivecost.md

ID Type Criteria Status Notes
PCuEC1 MUST PricingCurrencyEffectiveCost MUST be present in a FOCUS dataset when the provider supports prices in virtual currency and publishes unit prices exclusive of discounts. Not Applicable
PCuEC2 RECOMMENDED PricingCurrencyEffectiveCost is RECOMMENDED to be present in a FOCUS dataset when the provider supports pricing and billing in different currencies and publishes unit prices exclusive of discounts. Does Not Support Not included in the Cost Management dataset based on customer feedback.
PCuEC3 MAY PricingCurrencyEffectiveCost MAY be present in a FOCUS dataset in all other cases. Not Applicable
PCuEC1 MUST PricingCurrencyEffectiveCost MUST be of type Decimal. Not Applicable
PCuEC2 MUST PricingCurrencyEffectiveCost MUST conform to NumericFormat requirements. Not Applicable
PCuEC3 MUST PricingCurrencyEffectiveCost MUST NOT be null. Not Applicable
PCuEC4 MUST PricingCurrencyEffectiveCost MUST be a valid decimal value. Not Applicable
PCuEC5 MUST PricingCurrencyEffectiveCost MUST be 0 in the event of prepaid purchases or purchases that are applicable to previous usage. Not Applicable
PCuEC6 MUST PricingCurrencyEffectiveCost MUST be denominated in the PricingCurrency. Not Applicable

Pricing currency list unit price

The suggested provider-published unit price for a single Pricing Unit of the associated SKU, exclusive of any discounts and expressed in Pricing Currency.

Source: columns/pricingcurrencylistunitprice.md

ID Type Criteria Status Notes
PCuLUP1 MUST PricingCurrencyListUnitPrice MUST be present in a FOCUS dataset when the provider supports prices in virtual currency and publishes unit prices exclusive of discounts. Not Applicable
PCuLUP2 RECOMMENDED PricingCurrencyListUnitPrice is RECOMMENDED to be present in a FOCUS dataset when the provider supports pricing and billing in different currencies and publishes unit prices exclusive of discounts. Does Not Support Not included in the Cost Management dataset based on customer feedback.
PCuLUP3 MAY PricingCurrencyListUnitPrice MAY be present in a FOCUS dataset in all other cases. Not Applicable
PCuLUP1 MUST PricingCurrencyListUnitPrice MUST be of type Decimal. Not Applicable
PCuLUP2 MUST PricingCurrencyListUnitPrice MUST conform to NumericFormat requirements. Not Applicable
PCuLUP2.1 MUST PricingCurrencyListUnitPrice MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
PCuLUP2.2 MUST PricingCurrencyListUnitPrice MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Not Applicable
PCuLUP2.3 MAY PricingCurrencyListUnitPrice MAY be null in all other cases. Not Applicable
PCuLUP2.4 MUST PricingCurrencyListUnitPrice MUST be a non-negative decimal value. Not Applicable
PCuLUP2.5 MUST PricingCurrencyListUnitPrice MUST be denominated in the PricingCurrency. Not Applicable
PCuLUP2.6 MAY Discrepancies in PricingCurrencyListUnitPrice, ListCost, or PricingQuantity MAY be addressed independently when ChargeClass is "Correction". Not Applicable

Pricing quantity

The volume of a given SKU associated with a resource or service used or purchased, based on the Pricing Unit.

Source: columns/pricingquantity.md

ID Type Criteria Status Notes
PQ1 MUST PricingQuantity MUST be present in a FOCUS dataset. Supports
PQ2 MUST PricingQuantity MUST be of type Decimal. Supports
PQ3 MUST PricingQuantity MUST conform to NumericFormat requirements. Supports
PQ3.1 MUST PricingQuantity MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
PQ3.2 MUST PricingQuantity MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Supports
PQ3.3 MAY PricingQuantity MAY be null in all other cases. Supports
PQ3.4 MUST PricingQuantity MUST be a valid decimal value. Supports
PQ3.5 MUST The product of PricingQuantity and a unit price (e.g., ContractedUnitPrice) MUST match the corresponding cost metric (e.g., ContractedCost) when the unit price is not null and ChargeClass is not "Correction". Supports
PQ4 MAY Discrepancies in PricingQuantity, unit prices (e.g., ContractedUnitPrice), or costs (e.g., ContractedCost) MAY exist when ChargeClass is "Correction". Supports

Pricing unit

Provider-specified measurement unit for determining unit prices, indicating how the provider rates measured usage and purchase quantities after applying pricing rules like block pricing.

Source: columns/pricingunit.md

ID Type Criteria Status Notes
PU1 MUST PricingUnit MUST be present in a FOCUS dataset. Supports
PU2 MUST PricingUnit MUST be of type String. Supports
PU3 MUST PricingUnit MUST conform to StringHandling requirements. Supports
PU4 SHOULD PricingUnit SHOULD conform to UnitFormat requirements. Supports
PU4.1 MUST PricingUnit MUST be null when PricingQuantity is null. Supports
PU4.2 MUST PricingUnit MUST NOT be null when PricingQuantity is not null. Supports
PU4.3 MUST PricingUnit MUST be semantically equal to the corresponding pricing measurement unit provided in provider-published price list. Supports
PU4.4 MUST PricingUnit MUST be semantically equal to the corresponding pricing measurement unit provided in invoice, when the invoice includes a pricing measurement unit. Supports

Provider name

The name of the entity that made the resources or services available for purchase.

Source: columns/provider.md

ID Type Criteria Status Notes
PvN1 MUST ProviderName MUST be present in a FOCUS dataset. Supports
PvN2 MUST ProviderName MUST be of type String. Supports
PvN3 MUST ProviderName MUST conform to StringHandling requirements. Supports
PvN4 MUST ProviderName MUST NOT be null. Supports

Publisher name

The name of the entity that produced the resources or services that were purchased.

Source: columns/publisher.md

ID Type Criteria Status Notes
PbN1 MUST PublisherName MUST be present in a FOCUS dataset. Supports
PbN2 MUST PublisherName MUST be of type String. Supports
PbN3 MUST PublisherName MUST conform to StringHandling requirements. Supports
PbN4 MUST PublisherName MUST NOT be null. Partially Supports PublisherName may be null for reservation usage and purchases, and savings plan unused charges.

Region ID

Provider-assigned identifier for an isolated geographic area where a resource is provisioned or a service is provided.

Source: columns/regionid.md

ID Type Criteria Status Notes
RgI1 MUST RegionId MUST be present in a FOCUS dataset when the provider supports deploying resources or services within a region. Supports
RgI2 MUST RegionId MUST be of type String. Supports
RgI3 MUST RegionId MUST conform to StringHandling requirements. Supports
RgI3.1 MUST RegionId MUST NOT be null when a resource or service is operated in or managed from a distinct region. Supports
RgI3.2 MAY RegionId MAY be null when a resource or service is not operated in or managed from a distinct region. Supports

Region name

The name of an isolated geographic area where a resource is provisioned or a service is provided.

Source: columns/regionname.md

ID Type Criteria Status Notes
RgN1 MUST RegionName MUST be present in a FOCUS dataset when the provider supports deploying resources or services within a region. Supports
RgN2 MUST RegionName MUST be of type String. Supports
RgN3 MUST RegionName MUST conform to StringHandling requirements. Supports
RgN3.1 MUST RegionName MUST be null when RegionId is null. Supports
RgN3.2 MUST RegionName MUST NOT be null when RegionId is not null. Supports

Resource ID

Identifier assigned to a resource by the provider.

Source: columns/resourceid.md

ID Type Criteria Status Notes
RsI1 MUST ResourceId MUST be present in a FOCUS dataset when the provider supports billing based on provisioned resources. Supports
RsI2 MUST ResourceId MUST be of type String. Supports
RsI3 MUST ResourceId MUST conform to StringHandling requirements. Supports
RsI3.1 MUST ResourceId MUST be null when a charge is not related to a resource. Supports Purchases may not have an assigned resource ID.
RsI3.2 MUST ResourceId MUST NOT be null when a charge is related to a resource. Supports ResourceId may be null when a resource is indirectly related to the charges. If you feel it's missing, file a support request for the service that owns the resource type.
RsI3.3 MUST ResourceId MUST be a unique identifier within the provider. Supports
RsI3.4 SHOULD ResourceId SHOULD be a fully-qualified identifier. Supports

Resource name

Display name assigned to a resource.

Source: columns/resourcename.md

ID Type Criteria Status Notes
RsN1 MUST ResourceName MUST be present in a FOCUS dataset when the provider supports billing based on provisioned resources. Supports
RsN2 MUST ResourceName MUST be of type String. Supports
RsN3 MUST ResourceName MUST conform to StringHandling requirements. Supports
RsN3.1 MUST ResourceName MUST be null when ResourceId is null or when the resource does not have an assigned display name. Supports
RsN3.2 MUST ResourceName MUST NOT be null when ResourceId is not null and the resource has an assigned display name. Supports
RsN4 MUST ResourceName MUST NOT duplicate ResourceId when the resource is not provisioned interactively or only has a system-generated ResourceId. Supports

Resource type

The kind of resource the charge applies to.

Source: columns/resourcetype.md

ID Type Criteria Status Notes
RsT1 MUST ResourceType MUST be present in a FOCUS dataset when the provider supports billing based on provisioned resources and supports assigning types to resources. Supports
RsT2 MUST ResourceType MUST be of type String. Supports
RsT3 MUST ResourceType MUST conform to StringHandling requirements. Supports
RsT3.1 MUST ResourceType MUST be null when ResourceId is null. Supports
RsT3.2 MUST ResourceType MUST NOT be null when ResourceId is not null. Supports

Service category

Highest-level classification of a service based on the core function of the service.

ServiceCategory is set based on a resource type mapping that uses the Services dataset in the FinOps toolkit. If you see gaps, submit a change request.

Source: columns/servicecategory.md

ID Type Criteria Status Notes
SvC1 MUST ServiceCategory MUST be present in a FOCUS dataset. Supports
SvC2 MUST ServiceCategory MUST be of type String. Supports
SvC3 MUST ServiceCategory MUST NOT be null. Supports
SvC4 MUST ServiceCategory MUST be one of the allowed values. Supports

Service name

An offering that can be purchased from a provider (e.g., cloud virtual machine, SaaS database, professional services from a systems integrator).

ServiceName is set based on a resource type mapping that uses the Services dataset in the FinOps toolkit. If you see gaps, submit a change request.

Source: columns/servicename.md

ID Type Criteria Status Notes
SvN1 MUST ServiceName MUST be present in a FOCUS dataset. Supports
SvN2 MUST ServiceName MUST be of type String. Supports
SvN3 MUST ServiceName MUST conform to StringHandling requirements. Supports
SvN4 MUST ServiceName MUST NOT be null. Partially supports ServiceName may be empty for some purchases and adjustments.
SvN5.1 MUST ServiceName MUST have one and only one ServiceCategory that best aligns with its primary purpose, except when no suitable ServiceCategory is available. Supports
SvN5.2 MUST ServiceName MUST be associated with the ServiceCategory "Other" when no suitable ServiceCategory is available. Supports
SvN6.1 SHOULD ServiceName SHOULD have one and only one ServiceSubcategory that best aligns with its primary purpose, except when no suitable ServiceSubcategory is available. Supports
SvN6.2 SHOULD ServiceName SHOULD be associated with the ServiceSubcategory "Other" when no suitable ServiceSubcategory is available. Supports

Service subcategory

Secondary classification of the Service Category for a service based on its core function.

ServiceSubcategory is set based on a resource type mapping that uses the Services dataset in the FinOps toolkit. If you see gaps, submit a change request.

Source: columns/servicesubcategory.md

ID Type Criteria Status Notes
SvS1 RECOMMENDED ServiceSubcategory is RECOMMENDED to be present in a FOCUS dataset. Supports
SvS2 MUST ServiceSubcategory MUST be of type String. Supports
SvS3 MUST ServiceSubcategory MUST NOT be null. Supports
SvS4 MUST ServiceSubcategory MUST be one of the allowed values. Supports
SvS5 MUST ServiceSubcategory MUST have one and only one parent ServiceCategory as specified in the allowed values below. Supports

SKU ID

Provider-specified unique identifier that represents a specific SKU (e.g., a quantifiable good or service offering).

Source: columns/skuid.md

ID Type Criteria Status Notes
SkI1 MUST SkuId MUST be present in a FOCUS dataset when the provider supports unit pricing concepts and publishes price lists, publicly or as part of contracting. Supports
SkI2 MUST SkuId MUST be of type String. Supports
SkI3 MUST SkuId MUST conform to StringHandling requirements. Supports
SkI4.1 MUST SkuId MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
SkI4.2 MUST SkuId MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Partially Supports SkuId may be null for some rows like savings plan unused charges and Marketplace charges.
SkI4.3 MAY SkuId MAY be null in all other cases. Supports
SkI5.1 MUST SkuId MUST remain consistent across billing accounts or contracts. Supports
SkI5.2 MUST SkuId MUST remain consistent across PricingCategory values. Partially Supports SkuId may be different for some PricingCategory values.
SkI5.3 MUST SkuId MUST remain consistent regardless of any other factors that might impact the price but do not affect the functionality of the SKU. Partially Supports SkuId may be different for some SKUs that offer the same functionality.
SkI6 MUST SkuId MUST be associated with a given resource or service when ChargeCategory is "Usage" or "Purchase". Supports
SkI7 MAY SkuId MAY equal SkuPriceId. Supports

SKU meter

Describes the functionality being metered or measured by a particular SKU in a charge.

Source: columns/skumeter.md

ID Type Criteria Status Notes
SkM1 MUST SkuMeter MUST be present in a FOCUS dataset when the provider supports unit pricing concepts and publishes price lists, publicly or as part of contracting. Supports
SkM2 MUST SkuMeter MUST be of type String. Supports
SkM3 MUST SkuMeter MUST conform to StringHandling requirements. Supports
SkM4.1 MUST SkuMeter MUST be null when SkuId is null. Supports
SkM4.2 SHOULD SkuMeter SHOULD NOT be null when SkuId is not null. Supports
SkM5 SHOULD SkuMeter SHOULD remain consistent over time for a given SkuId. Partially Supports SkuMeter may be different for a given SkuId.

SKU price details

A set of properties of a SKU Price ID which are meaningful and common to all instances of that SKU Price ID.

Source: columns/skupricedetails.md

ID Type Criteria Status Notes
SkPD1 MUST SkuPriceDetails MUST be present in a FOCUS dataset when the provider supports unit pricing concepts and publishes price lists, publicly or as part of contracting. Does Not Support SkuPriceDetails isn't specified in the Cost Management FOCUS 1.2-preview dataset.
SkPD2 MUST SkuPriceDetails MUST conform to KeyValueFormat requirements. Not Applicable
SkPD3 SHOULD SkuPriceDetails property keys SHOULD conform to PascalCase format. Not Applicable
SkPD3.1 MUST SkuPriceDetails MUST be null when SkuPriceId is null. Not Applicable
SkPD3.2 MAY SkuPriceDetails MAY be null when SkuPriceId is not null. Not Applicable
SkPD3.3 MUST SkuPriceDetails MUST be associated with a given SkuPriceId. Not Applicable
SkPD3.4 MUST SkuPriceDetails MUST NOT include properties that are not applicable to the corresponding SkuPriceId. Not Applicable
SkPD3.5 SHOULD SkuPriceDetails SHOULD include all FOCUS-defined SKU Price properties listed below that are applicable to the corresponding SkuPriceId. Not Applicable
SkPD3.6 MUST SkuPriceDetails MUST include the FOCUS-defined SKU Price property when an equivalent property is included as a Provider-defined property. Not Applicable
SkPD3.7 MAY SkuPriceDetails MAY include properties that are already captured in other dedicated columns. Not Applicable
SkPD3.7.1 SHOULD Existing SkuPriceDetails properties SHOULD remain consistent over time. Not Applicable
SkPD3.7.2 SHOULD Existing SkuPriceDetails properties SHOULD NOT be removed. Not Applicable
SkPD3.7.3 MAY Additional SkuPriceDetails properties MAY be added over time. Not Applicable
SkPD3.8 SHOULD Property key SHOULD remain consistent across comparable SKUs having that property, and the values for this key SHOULD remain in a consistent format. Not Applicable
SkPD3.9 SHOULD Property key SHOULD remain consistent across comparable SKUs having that property, and the values for this key SHOULD remain in a consistent format. Not Applicable
SkPD3.10 MUST Property key MUST begin with the string "x_" unless it is a FOCUS-defined property. Not Applicable
SkPD3.11 MUST Property value MUST represent the value for a single PricingUnit when the property holds a numeric value. Not Applicable
SkPD3.12 MUST Property key MUST match the spelling and casing specified for the FOCUS-defined property. Not Applicable
SkPD3.13 MUST Property value MUST be of the type specified for that property. Not Applicable
SkPD3.14 MUST Property value MUST represent the value for a single PricingUnit, denominated in the unit of measure specified for that property when the property holds a numeric value. Not Applicable

SKU price ID

A provider-specified unique identifier that represents a specific SKU Price associated with a resource or service used or purchased.

Source: columns/skupriceid.md

ID Type Criteria Status Notes
SkPI1 MUST SkuPriceId MUST be present in a FOCUS dataset when the provider supports unit pricing concepts and publishes price lists, publicly or as part of contracting. Supports
SkPI2 MUST SkuPriceId MUST be of type String. Supports
SkPI3 MUST SkuPriceId MUST conform to String Handling requirements. Supports
SkPI4.1 MUST SkuPriceId MUST be null when ChargeCategory is "Tax". Not Applicable Taxes aren't included in any Cost Management cost and usage dataset.
SkPI4.2 MUST SkuPriceId MUST NOT be null when ChargeCategory is "Usage" or "Purchase" and ChargeClass is not "Correction". Partially Supports SkuPriceId may be null for some rows like savings plan unused charges and Marketplace charges.
SkPI4.3 MAY SkuPriceId MAY be null in all other cases. Supports
SkPI5.1 MUST When SkuPriceId is not null... SkuPriceId MUST have one and only one parent SkuId. Supports
SkPI5.2 MUST When SkuPriceId is not null... SkuPriceId MUST remain consistent over time. Supports
SkPI5.3 MUST When SkuPriceId is not null... SkuPriceId MUST remain consistent across billing accounts or contracts. Supports
SkPI5.4 MAY When SkuPriceId is not null... SkuPriceId MAY equal SkuId. Supports
SkPI5.5 MUST When SkuPriceId is not null... SkuPriceId MUST be associated with a given resource or service when ChargeCategory is "Usage" or "Purchase". Supports
SkPI5.6 MUST When SkuPriceId is not null... SkuPriceId MUST reference a SKU Price in a provider-supplied price list, enabling the lookup of detailed information about the SKU Price. Does Not Support SkuPriceId can't be directly mapped to a single SKU in the price sheet. For EA, SkuPriceId represents an individual SKU price but isn't available in the price sheet dataset. For MCA, SkuPriceId is a combination of the following price sheet columns: {ProductId}_{SkuId}_{MeterType}.
SkPI5.7 MUST When SkuPriceId is not null... SkuPriceId MUST support the lookup of the ListUnitPrice when the provider publishes unit prices exclusive of discounts. Does Not Support See SkPI5.6.
SkPI5.8 MUST When SkuPriceId is not null... SkuPriceId MUST support the verification of the given ContractedUnitPrice when the provider supports negotiated pricing concepts. Partially Supports ContractedUnitPrice may not be set or may be 0 for some rows, like reservation usage.

Sub account ID

An ID assigned to a grouping of resources or services, often used to manage access and/or cost.

FOCUS subaccount maps to a Microsoft Cloud subscription.

Source: columns/subaccountid.md

ID Type Criteria Status Notes
SbAI1 MUST SubAccountId MUST be present in a FOCUS dataset when the provider supports a sub account construct. Supports
SbAI2 MUST SubAccountId MUST be of type String. Supports
SbAI3 MUST SubAccountId MUST conform to StringHandling requirements. Supports
SbAI3.1 MUST SubAccountId MUST be null when a charge is not related to a sub account. Supports SubAccountId may be null for MCA purchases and refunds.
SbAI3.2 MUST SubAccountId MUST NOT be null when a charge is related to a sub account. Supports

Sub account name

A name assigned to a grouping of resources or services, often used to manage access and/or cost.

FOCUS subaccount maps to a Microsoft Cloud subscription.

Source: columns/subaccountname.md

ID Type Criteria Status Notes
SbAN1 MUST SubAccountName MUST be present in a FOCUS dataset when the provider supports a sub account construct. Supports
SbAN2 MUST SubAccountName MUST be of type String. Supports
SbAN3 MUST SubAccountName MUST conform to StringHandling requirements. Supports
SbAN3.1 MUST SubAccountName MUST be null when SubAccountId is null. Supports
SbAN3.2 MUST SubAccountName MUST NOT be null when SubAccountId is not null. Supports

Sub account type

A provider-assigned name to identify the type of sub account.

FOCUS subaccount maps to a Microsoft Cloud subscription.

Source: columns/subaccounttype.md

ID Type Criteria Status Notes
SbAT1 MUST SubAccountType MUST be present in a FOCUS dataset when the provider supports more than one possible SubAccountType value. Supports
SbAT2 MUST SubAccountType MUST be of type String. Supports
SbAT3 MUST SubAccountType MUST conform to StringHandling requirements. Supports
SbAT3.1 MUST SubAccountType MUST be null when SubAccountId is null. Supports
SbAT3.2 MUST SubAccountType MUST NOT be null when SubAccountId is not null. Supports
SbAT4 MUST SubAccountType MUST be a consistent, readable display value. Supports

Tags

The set of tags assigned to tag sources that account for potential provider-defined or user-defined tag evaluations.

Source: columns/tags.md

ID Type Criteria Status Notes
T1 MUST Tags MUST be present in a FOCUS dataset when the provider supports setting user or provider-defined tags. Supports
T2 MUST Tags MUST conform to KeyValueFormat requirements. Supports
T3 MAY Tags MAY be null. Supports
T4.1 MUST Tags MUST include all user-defined and provider-defined tags. Supports
T4.2 MUST Tags MUST only include finalized tags. Supports
T4.3 SHOULD Tags SHOULD include tag keys with corresponding non-null values for a given resource. Supports
T4.4 MAY Tags MAY include tag keys with a null value for a given resource depending on the provider's tag finalization process. Supports
T4.5 MUST Tag keys that do not support corresponding values, MUST have a corresponding true (boolean) value set. Not Applicable Microsoft Cloud tags support both keys and values.
T4.6 SHOULD Provider SHOULD publish tag finalization methods and semantics within their respective documentation. Supports
T4.7 MUST Provider MUST NOT alter tag values unless applying true (boolean) to valueless tags. Supports
T5.1 MUST Provider-defined tag keys MUST be prefixed with a predetermined, provider-specified tag key prefix that is unique to each corresponding provider-specified tag scheme. Does Not Support Provider-specified tags can't be differentiated from user-defined tags. Tags aren't modified to support backwards compatibility.
T5.2 SHOULD Provider SHOULD publish all provider-specified tag key prefixes within their respective documentation. Not Applicable Provider prefixes aren't currently specified.
T6.1 MUST Provider MUST prefix all but one user-defined tag scheme with a predetermined, provider-specified tag key prefix that is unique to each corresponding user-defined tag scheme when the provider has more than one user-defined tag scheme. Supports
T6.2 MUST Provider MUST NOT prefix tag keys when the provider has only one user-defined tag scheme. Supports
T6.3 MUST Provider MUST NOT allow reserved tag key prefixes to be used as prefixes for any user-defined tag keys within a prefixless user-defined tag scheme. Supports

Give feedback

Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.

If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.


Related resources:

Related products:

Related solutions: