Skip to main content
← Glossary · A/B Testing

Flicker Effect

A visible flash of the original page content before the test variant loads, caused by client-side testing scripts that modify the DOM after the page renders.

What Is the Flicker Effect?

The flicker effect — also called Flash of Original Content (FOOC) — is the brief moment a visitor sees the original page before a client-side testing script modifies the DOM to display the variant. It can last anywhere from 50ms to 500ms depending on script load time. It's more than a cosmetic annoyance; it biases experiment results by altering how users process the page at a perceptual level.

Also Known As

  • Marketing teams call it flicker, FOOC, or content flash.
  • Growth teams say flicker, flash, or variant pop-in.
  • Product teams use flicker or rendering flash.
  • Engineering teams refer to FOOC, FOUC (flash of unstyled content), or DOM swap flash.
  • Performance teams call it layout shift or visual instability.

How It Works

User hits your pricing page. HTML and CSS parse and the original hero renders at 400ms. The testing script is loaded asynchronously and doesn't execute until 650ms. At 700ms the script swaps the headline, subcopy, and CTA to variant content. The user saw 300ms of original content, then watched it visibly change. Their brain registered the change, cognitive ease dropped, and — for the rest of the session — they're in a slightly more vigilant processing mode. Your variant's conversion rate reflects both the change and the contamination.

Best Practices

  • Deploy an anti-flicker snippet in the HTML head with a reasonable timeout (2–3 seconds).
  • Load the testing script synchronously in the head, not async or defer.
  • QA tests on throttled 3G to see real-world flicker behavior.
  • For high-stakes pages, migrate to server-side testing to eliminate flicker entirely.
  • Monitor LCP (Largest Contentful Paint) with and without test scripts to quantify performance cost.

Common Mistakes

  • Running client-side tests without any anti-flicker protection at all.
  • Setting the anti-flicker timeout too short (500ms), causing flicker on slow connections.
  • Assuming flicker is "just cosmetic" and ignoring its impact on test validity.

Industry Context

  • SaaS/B2B: Flicker is particularly damaging on logged-in workflow pages where trust matters.
  • Ecommerce/DTC: High-traffic PDPs suffer the most — flicker on even 2% of pageviews affects results.
  • Lead gen: Mobile landing pages show the most flicker due to slower connections.

The Behavioral Science Connection

Flicker triggers the orienting response — an involuntary attentional reaction that shifts users from automatic (System 1) to deliberate (System 2) processing. A variant that would have won with fluent processing loses because users became vigilant and skeptical. You're no longer testing the variant; you're testing variant-plus-flicker vs. clean-control.

Key Takeaway

Flicker isn't a cosmetic bug — it's a bias in your experiment data that makes variants look worse than they are.