Skip to main content

Using Rate Limits to manage Experiences' frequency

Throttle or restrict how frequently Experiences show to your users

Tiago Mota avatar
Written by Tiago Mota
Updated yesterday

The key to establishing in-product Experiences as an effective communication channel with your users is to avoid overwhelming them with in-app Experiences.

You may have users who fall into multiple target audiences, and they could be shown too many Experiences in quick succession. You can restrict this with our Rate Limits (also known as throttling) functionality.


Availability & Usage

πŸ” Available for Growth & Enterprise plans

πŸ§‘β€πŸ’Ό Available for "Admins" & "Publishers" (if Roles are enabled)

πŸ“ Ready to use with Tours & Microsurveys


How do Rate Limits work in Chameleon?

It's normal to target the same users with multiple Experiences. But we advise you to ensure your users have a delightful, blockage-free flow, and not distract them with too many 'asks'.

With Rate Limits, you can control how many Experiences your users see over a specified period. When creating a Rate Limit, you can target:

  • All Experiences (Tours + Microsurveys)

  • All Microsurveys

  • All Tours (applies only to Announcement Tours)

  • Tours and Microsurveys with specific Tags

  • Individually selected Experiences

When you set a Rate Limit, all active Experiences will automatically be considered for limited display. But you will still be able to manually exclude some of these to make sure all critical information reaches your users πŸ˜‰

β„Ή Rate Limits take priority over all other settings (recurrence, snoozing, etc). and takes into account unique Experiences, not "views" of Experiences.

πŸ‘‰ Be mindful of combining Rate Limits with Recurrence -- for example, a Rate Limit of 4 active Experiences (e.g. 3 Tours and a Microsurvey) combined with Recurrence could limit 4 recurring Experiences on page load at a time, and then show nothing to your users for the rest of the month. You can use a time-based Recurrence and set a Dismiss option to "Snooze", so users can engage with your Experiences repeatedly in a specific time frame.

The audiences you select for your Rate Limits will not impact the specific Segments you set for Experiences. It's an option to include everyone or select specific users when creating a Rate Limit.

β„Ή Rate Limits do not apply to Walkthrough Tours, as they are shown when the user manually engages them (e.g. via Launcher or Links). It's the same case with Tooltips, which always show when triggered manually.

β„Ή Microsurveys have a higher priority than Tours. If you add a Rate Limit for 'All Experiences', all Microsurveys will be checked to see if they should be shown before Tours are checked.

You can configure multiple Rate Limits for specific Experiences and Segments, and set the frequency for Experiences to be shown to users over a period of time (e.g., 1 Tour per hour).

β„Ή Experiences that are dismissed, or snoozed, will still be affected by Rate Limits – these will only show again once Rate Limits no longer apply to that user.

When Rate Limits are applied, users who have seen the set number of Experiences in the timeframe established will not be shown any subsequent Experiences until the Rate Limit time period is over.


Multiple Rate Limits in action

If your account gets busy, you may want to create multiple rules and exclusions to maintain a pleasant experience for your users.

πŸ‘‰ Let's see a simple example where you want to ensure your users complete essential guidance, without feeling overwhelmed by other messages.

You can create 2 Rate Limits:
- One for all Experiences and all users that will display 2 Experiences/ day.
- The second one for Tours tagged "onboarding" that applies to all users and displays 1/ day.

Chameleon will assess your Experiences and ensure all your users will see a maximum of 2 Experiences/ day, and one of them will be part of the Onboarding Tag. Which one of them, if you have multiple Tours live, tagged for onboarding? Check the Tour priority you have in the Dashboard; you can adjust this easily. πŸ˜‰

❢ If a user dismisses your onboarding Tour one day, they'll see another Experience that you have live and (based on the Tour/Survey priority you have in the Dashboard). Even if they didn't complete your Tour, they still engaged with it, so the Rate Limit will apply. The Tour that is snoozed will show up based on the settings you set.

❷ Another user might engage with your first onboarding Tour, and they'll be eligible to see the next onboarding Tour on the list the next day. The second Experience that they'll see today will be based on the priority you have set for them.

This helps you deliver unique user experiences that respond to the same needs - using and continuing to discover your product.


How to set Rate Limits

Find Rate Limits under Governance β†’ Rate Limits in your Dashboard. Add a new Rate Limit by clicking the "+ New Rate Limit" button.

Decide what set of Experiences you want to limit from the drop-down list. Most commonly, you'll apply these limits to your entire audience of users, but you can also configure a specific Segment you want these Experiences limited to, while not limiting others.

Add the number of times you want them to appear over a specified period by setting the Frequency and Period.

Once the set frequency has been reached, none of the selected Experiences will display until the time period has passed.


Rate Limits Exclusions

For critical Experiences to (e.g., Status Alerts), you can prevent them from ever being limited by adding them as "Exclusions". Below the Rate Limits panel, find the "🚫 Add Exclusions" dropdown and select individual Tours or Microsurveys.

That Experience will not be considered within the pool of limited Experiences. When an excluded Experience is shown to the user, it does not count against any active limits set.

🀝 We recommend that you add exclusions for crucial Experiences.


What if I have a Startup plan?

Although Rate Limits are not available for Startup plans, you can still control the frequency of your Experiences with Segment filters.

You can filter users when building a Segment and control the delivery of another Experience, based on their interaction with past Tours. Under Default properties, use the "Last Tour time" filter to define specific audiences who, for example:

  • should see only 1 Tour/week by using "is not within the last 7 days";

  • completed a Tour before "a specific date" and should see a Microsurvey;

  • haven't seen a feature announcement Tour yet and should see more info by using "is not within the last x days"

With this filter, you can create different Segments and ensure each one sees a specific number of tours, preventing users from being overwhelmed.

Did this answer your question?