Pricing by number of users
Last updated
Was this helpful?
Last updated
Was this helpful?
A common way of pricing SaaS products is charging by the number of users, also sometimes called seats, agents or licenses. There are two common ways of modeling this:
Recurring - The customer pays for X users every month and the limit is enforced by the SaaS platform.
Usage-based - The customer is charged every month for the number of users they have at that particular time.
The next two sections go into more detail.
This model was been the traditional seat-based model used by companies like Salesforce and Zendesk. The customer buys a number of users which is then enforced in the SaaS platform. When the customer reaches the limit, they need to purchase more users which will increase the user limit in the platform. The charge looks like this in Bunny.
This model is used by companies like Slack and is considered a more fair pricing model by some. Instead of committing to a number of users that you may or may not use, you only pay for the current number of users. Or in Slack's case, the number of active user.
One benefit of this model is that you don't have to enforce the limit in your SaaS platform and the customer can just add users as they need them without having to worry about the upgrade processs. A downside of the model is that it works best with monthly billing whereas with the enforce limit, you can get a customer to prepay annually in return for a discount.
In this scenario, your SaaS platform enforce a user limit, but sends Bunny usage records with the current user count. Bunny will then calculate the user count at the end of the customer's billing period using the usage calculation type.
Minimum - the customer is charged for the lowest count in the period
Maximum - the customer is charged for the largest count in the period
Sum - the customer is charged for the sum of user counts in the period
Your platform only needs to send one usage record per billing period, but since the billing day varies by account, you can also just report the numbers daily.
In this scenario, you need to have provisioning enabled in Bunny. When the subscription's seat limit is changed, Bunny will send a to your platform with the new seat count and user can now add more seats.