Skip to main content

Why is my Experience showing too often?

Learn why a Chameleon Experience may show more frequently than intended, including common causes like Recurrence settings and inconsistent user identification.

Written by Amanda Oliveira
Updated today

If a Chameleon Experience is appearing more frequently than intended, the cause is usually a Recurrence setting that allows repeat display, a chmln.identify() call that re-initialises state, or the Experience not tracking completion correctly. This article covers how to diagnose and fix each case.

πŸ’‘ Tip: Not sure where to start? Copilot can walk you through diagnosing why your Experience is showing too often β€” just describe what you're seeing and it'll help you narrow it down. It's a great first stop before diving into the steps below.


How Recurrence controls display frequency

Each Experience has a Recurrence setting that controls how many times a single user can see it. The available options are:

  • Don't repeat after it is exited or completed

  • Repeat on the next page load

  • Repeat immediately after exited or completed

  • Repeat after an event occurred

  • Repeat on a time-based recurrence: each week, month, quarter, half-year, year

How to check the current Recurrence setting

  1. Open the Experience in the Dashboard.

  2. Go to the Review and publish panel.

  3. Check the Choose recurrence field.

If Recurrence is set to Repeat immediately or Repeat after page reloaded, the Experience will show on every page load. This is the most common accidental cause of over-display.

ℹ️ If your Experience is a Walkthrough, you won't see a 'Recurrence' option as Walkthroughs are triggered by the customer.


Common causes of over-display

Recurrence was set to "Repeat after page reloaded" or "immediately" during testing and not changed back

Setting Recurrence to one of the repeat options is useful for testing β€” it lets you see the Experience repeatedly without resetting your history. If this is not changed before publishing to real users, those users will see the Experience on every visit.

Fix: Change Recurrence to the appropriate interval and Publish the changes.

The user has not been identified consistently

If chmln.identify() is called with a different user ID across sessions β€” for example, using a session token rather than a stable user ID β€” Chameleon treats each session as a new user. All display history is tied to the user ID, so changing it resets what the user has seen.

Fix: Ensure chmln.identify() always passes the same stable, permanent user ID. Read How to identify your users in Chameleon for details.

The User opened multiple tabs

If the user opened your app in multiple tabs, it's possible they'll see the Experience in all the tabs, as Chameleon evaluated 'Recurrence' when the page loaded on each tab.


How to check how many times a user has seen an Experience

To check whether an Experience has been displayed and what state it is in for the current user, you can check the 'Experiences' tab in the User Profile.

Go to Users > All Users and find the user you want to check.

You can also export a CSV file for your Experience, which will contain all users who have interacted with the Experience, and their Status.


Still stuck?

Did this answer your question?