SaaS Pricing Tutorial: Tiered Pricing
What is Tiered Pricing
Tiered pricing is a common pricing model for SaaS businesses. It works by offering multiple packages catering to different user groups. Each package, or tier, has its own price and range of features, possibly with varying usage limits.
Supabase is a great example of tiered pricing. It's Free and Pro plans have carefully calibrated feature sets that cater to different personas.
Why Tiered Pricing
Tiered pricing lets you capitalise on varying needs and budgets between different groups of consumers in order to sell each product as close as possible to the maximum price that each group is willing to pay.
With tiered pricing, you can flexibly target different user personas, ranging from end users to enterprise customers, while going as broad or fine grained as you like.
How to Implement Tiered Pricing
Adding a tiered pricing model to your SaaS app is super simple with Limiter. It provides an opinionated framework from which you can manage plans and features in your SaaS app.
Set up Products & Pricing
Let's configure a basic two-tier pricing for your app. We will go with a 'Basic' and a 'Pro' tier.
In this tutorial, we'll use Stripe to bill customers for subscriptions.
On your Stripe dashboard, click on the Products tab and create the following products:
- • Basic, $5 / month
- • Pro, $15 / month
For first-time indie makers, consider leveraging this awesome SaaS subscription boilerplate. It gives you a fully-usable app that comes with user management, Stripe subscription integration and even syncs your products from Stripe.
Create a project on Limiter with a name that best describes your current project.
Then, create plans which correspond to the products that you have created earlier on Stripe.
We will create the following plans on Limiter:
For each plan, we can create features that you wish to gate or apply usage limits to. Limiter supports several feature types such as booleans, limits and quotas.
Assuming we are building a task management app and we wish to set a limit on the number of tasks a customer can create, we can create the
NumTasks feature in the Basic and Pro plans with different limits:
Gate Features with Feature Flags
A feature on Limiter is represented by a feature flag. Think of it as an if-else clause in your code that prevents a block of business logic from being executed unless certain conditions are fulfilled.
However, unlike typical feature flags whose primary concern is whether a feature is enabled or not, a Limiter feature flag also keeps track of whether the customer is entitled to the feature, and whether he or she has exceeded usage limits for that feature.
Now it's time to add the feature flag to your code.
Alongside each feature, Limiter provides a copyable code snippet so that you can easily integrate features flags with your app.
Limiter provides flexible APIs to operate with the feature flags.
Here's the lowdown on some of them:
feature: Use this to check if your customer can access the feature
increment: Use this to increment a customer's usage of the feature by a fixed amount
decrement: Use this to decrement a customer's usage of the feature by a fixed amount
set: Use this to set a customer's usage of the feature to a specified amount
Automatically Bind Customers to Plans
Head over to the Integrations page on your Limiter project and set up the Stripe subscriptions integration.
You'll need to map your Limiter plans to your Stripe products and configure a Stripe webhook to send subscription lifecycle events to Limiter's backend.
Once enabled, Limiter will automatically bind your customers based on their Stripe customer IDs, to the corresponding plans on Limiter, the moment your customers have paid for a subscription or made any change to their existing subscriptions.
This binding is essential for Limiter to determine whether a customer is entitled to a particular feature.
A tiered pricing model is easy to reason about and simple enough to implement given the right tools. Limiter is a one-stop shop for all your SaaS feature management needs which lets you implement tiered pricing in no time at all.