FreeCROTool help centre
Documentation
Practical guides for creating, targeting, coding and measuring website experiments.
New to the documentation?
Learn what the technical-level stars mean and what information to include when asking us for help.
Read this firstStart here
Read This First: Technical Levels and Support
★☆☆ Technical level 1 of 3
Understand the technical-level ratings and learn how to get useful help from FreeCROTool support.
Read guide →Does A/B Testing Use Cookies?
★★★ Technical level 3 of 3
Learn why A/B testing uses cookies, when consent may be needed and how FreeCROTool cookies work.
Read guide →Targeting
How to Target A/B Tests by URL
★☆☆ Technical level 1 of 3
Create precise URL-matching locations and avoid running a test on the wrong pages.
Read guide →How to Create an Audience for an A/B Test
★☆☆ Technical level 1 of 3
Learn what an A/B test audience is and how to target visitors using URL, device, browser and behaviour rules.
Read guide →Audience triggers
How Exit Intent Works and How to Show an Exit Popup
★☆☆ Technical level 1 of 3
Learn how exit intent works, how to show a popup when somebody leaves your site, and how to test desktop and mobile triggers with FreeCROTool.
Read guide →How to Trigger an A/B Test After Visitor Inactivity
★☆☆ Technical level 1 of 3
Learn how inactivity triggers work and use an idle timeout to test timely help, popups or page changes when a visitor pauses.
Read guide →Code snippets
How to Prevent Page Flicker in an A/B Test
★★★ Technical level 3 of 3
Learn why A/B tests flicker and prevent flashes of original content with targeted page hiding, fast transforms and a safe reveal timeout.
Read guide →How to Reveal a Page After A/B Test Changes Load
★★★ Technical level 3 of 3
Reveal hidden A/B test content as soon as variant changes finish, including safe synchronous, asynchronous and error-handling patterns.
Read guide →How to Reveal an A/B Test Page After a Safety Timeout
★★★ Technical level 3 of 3
Add an independent A/B test reveal timeout so hidden content always returns after failed, slow or missing experiment code.
Read guide →How to Add Custom CSS to an A/B Test
★★★ Technical level 3 of 3
Add scoped, responsive and accessible CSS to an A/B test without affecting unrelated pages, controls or experiments.
Read guide →How to Remove Custom CSS from an A/B Test
★★★ Technical level 3 of 3
Remove A/B test CSS safely by targeting a unique stylesheet, restoring owned DOM state and handling SPA route changes.
Read guide →How to Wait for Dynamically Loaded Elements in an A/B Test
★★★ Technical level 3 of 3
Wait for dynamically loaded DOM elements with MutationObserver, bounded timeouts and SPA-safe idempotent transformations.
Read guide →How to Track Clicks on A/B Test Elements with JavaScript
★★★ Technical level 3 of 3
Attach JavaScript click handlers once, prevent duplicate events and use event delegation for dynamically rendered SPA controls.
Read guide →FreeCROTool Helper Functions for Hand-Coded A/B Tests
★★★ Technical level 3 of 3
A developer reference for FreeCROTool helpers, DOM transforms, MutationObserver patterns, SPA-safe event handlers and analytics events.
Read guide →Analytics snippets
How to Track Virtual Page Views in GA4 During an A/B Test
★★★ Technical level 3 of 3
Track GA4 virtual page views in single-page applications without duplicates, then attribute meaningful page states to A/B test variants.
Read guide →How to Track A/B Test Button Clicks in GA4
★★★ Technical level 3 of 3
Learn how to track button clicks with Google Tag Manager, GA4 or JavaScript, then measure A/B test clicks with FreeCROTool.
Read guide →How to Track Purchase Revenue in GA4 for an A/B Test
★★★ Technical level 3 of 3
Track revenue in GA4 with GTM, prevent duplicate purchases, measure repeat orders in A/B tests, and set up Shopify with FreeCROTool.
Read guide →How to Send Custom GA4 Events from an A/B Test
★★★ Technical level 3 of 3
Create and test GA4 custom events with consistent names, useful parameters and FreeCROTool A/B test attribution.
Read guide →