---
title: Prices
description: A price is a variant of a product, and a product can have many.
domain: product
status: shipped
visibility: public
last_verified: 2026-07-11
order: 20
---
A price is what you charge for a product. One product can have many prices, so the same plan can be sold monthly or yearly, in dollars or euros, at a flat fee or per seat. A subscription item points at a price, and that price decides how the line is billed.

## What a price sets

Each price carries the full billing recipe for that variant:

| Setting | What it controls |
|---|---|
| Pricing model | How the amount is worked out: flat, per unit, tiered, and the rest. See [pricing models](/guide/pricing-models). |
| Currency | The currency the price is in. |
| Billing period | How often it charges: a unit (day, week, month, year) and a count. |
| Billing timing | Whether it charges at the start or the end of the period. See [billing timing](/guide/billing-timing/in-advance-and-in-arrears). |
| Trial days | A free trial before billing starts. See [free trials](/guide/subscriptions/trials). |
| Included quantity | A free allowance before per-unit charges begin. |
| Taxable | Whether tax applies to lines from this price. See [how tax is applied](/guide/taxes/how-tax-is-applied). |
| Minimum and maximum | Optional floor and ceiling on the line amount. |
| Meter | For metered products, which meter's usage this price bills. See [meters](/guide/usage/meters). |

## Many prices, one product

Because a product can have many prices, you build your options as variants rather than as separate products. A single Pro plan can offer a monthly price and a yearly price side by side, and a customer's subscription simply points at the one they chose.

## Worked example

Your Pro plan has three prices:

- $99 per month, in dollars.
- $990 per year, in dollars.
- 99 euros per month, in euros.

They are all the same product. A customer on the yearly dollar price and a customer on the monthly euro price are both on Pro; their subscriptions point at different prices.

## In the API

Prices are created through the `POST /v1/prices` endpoint, which takes the product, the pricing model and its config, the currency, and the billing settings above. See the [API reference](/reference) for the full request, and [pricing models](/guide/pricing-models) for the config each model expects.

## Edge cases

- **A metered product's price must name a meter,** and a non-metered product's price must not. The two go together.
- **The meter on a price cannot change after it is created.** Changing what a price measures would make old and new periods disagree.
- **Currency is set on the price.** To sell in another currency, add another price.
- **A new version of a price keeps its currency.** Versioning a price replaces it for new signups while everyone already on it stays put. A version that changed currency would split the same price into two, with the existing subscribers stranded on the old one and unable to move, because a subscription cannot change currency. To sell in another currency, add a separate price rather than versioning this one.
- **The currency has to be one yRecurring supports.** A well-formed three-letter code that isn't on the supported list is refused when you save the price, not later when it fails to bill.
