Pricing & Plans
Pricing & Plans
A plan is the core pricing object in Brilo. It defines what a customer is charged, how much, and when. Plans are made up of a base fee, pricing components tied to usage metrics, and optional feature entitlements.
Plan Structure
Plan: "Starter"
├── Recurring fee: $29/month
├── Billing period: Monthly
├── Components
│ ├── API Calls: first 10,000 free, then $0.001/call
│ └── Storage: first 1 GB free, then $0.05/GB
└── Features
├── Analytics dashboard: Yes
└── Priority support: No
Every plan has at least a billing period. The base fee and components are optional — you can have a pure usage plan with no base fee, or a flat plan with no usage components.
Pricing Models
Flat Fee
A fixed price regardless of usage. Simple, predictable, and easy to communicate.
Starter: $29/month
Professional: $99/month
Enterprise: $499/month
Best for: feature-based tiers where all customers get the same thing.
Per-Unit Pricing
Charge based on exactly how much a customer uses.
$0.001 per API call
$0.05 per GB stored
$1.00 per active seat
Best for: usage that varies significantly between customers.
Tiered Pricing
Different rates apply at different volume thresholds. Each tier applies only to usage within that band.
0 – 10,000 calls: $0.010 each
10,001 – 100,000: $0.005 each
100,001+: $0.001 each
Best for: rewarding higher-volume customers without flat volume discounts.
Volume Pricing
The rate for the entire usage quantity is determined by which tier the total falls into. Unlike tiered, the whole quantity gets the same rate.
< 10,000 calls: $0.010 each (total: up to $100)
10,001 – 100,000: $0.005 each (e.g. 50,000 calls = $250)
100,001+: $0.001 each
Best for: simpler billing statements where customers prefer a single per-unit rate.
Hybrid (Recommended for Most SaaS)
A base fee that covers a free tier, plus overage charges for usage beyond that.
Professional: $99/month
Includes: 50,000 API calls
Overage: $0.001 per call beyond 50,000
Best for: providing customers with predictable baseline costs while aligning revenue with growth.
Pricing Components
Components link a usage metric to a price within a plan. A plan can have multiple components — one per metric you want to bill on.
Component Fields
| Field | Description |
|---|---|
| Metric | Which aggregated metric drives this component |
| Free tier | Units included at no cost (optional) |
| Tiers / price | The pricing structure for billable units |
| Rounding | How fractional units are handled |
Rounding Types
| Type | Behavior | Use when |
|---|---|---|
round_down | 5.9 → 5 | Units are whole-number items (emails, calls) |
round_up | 5.1 → 6 | You prefer conservative billing |
round_nearest | 5.5 → 6, 5.4 → 5 | Fair rounding for general use |
no_rounding | 5.9 → 5.9 | Digital goods, storage, continuous quantities |
Feature Entitlements
Features let you control what capabilities a customer on a given plan can access. Brilo's Check Feature Access endpoint returns whether a customer has access in real time.
Boolean Features
Simple on/off access:
Starter: analytics = false, custom_domain = false
Professional: analytics = true, custom_domain = false
Enterprise: analytics = true, custom_domain = true
Limit-Based Features
Access with a maximum quantity:
Starter: team_members = 3
Professional: team_members = 20
Enterprise: team_members = unlimited
Add-Ons
Add-ons are mini-plans attached to a subscription. They let you layer extra charges on top of a base plan without creating separate plan versions.
One-time add-ons — charged once on the next invoice:
Implementation fee: $500 (one-time)
Recurring add-ons — charged every billing period:
Premium support: $99/month
Quantity-based add-ons — charged per unit:
Extra seats: $9/seat/month × quantity
Add-ons are managed via the Attach an Add-on and Cancel an Add-on endpoints.
Plan Versioning
When you update a plan, Brilo creates a new version rather than modifying the existing one. This means:
- Existing customers stay on the version they signed up for (grandfathering)
- New customers get the latest version automatically
- You can see which version each customer is on from their subscription record
This prevents pricing changes from silently affecting customers who didn't agree to them.
Creating a Plan
Via Dashboard
- Go to Plans → Create Plan
- Set the plan name, recurring fee, billing period, and currency
- Add components — select a metric, define tiers, set rounding
- Add feature entitlements
- Click Create
Via API
curl -X POST https://api.brilo.app/plans \
-H "X-API-KEY: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"name": "Starter",
"recurring_fee": 2900,
"billing_period": "monthly",
"currency": "usd",
"components": [
{
"metric_id": "metric_api_calls",
"free_tier": 10000,
"overage_price": 0.001,
"rounding": "round_down"
}
],
"features": [
{
"name": "analytics",
"included": true
}
]
}'Retrieving Plans
List all available plans:
curl https://api.brilo.app/plans \
-H "X-API-KEY: your-api-key"Retrieve a specific plan:
curl https://api.brilo.app/plans/plan_starter \
-H "X-API-KEY: your-api-key"See List Plans and Retrieve a Plan in the API reference.
Next Steps
Updated 4 months ago

