Example case
We have a AI chatbot product with 2 different models, and each model costs a different amount to use.- Basic message: $1 per 100 messages
- Premium message: $10 per 100 messages
- Free tier: $5 credits per month for free
- Pro tier: $10 credits per month, at $10 per month
Configure Pricing
1
Create Features
Create ametered consumable feature for each message type, so that we can track the usage of each:
2
Create Credit System
Now, we’ll create a credit system, where we’ll define the cost of each message type. We’ll define the cost per message in USD:| Feature | Cost per message (USD) | Credit cost per message (USD) |
|---|---|---|
| Basic message | $1 per 100 messages | 0.01 |
| Premium message | $10 per 100 messages | 0.10 |

3
Create Free, Pro and Top-up Plans
Let’s create our free and pro plans, and add the credits amounts to each.

one-off prepaid purchases that never expire.
Implementation
1
Create an Autumn Customer
When your user signs up, create an Autumn customer. This will automatically assign them the Free plan, and grant them $5 credits per month.2
Checking for access
Every time our user sends a message to the chatbot, we’ll first check if they have enough credits remaining to send the message.Therequired_balance parameter will convert the number of messages to credits. Eg, if you pass required_balance: 5 for basic messages, then check will return allowed: true if the user has at least 0.05 USD credits remaining.Note how we’re interacting with the underlying features (
basic_messages,
premium_messages) here—not the credit system.3
Tracking messages and using credits
Now let’s implement our usage tracking and use up our credits. In this example, we’re using 2 basic messages, which will cost us 0.02 USD credits.4
Upgrading to Pro
We can prompt the user to upgrade. When they click our “upgrade” button, we can use thecheckout route to get a Stripe Checkout URL for them to make a payment.5






