Mini-Game
Analytics
A/B Test
Statistics
Experiment
Data

Why Does Your A/B Test Keep Lying to You?

A deep Q&A on the peeking problem, power analysis, holdouts, and the confounders that make a "winning" variant a statistical mirage

C

Cross Mini App Team

October 25, 2026 · 3 min read

Why Does Your A/B Test Keep Lying to You?

Why Does Your A/B Test Keep Lying to You?

Teams ship a new onboarding, watch the dashboard for two days, see a green number, and call it a win. Then the win evaporates by week three and nobody can explain why. The experiment didn't fail — it was never real. Here is how a test quietly lies, and what actually makes a result trustworthy.

Q: Why is "I see a lift, so I'll ship it" the most expensive habit in mobile?

It's the peeking problem. If you check a test daily and stop the moment it crosses significance, your real false-positive rate climbs from the nominal 5% to well over 40%. You're not testing a hypothesis, you're hunting for the day noise looked like signal. Then there's multiple comparisons: you glanced at ten metrics and one lit up — that's expected from chance alone. And the novelty effect: players poke at the new thing for a week because it's new, not because it's better. A lift you "see" on day three is usually one of those three wearing a costume.

Q: How do you size a test before you run it?

With a power analysis, not a guess. You need your baseline conversion rate, the smallest effect you care about (the MDE), your significance level, and your tolerated false-negative rate — and those four spit out how many users per arm and how many days. No baseline? Don't test yet; collect data first. A casual game with 30% D1 retention trying to detect a 1-point move needs tens of thousands of users per arm, which a small team simply can't feed in a reasonable window — so either test a bigger lever or accept a long run. "I have 100k DAU" is not a sample size; what matters is how many land in each variant after split.

Q: What is a holdout, and what is a confounder?

A holdout is a slice of users who never receive the experiment, so you can measure the long-term and network effects — the spillover where changing one group quietly shifts a shared metric. A confounder is something happening at the same time: a holiday, a UA burst, a version release. Your variant "won" maybe because Christmas did. The novelty-vs-real-retention question is only answerable by extending the window and watching the holdout. Without those, you've measured correlation with a calendar you didn't account for.

Q: How does a small team run experiments without fooling itself?

Pre-register the hypothesis and the stopping rule before you launch, and don't abandon it because day two looked pretty. Use sequential testing that spends your error budget correctly instead of naive peeking. Watch guardrail metrics — crash rate, retention, the distribution of ARPU, not one happy average. And resist testing twenty tiny tweaks hoping one sticks; a big, well-formed bet beats a pile of underpowered micro-tests that each lie a little.

MistakeWhat it doesThe fix
Peek and stopfalse positives >40%pre-registered stop rule
Many metrics, one "win"chance lights one upcorrect for comparisons
No baselinecan't size the testgather data first
Ignore confounderscredit the calendarholdout + longer window

Sources

Related Posts

Too Many Ads Kills the Game

Frequency capping is the dial between revenue today and a dead game next month

Mini-Game
Ad Frequency
Load Balancing
October 25, 2026·1 min read
Waterfall or Bidding — How Do You Actually Maximize Ad Revenue?

A deep Q&A on mediation layers, why hand-ranked waterfalls quietly leak money, and how to pick a mediation SDK without trusting its own eCPM

Mini-Game
Ads
Mediation
October 25, 2026·1 min read
How Do You Know Your Growth Is Real and Not Just Stolen Credit?

A Q&A on why last-click lies, how to run a holdout, why cross-promo double-counts, and how to read a cohort without fooling yourself

Mini-Game
Attribution
Incrementality
October 25, 2026·1 min read