- Avoid blocking engaged free users who exceed limits
- Convert free users to paying customers through natural usage growth
- Offer a “soft limit” experience without requiring upfront payment
Example case
We have a product with the following pricing:- Free plan: 1,000 notifications per month included, blocked when exceeded
- Pay-as-you-go plan: 1,000 notifications per month included, $1 per 1,000 notifications beyond the included amount
Configure Pricing
Create Feature
Create ametered consumable feature called “notifications”.Create Free Plan
Create a free plan with 1,000 notifications included per month. Setauto-enable so new customers automatically start on this plan.Create Pay-as-you-go Plan
Create a Pay-as-you-go plan with the same 1,000 notifications included, but with overage pricing:- Grant amount: 1,000 notifications
- Price: $1 per 1,000 notifications per month
- Billing method: Usage-based
Implementation
Create an Autumn Customer
When your user signs up, create an Autumn customer. This will automatically assign them the Free plan with 1,000 included notifications.Switch to Pay-as-you-go
When the user is approaching or has exceeded their limit, prompt them to switch to the Pay-as-you-go plan. Useattach with setup_payment: true to collect their card without charging upfront.Once the user completes the setup, they’ll be switched from the Free plan to the Pay-as-you-go plan. Because “Reset usage when enabled” is off, their existing usage carries over. Any usage beyond 1,000 notifications will be billed at the end of the billing period.
Overages are Now Enabled
After switching to Pay-as-you-go, the user’scheck response will show overage_allowed: true. They can continue using the feature beyond their included limit.Summary
| Plan | Over Limit | Result |
|---|---|---|
| Free | No | ✅ Allowed |
| Free | Yes | ❌ Blocked |
| Pay-as-you-go | No | ✅ Allowed |
| Pay-as-you-go | Yes | ✅ Allowed, billed at end of period |

