---
title: Package
description: Sell units in fixed blocks and charge per block, rounding partial blocks up.
domain: pricing
status: shipped
visibility: public
last_verified: 2026-07-11
order: 60
---
Package pricing sells units in fixed-size blocks. You set a block size and a price per block. The quantity is divided by the block size and rounded up, so a partial block costs a full block. At least one block is always charged.

Use it for things sold in bundles: "$25 for every 100 credits," "email sends in blocks of 1,000."

## Worked example

You sell credits at $25.00 per block of 100.

A customer uses 250 credits. That is 2.5 blocks, rounded up to 3:

```
blocks = ceil(250 / 100) = 3
total  = 3 x $25.00 = $75.00
```

A customer who uses 1 credit still pays for one full block, $25.00. A customer who uses exactly 200 pays for 2 blocks, $50.00.

## Settings

| Field | What it does |
|---|---|
| Package size | How many units are in one block. |
| Flat amount | The price for one block. |

## Edge cases

- **Partial blocks round up.** 101 units is 2 blocks. Any amount over a block boundary pulls in a whole new block.
- **A minimum of one block is charged.** Even zero usage bills one block. If you need "no usage, no charge," package pricing is not the right model.
- **The price is per block, not per unit.** To charge per single unit, use per unit pricing.

## In the API

```json
{
  "pricing_model": "package",
  "pricing_config": { "package_size": 100, "flat_amount": 2500 },
  "currency": "USD"
}
```
