Guides
Credits and billing
How Spec credits work, what a credit means, the order credits are spent in, buying more, auto-reload, and the monthly spend limit.
Spec work is paid for in credits. A credit is a retail unit: one credit is worth a fixed amount of underlying model consumption, and the exchange rate is part of a versioned pricing configuration rather than a number scattered through the product.
Every figure on this page comes from the pricing version that is active for your workspace. This page names the fields; your Billing settings show the values.
What a credit is
The active pricing version carries these fields, and Spec reads them rather than hard-coding anything:
| Field | What it sets |
|---|---|
retail_micros_per_credit | how much retail value one credit represents |
microcredits_per_cogs_microusd | how underlying model cost converts into credits |
free_monthly_grant_micros | the monthly allowance on the Free plan |
trial_grant_micros, trial_days | the size and length of a trial allowance |
ai_seat_monthly_grant_micros | the monthly allowance included with one AI seat |
ai_seat_monthly_price_cents | what an AI seat costs per month |
reservation_multiplier_bps | the safety margin held while a step is running |
max_top_ups_per_step | how many times one step may extend its reservation |
Burn is model dependent
A credit is a unit of value, not a unit of messages. The same message costs more
on Spec 1.0 than on Spec 1.0 fast, and a long conversation costs more than a
short one because the whole thread is read each time.
Every model call produces one usage receipt. Your Usage settings show what was spent and on what.
How a step is charged
- Before a step runs, Spec reserves an estimate, with the margin set by
reservation_multiplier_bps. - If the step needs more than it reserved, it tops up, at most
max_top_ups_per_steptimes. - When the step finishes, the reservation settles at the real cost and the difference returns to your balance.
If a step cannot be funded, it is refused before any model is called. A refusal never partially charges you.
Where credits come from
| Source | Renews | Expires |
|---|---|---|
| Free monthly allowance | each period | at the end of its period |
| Trial allowance | once | after trial_days |
| AI seat allowance | each period, per assigned seat | at the end of its period |
| Purchased credits | never, you buy them | twelve months after purchase |
The order credits are spent in
Pooled credits are always spent before purchased ones. This is a rule, not a consequence of the dates:
- Pooled credit: your free monthly allowance, a trial allowance, and any manual adjustment we have added to your account.
- Your AI seat allowance.
- Credits you bought.
Expiry breaks ties inside a group, nearest first. Credits you paid for are therefore the last thing spent, whatever the expiry dates happen to be, and you are never left with an expired allowance you could have used and a purchased balance you still hold.
There is one asymmetry worth knowing. If a seat charge fails, the seat allowance stops being spendable, but credits you have already paid for stay spendable. A failed subscription charge is a different debt from credits you own.
Buying credits
Credits are bought in a checkout session. The purchase dialog shows the exact expiry date BEFORE the charge, computed from the same twelve-month term the grant is later written with, so the date you were shown and the date on your balance cannot disagree.
Bounds on one purchase are 1.00 USD at the low end and 10,000.00 USD at the high end. A larger amount is two purchases, deliberately.
Purchased credits carry a twelve-month term. They do not renew and they do not roll over past that term. Your Billing settings show the expiry date for each purchased balance, and Parcel warns you before a balance expires.
Auto-reload and the spend limit
Auto-reload buys more credits automatically when your balance falls below a threshold you set.
Auto-reload cannot be enabled without a monthly spend limit, and the limit
cannot be cleared while auto-reload is on. The two are a pair: the limit is the
one number between a runaway conversation and an unbounded run of charges. The
ceiling on a spend limit is SPEC_SPEND_LIMIT_MAX_MICROS, and your Billing
settings refuse a higher number rather than accepting one the server would
reject.
When the limit is reached, Spec refuses new work rather than charging past it. Work already reserved settles normally.
Refunds and disputes
If a credit purchase is refunded, or a dispute is decided against Parcel, the unspent remainder of that purchase is revoked from your balance.
If you have already spent more than the remainder, Parcel cannot claw back a negative balance, and does not try to. Instead, further credit purchases for that workspace are suspended pending a person, and Parcel contacts you. A dispute that is opened places a hold; a dispute decided in your favour releases it without revoking anything.
Entitlement and seats
A workspace has exactly one entitlement at a time, and it is one of three:
- Free monthly, sized by
free_monthly_grant_micros, renewed each period. - Trial, sized by
trial_grant_microsand lastingtrial_days, issued once. - AI seats, where each assigned seat adds
ai_seat_monthly_grant_microsto the workspace allowance each period and costsai_seat_monthly_price_cents.
Seats are assigned to members in Members settings. Adding a seat part way through a period adds only the prorated share of that period’s allowance, and adds it once.
The allowance is held by the workspace, not by an individual member, so credits are pooled across the people using Spec. Purchased credits are also held by the workspace.