Features Overview 

The Features module helps you define the various features offered as part of your product line. It also allows you to define the entitlements that catalog items and subscriptions can have towards said features.

This results in a better customer experience for your users, and greater operational efficiency for your business.

There is a many-to-many relationship between features and product catalog items such as plans, addons & charges. An item can be assigned multiple features, and a feature can belong to multiple items.

All Features in Chargebee carry a name, description, and ID. Features can be created, updated, activated, archived, and deleted.

Entitlement levels 

Levels determine the extent to which a feature can be diversified when associating them with product catalog items. With a feature having three entitlement levels, you can assign each level to a catalog item - higher value entitlement levels to premium plans, and basic entitlement levels to starter plans.

This is explained more in the following section on Feature Entitlement Types. This section, along with Managing Product Entitlements will help you understand the implementation of levels.

Feature Entitlement Types 

Entitlement type defines the nature of entitlement levels that are available to users for a feature. The different feature entitlement types are as listed below:

Switch - For features that are either Available or Not Available to a user. Also called feature flags or toggles in other systems.

Quantity - For features that are offered with pre-defined numerical limits to users.

Range - For features that can be offered with numerical limits within a certain range.

Custom - For features and benefits that have various entitlement levels, but aren't numerical by nature.


With a switch-type feature, you can restrict the feature access to a set of applicable product catalog items.

Switch-type features have available/ not available options as entitlement levels.

Example: Let's consider Analytics as a premium feature, for which only the Platinum and Gold plan users are entitled. You can select Switch as the entitlement type and configure it as available only for the premium plans.


Quantity-type allows you to create numerical value-based features.

If the consumption of a feature entitlement can be tracked and measured against a limit using numerical values, then using a quantity type is recommended.

Applicable when you intend to closely control the entitlement levels by setting specific limits for each level. You can add any number of entitlement levels, including Unlimited for the maximum level.

Example: Let's say you are running a streaming service and need to restrict the number of movies a user watches in a month based on their plan. Quantity-based entitlements would be the best fit here. You can set the Entitlement unit as movies/month, and set the levels as 20, 30 and 50 movies/month.


Range-type feature is applicable when you do not intend to closely control the entitlement levels. Unlike predefined values, you cannot set several limits but rather only a minimum and maximum value.

Range can also be used when you want to experiment with a range to understand the levels that your customers will respond to.

Example: Let's consider that you sell your SaaS product in two countries - country A and B. Since API traffic in country A is usually high compared to the B, you intend to provide an API limit based on that. The plans you provide are A-basic, A-premium for country A and B-basic, B-premium for country B.

To tackle this use case, you can set a range from 100 to 1000 and configure API limits for each plan and country within that range. A-basic : 500 requests/min, A-premium : 800 requests/min, whereas B-basic : 150 requests/min and B-premium : 400 requests/min.


Custom-type features help define service levels effectively. For example, onboarding, implementation, support, and success service levels.

It also allows you to configure any feature that doesn't come essentially under switch or quantity types. You can define several levels of entitlement using custom text or labels.

Example: Let's say that you have various service levels for the Support you offer. You can set Email Support, Chat Support, Phone Support & Priority Phone Support as the Entitlement levels from lowest to highest.

Roles and Permissions 

Based on your role  in Chargebee, you can perform various operations on the entitlements. Since entitlements directly impact the end-user, there is a need to limit access to who can view and make changes to it.

Given below is a table that lists out the possible roles and their permissions.

 Roles  Create Features  Edit Features  Change Item Entitlements  Override Entitlements on Subscriptions Change/Delete Entitlements on Subscriptions  View Entitlements 
 Sales Agent                  
 Customer Support                  
 Sales Manager                  
 Tech Support              
 Finance Executive              


1) What is the difference between Range and Quantity based features?
The difference between Range and Quantity are values that can be assigned to an entitlement.
For example, if the entitlement can take any value between 1 to 10, it can be modeled as a Range type feature. If it can take only specific values like 1, 5, or 10, it can be modeled as a Quantity type feature. Range type feature allows you to loosely control your values while Quantity type features are pre-defined and rigid.

2) How many features can I create on my site?
The maximum number of features you can create on your site is 400.

3) Can I change the entitlement type of a feature once it is created?
No, once a feature is created, you cannot change its entitlement type.

Was this article helpful?