Skip to main content
My Experience is not showing up

Troubleshooting steps to take when you or your users are not seeing a Chameleon Experience as expected

Chameleon Team avatar
Written by Chameleon Team
Updated over a week ago

The best way to evaluate what your users will see is by using Testing Mode. This mode treats you as an end user, and not a Chameleon administrator. This means you will only see live Experiences based on your user data and Tour history. 

To see Experiences live, you will need to ensure the following:

  1. Snippet is installed on the page

  2. Users are identified correctly (with a unique identifier)

  3. The Experience is live and Edits Applied

  4. Step URL matches the current page URL

  5. Step trigger element or anchor element is present on the page

  6. User is within the selected audience

  7. Current user must not have completed or exited the Experience (Experiences are shown once per user until exit or completion) if it is set not to recur

  8. No ad blockers or cookie blockers are interfering

During live testing, if you are not seeing the Experience then please troubleshoot with the steps below:

Please confirm you have correctly implemented Chameleon (including calling chmln.identify with a uid each time a logged-in user loads a page. If chmln.identify is not called, Experiences will not show. You can use the Debugger tool in your console to check this.

Or, check if the script is loading as follows: on the page, right-click and select “Inspect Element.” Open the Console tab, and type chmln.data.profile.

If you get the result Uncaught ReferenceError: chmln is not defined, or undefined the snippet has not been implemented correctly.

Also, if you have previously disabled the domain then no Experiences will show to users. You can review your domains in the Dashboards under Settings > Domains.

Ensure that your Experience is published and live. For this to happen you must first sign-up for a paid plan. For alternative ways to test Experiences without it being live please see here.

Also, if you've made any changes to your Experience since you last published you will need to Apply Edits for those changes to show up live.

Steps will only show on the URLs they are set to match to. Please ensure the URL of your page matches the one set for the step you are trying to preview. Learn more about that here.

If you used an element to trigger the Step or to anchor the Step to, then this element must be present. 

Sometimes the element identified during editing is too specific or does not match exactly with the element on the page, even if they seem similar. This is due to the underlying "HTML structure" and "CSS selectors" used to identify the element. Learn more about how to adjust these here

If you do not fall in the target Segment or have previously seen the Experience, then you will not see it again.

To circumvent this, you have a few options:

We store data about Experience history both server-side and on local storage. This means that even if you clear your history the Experience may not show immediately, so please use a fresh incognito tab in Chrome, or close Chrome (for your Chrome user persona) and then try again.

  • Set the Recurrence of the Experience to every time

  • With Tours, you can use its Tour Link. For this, the first Step URL needs to be specifically defined (cannot use wildcards / * for example).
    This loads the Tour regardless of the target segment or a user's history.

Check that your browser is not blocking 3rd party cookies. For Chrome, you can read about how to manage exceptions (i.e. allow Chameleon to set cookies) here.

Check that any ad-blocking software is not interfering with Chameleon. Try turning off your ad blocker and refreshing the page to see if that could be the issue.

If none of these items resolve your issue, then please:

  1. Use our debugger tool to see the status of an Experience, including if it's being Rate limited.

  2. Self-investigate further using this advanced troubleshooting article

  3. Email us with a screenshot/video of your app with the JavaScript console open (and scrolled to any errors that are related to chmln).

Chrome now requires the Developer Console to be open while the page is loading to access variables, so please open the console and reload the page to see any potential error.

Did this answer your question?