# Pricing models
Model one-time prices, subscriptions, tiered pricing, volume pricing, trials, discounts, and promo-driven price changes.
Source: /docs/offers/pricing
Last modified: 2026-06-18
Plandalf prices sit under products and are selected by the offer flow.

## Common pricing patterns

| Pattern | Use it for |
| --- | --- |
| One-time | Digital product, event ticket, template, audit, service package. |
| Subscription | Membership, SaaS plan, paid community, recurring access. |
| Trial | Start access before the first paid renewal. |
| Tiered or volume | Seat counts, usage packages, quantity discounts. |
| Promo price | A deadline tier or campaign changes which price applies. |

## Promo-aware pricing

Use a promo slug when a checkout should apply the currently active tier.

```js
await plandalf.present("summit-ticket", {
  promo: "early-bird"
});
```

Declarative equivalent:

```html
<button
  data-plandalf-present="summit-ticket"
  data-plandalf-apply-promo="early-bird"
>
  Buy ticket
</button>
```

## Related docs

- [Timers overview](/docs/timers/overview)
- [Tiers and timing](/docs/timers/tiers)
- [Discounts API](/docs/api/catalog)