> ## Documentation Index
> Fetch the complete documentation index at: https://zenskar.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Dimensional pricing model

## Dimensional pricing model

The dimensional pricing model is a [pricing model](/docs/20260301/pricing-models/concepts/pricing-models) that sets a separate price for each combination of usage attributes.

### Map of concepts

| Concept | Details |
| - | - |
| [Dimensional pricing model](#dimensional-pricing-model-a-price-for-each-combination) | The dimensional pricing model splits the quantity by combination, charges each combination with its own price, and adds the amounts up. |
| [Dimensions and dimension values](#dimensions-and-dimension-values-what-usage-varies-by) | A pricing preset with the dimensional pricing model has one to four dimensions. Each dimension has its dimension values. |
| [Combinations](#combinations-one-value-of-each-dimension) | The dimension values form the combinations. |
| [Combination prices](#combination-prices-a-pricing-model-for-each-combination) | Each combination price charges one combination with the per-unit, percent, volume, or tiered pricing model. If a combination has no combination price, it is uncovered. |
| [Fallback price](#fallback-price-usage-without-a-combination-price) | Unmatched usage goes to the fallback price. If there is no fallback price, unmatched usage is listed at zero. |
| [Quantities of each combination](#quantities-of-each-combination) | A billable metric or a fixed quantity of the line item gives the quantity of each combination. |
| [Period-of-time products](#period-of-time-products-one-pricing-period-for-all-combinations) | If the product is a period-of-time product, one pricing period applies to all combinations. |
| [Dimensional pricing model on a line item](#dimensional-pricing-model-on-a-line-item) | A line item can change the dimensions, the combination prices, the fallback price, and the pricing period. |

### Related modules

The dimensional pricing model uses the following modules:

| Module | Details |
| - | - |
| [Billable metrics](/docs/20260301/product-modules/usage/concepts/billable-metrics) | A billable metric reports the quantity of each combination. |

The following modules use the dimensional pricing model:

| Module | Details |
| - | - |
| [Products](/docs/20260301/product-modules/products/concepts/products#pricing-presets-how-you-charge) | A pricing preset can use the dimensional pricing model. |
| [Contracts](/docs/20260301/product-modules/contracts/concepts/line-items/pricing) | A line item charges with the dimensional pricing model of its pricing preset. A fixed quantity of the line item can give the quantity of each combination. |

## Dimensional pricing model: a price for each combination

The **dimensional pricing model** is the [pricing model](/docs/20260301/product-modules/products/glossary#pricing-model) that charges each combination of dimension values with its own price.

Some usage costs different amounts depending on its attributes. For example, an SMS to the US costs more than an SMS to India, and a WhatsApp message costs less than an SMS. The dimensional pricing model sets one price for each such case in a single [pricing preset](/docs/20260301/product-modules/products/glossary#pricing-preset).

For each period, Zenskar splits the quantity by [combination](#combinations-one-value-of-each-dimension). It charges the quantity of each combination with the [combination price](#combination-prices-a-pricing-model-for-each-combination) of that combination, or with the [fallback price](#fallback-price-usage-without-a-combination-price). The amount of the period is the sum of the amounts of all combinations.

Each combination is charged on its own. The [tiers](/docs/20260301/product-modules/products/glossary#tier) of one combination count only the quantity of that combination.

## Dimensions and dimension values: what usage varies by

A **dimension** is an attribute of usage by which the dimensional pricing model sets separate prices.

A **dimension value** is one value of a dimension.

For example, the dimension region can have the dimension values US and IN, and the dimension channel can have the dimension values SMS and WhatsApp. In the UI, **Dimensions** lists each **Dimension** with its **Values**.

A pricing preset with the dimensional pricing model has one to four dimensions. Each dimension has a unique name and at least one dimension value. The dimension values of one dimension are unique, and none of them can be `*`.

Zenskar compares names and dimension values without regard to case or to spaces at the start and the end. "Region" and " region " are the same name, and "US" and " us " are the same dimension value. The same comparison applies when Zenskar matches usage to dimension values.

## Combinations: one value of each dimension

A **combination** is a set of dimension values that has exactly one value for each dimension.

The number of combinations is the product of the numbers of dimension values. With the dimensions region (US, IN) and channel (SMS, WhatsApp), there are four combinations:

| Region | Channel |
| - | - |
| US | SMS |
| US | WhatsApp |
| IN | SMS |
| IN | WhatsApp |

A pricing preset can have at most 625 combinations. For example, four dimensions with five dimension values each give 625 combinations.

## Combination prices: a pricing model for each combination

A **combination price** is the price, with its own pricing model, that the dimensional pricing model charges for one combination.

Each combination price uses the [per-unit](/docs/20260301/pricing-models/concepts/per-unit), [percent](/docs/20260301/pricing-models/concepts/percent), [volume](/docs/20260301/pricing-models/concepts/volume), or [tiered](/docs/20260301/pricing-models/concepts/tiered) pricing model. A combination price cannot use the dimensional pricing model. A new combination price uses the per-unit pricing model with a price per unit of 0.

A pricing preset with the dimensional pricing model has at least one combination price. Each combination has at most one combination price. Zenskar rejects two combination prices for the same combination.

For a [point-in-time product](/docs/20260301/product-modules/products/glossary#point-in-time-product-type), a combination price with the volume or tiered pricing model has its own [tier-reset period](/docs/20260301/product-modules/products/glossary#tier-reset-period).

Each combination price belongs to its dimension values. Removing a dimension value also removes every combination price that uses it.

An **uncovered combination** is a combination that has no combination price.

A pricing preset does not need a combination price for every combination. Usage of an uncovered combination goes to the fallback price.

## Fallback price: usage without a combination price

The **fallback price** is the price, with its own pricing model, that the dimensional pricing model charges for usage that matches no combination price.

**Unmatched usage** is usage that matches no combination price.

The fallback price is optional. Like a combination price, it uses the per-unit, percent, volume, or tiered pricing model. Unmatched usage comes from the following cases:

* The usage belongs to an uncovered combination.
* The usage has a value that is not one of the dimension values, such as BR for the dimension region.
* The usage is not split by combination.

Zenskar groups unmatched usage by its values and charges each group on its own with the fallback price. The tiers of the fallback price count only the quantity of one group at a time.

Without a fallback price, Zenskar lists unmatched usage with an amount of 0. The usage stays visible in the details of the charge.

The following pricing preset charges SMS and WhatsApp messages by region:

| Region | Channel | Combination price |
| - | - | - |
| US | SMS | Tiered: \$0.008 for the first 10,000 messages, \$0.006 above |
| US | WhatsApp | Per unit: \$0.005 |
| IN | SMS | Per unit: \$0.002 |
| IN | WhatsApp | None (uncovered) |
| Any other | Any other | Fallback price, per unit: \$0.01 |

One month of usage gives the following amounts:

| Region | Channel | Quantity | Price | Amount |
| - | - | - | - | - |
| US | SMS | 15,000 | Combination price | \$110.00 (10,000 × \$0.008 + 5,000 × \$0.006) |
| US | WhatsApp | 4,000 | Combination price | \$20.00 |
| IN | SMS | 20,000 | Combination price | \$40.00 |
| IN | WhatsApp | 300 | Fallback price | \$3.00 |
| BR | SMS | 500 | Fallback price | \$5.00 |
| Total | | 39,800 | | \$178.00 |

Without the fallback price, the last two rows show an amount of \$0.00, and the total is \$170.00.

## Quantities of each combination

The dimensional pricing model charges the quantity of each combination. The quantity of each combination comes from one of two sources:

* A [billable metric](/docs/20260301/product-modules/products/glossary#billable-metric) reports it, for a pricing preset with [metered usage](/docs/20260301/product-modules/products/glossary#metered-usage). See [Billable metrics](/docs/20260301/product-modules/usage/concepts/billable-metrics).
* A [fixed quantity](/docs/20260301/product-modules/contracts/glossary#fixed-quantity) of the line item splits its units across the combinations. See [Line item: quantity](/docs/20260301/product-modules/contracts/concepts/line-items/quantity#dimensional-pricing-presets).

The usage carries exactly the dimension names of the pricing preset. If the names differ, this can affect contracts and invoices. See [Line item: quantity](/docs/20260301/product-modules/contracts/concepts/line-items/quantity#dimensional-pricing-presets).

## Period-of-time products: one pricing period for all combinations

For a [period-of-time product](/docs/20260301/product-modules/products/glossary#period-of-time-product-type), the [pricing period](/docs/20260301/product-modules/products/glossary#pricing-period) belongs to the whole pricing preset. A combination price and the fallback price cannot have their own pricing period.

Each combination is charged with its own pricing model and the pricing period of the pricing preset. The [period ratio](/docs/20260301/product-modules/products/glossary#period-ratio), the [partial-period handling](/docs/20260301/product-modules/products/glossary#partial-period-handling), the [recurring quantity strategy](/docs/20260301/product-modules/products/glossary#recurring-quantity-strategy), and the [on-demand quantity strategy](/docs/20260301/product-modules/products/glossary#on-demand-quantity-strategy) apply to each combination as they apply to a pricing preset with that pricing model.

## Dimensional pricing model on a line item

A [price override](/docs/20260301/product-modules/contracts/glossary#price-override) on a line item can change the dimensions, the combination prices, the fallback price, and the pricing period. The pricing model stays dimensional, and some line-item features do not apply. See [Line item: minimum commitments](/docs/20260301/product-modules/contracts/concepts/line-items/minimum-commitments) and [Line item: discounts](/docs/20260301/product-modules/contracts/concepts/line-items/discounts).

<Card horizontal title="Line item: pricing" icon="file-contract" href="/docs/20260301/product-modules/contracts/concepts/line-items/pricing">
  How a line item charges with its pricing preset, and how a price override changes it.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.