Example
A customer on a $20/month plan upgrades to a $50/month plan halfway through the billing cycle. They’re charged $15 (the prorated difference for the remaining half of the month).
Setting up
- CLI
- Dashboard
Add a Push changes with
proration config to a priced plan item:autumn.config.ts
atmn push.Proration options
On Increase
| Option | Behavior |
|---|---|
prorate | Charge the prorated difference immediately |
charge_immediately | Charge the full unit price immediately (no proration) |
On Decrease
| Option | Behavior |
|---|---|
prorate | Credit the prorated difference immediately |
no_action | No credit or refund — change takes effect at next billing cycle |
Proration is only relevant for
non-consumable features (like seats, workspaces). Consumable features (like API requests) are billed based on usage, not quantity changes.Plan-level proration
When a customer switches between plans (upgrade or downgrade), Autumn prorates automatically:- Upgrades: the customer is charged the prorated difference between the old and new plan prices for the remainder of the billing cycle. This happens immediately.
- Downgrades: the plan change is scheduled to take effect at the end of the current billing period. The customer continues on their current plan until then.
ExampleA customer is on a $20/month plan and upgrades to a $50/month plan on day 15 of a 30-day cycle.
- Old plan credit: 10 credit
- New plan charge: 25 charge
- Net charge: 10 = $15
Controlling proration in attach
By default, plan switches prorate immediately. You can override this behavior using theproration_behavior parameter in billing.attach:
| Value | Behavior |
|---|---|
prorate_immediately | (default) Charges or credits the prorated difference immediately |
none | Skips proration — no charges or credits are created for the plan change |
Custom line items
If you need full control over what the customer is charged during a plan switch, you can passcustom_line_items to replace the auto-generated proration invoice entirely. This is only valid for immediate plan changes (e.g. upgrades).
custom_line_items is provided, Autumn skips its own proration calculation and creates an invoice with exactly the line items you specified. Amounts can be negative to represent credits.
Usage-based proration
For usage-based prices, when a plan change occurs mid-cycle:- Outstanding usage at the old rate is billed immediately
- The new rate applies going forward for the rest of the billing period

