Run through this checklist before publishing any Experience to real users. Each item maps to a condition Chameleon checks before showing an Experience. If any one of these is not met, the Experience will not display.
π Not sure where to start? Ask Copilot! It can help you diagnose this issue faster.
The checklist
1. The Chameleon snippet is installed and users are being identified
How to verify
Run this command:
chmln.Snippet.debug()
This tests whether the Chameleon snippet has been installed correctly and is running on the current page.
βΉοΈ A positive result such as "Chameleon loaded, User profile loaded" confirms the snippet is working. If this command returns an error or nothing, resolve the installation issue before proceeding.
2. The Experience is published, and all edits are applied
Open the Experience in your Dashboard and confirm it has a green "Live" badge. If you also see an 'Edited' badge, this means your Experience has unpublished changes.
β¨ Unpublished edits are not visible to users. If you have made any changes since the last publishing, click "Apply Changes".
βΉοΈ Publishing requires a paid Chameleon plan. Free plans support Interactive Demos only.
3. The URL rule matches the page you are testing on
Check the URL rule configured for the first Step of your Experience. Open the exact URL where the Experience should appear and confirm it matches the pattern precisely, including any subdomains, paths, query parameters, or trailing slashes.
βΉοΈ In the Builder, the top bar will show a notification if the URL rule is preventing the Experience from displaying.
β οΈ Common causes of URL mismatch: trailing slashes, query parameters not accounted for, subdomain differences (e.g. app.company.com vs. www.company.com).
4. The target element is present on the page (if you are using one)
If your Experience uses a trigger element or an anchor element, confirm that element is present and visible on the page at the moment the Experience should appear.
Elements that load after a delay β for example, inside a modal or populated by an API call β may not be detected if they are not present when Chameleon checks for them.
π‘ If your element loads asynchronously, you may need to adjust the element checker timer setting in your element rules.
5. You are in the target audience
Check the audience Segment set for the Experience in the Dashboard. Run the following in the browser console to see whether the current user matches the target audience:
chmln.debug("YOUR_EXPERIENCE_ID")
This returns true or false for the audience match.
π‘ If you want to test without worrying about audience matching, temporarily switch the audience to "Just Me" and Apply Changes.
6. You have not already seen it (or Recurrence allows you to see it again)
If your Experience is set to show only once and you have already seen it, it will not show again.
To reset:
Go to your Profile page in the Dashboard and press the refresh icon next to your user profile.
Use a fresh incognito tab or fully close and reopen Chrome to clear local storage as well.
π‘ Alternatively, temporarily set Recurrence to "Every time" for testing purposes.
7. No technical blockers are active in your browser
Disable any ad blockers and refresh the page. Some ad blockers interfere with Chameleon scripts.
Confirm that third-party cookies are not blocked in your browser settings. In Chrome, go to
chrome://settings/and check that "Block third-party cookies" is off.If your application has a Content Security Policy (CSP), confirm that Chameleon has been added as a trusted source. A CSP error will appear in your browser console as:
Refused to load the script 'https://fast.chameleon.io/...'
Quick-reference summary
Check | How to verify |
Snippet installed, users identified |
|
Experience is published | Green "Live" badge in Dashboard; Apply Changes clicked |
URL rule matches | Exact URL match confirmed; no trailing slash or query param issues |
Target element is present | Element visible on page at display time |
You are in the audience |
|
Recurrence allows display | User history cleared, or Recurrence set to "Every time" |
No technical blockers | Ad blocker off; third-party cookies allowed; no CSP errors in console |
Still stuck?
If you have checked all items and your Experience is still not appearing:
Run
chmln.debug()in the console for a full diagnostic on all published Experiences.Read How to use the Debugger Console tool for a deeper walkthrough of the output.
See Why isn't my Experience showing? for a full troubleshooting guide.
Contact Chameleon support with a screen recording and your Experience ID.



