Research · Original measurement · 1 September 2026

A flip rate is not a stability metric

The short answer. How often a brand mention changes between consecutive runs is becoming the standard evidence that AI answers are unstable. That statistic has a null model. If a brand is named in a fraction p of answers and each answer were an independent draw, mentions would flip on 2p(1 minus p) of consecutive pairs by chance alone: 9.5% at a 5% mention rate, 21% at 12%, 50% at 50%.

Why it matters. Two engines in our own corpus flip at 4.9% and 5.3%, four tenths of a point apart. One of them is genuinely more consistent than chance and the other is indistinguishable from a coin. The correction changes not just the size of the effect but the ranking of every engine we measure.

Corpus: 8,060 valid graded answers · unbranded prompts only · 9 engines · 32 brand records · 3,886 prompt-engine cells · 4,174 consecutive pairs · 11 July to 31 August 2026 · aggregate CSV

Why the raw number cannot be read

The reason repeated measurement matters in AI search is well established and we are not disputing it. Answers are generated rather than retrieved, so a single observation is a draw from a distribution. Our own reporting contract has required repeated runs, denominators and intervals since we started.

The consecutive flip rate has become the convenient headline for that instability: count how often a mention changes between one run and the next, and report the share. It is easy to compute and intuitive to read. It is also, on its own, not interpretable, because the null model is not zero.

P(flip) = 2p(1 minus p)
p = 0.03 → 5.8% of pairs flip, with no instability whatsoever
p = 0.05 → 9.5%
p = 0.10 → 18.0%
p = 0.25 → 37.5%
p = 0.50 → 50.0%

The function is not monotonic in the way intuition suggests. It peaks at p = 0.5 and falls toward zero at both extremes. A brand that is almost never named and a brand that is almost always named will both show very low flip rates, and neither result says anything about whether the engine is stable. Only the comparison between observed and expected carries information.

What we measured

All figures come from Ansengine production measurement between 11 July and 31 August 2026, a 51 day window. A mention is counted when the stored answer names the brand under our verified matching rules. Branded prompts are excluded throughout: a prompt containing the brand name guarantees the mention and would inflate every rate. The 32 brand records are a record count, not a claim of 32 distinct companies; the cohort includes duplicate and internal test records, and we have not removed them, because removing them after seeing the result would be a choice made on the outcome.

Answers that failed, timed out or have not yet been graded are excluded and never counted as absent. That is 3,361 ungraded answers sitting outside this analysis entirely. Counting an ungraded answer as a non-mention would depress the base rate, which would lower the expected flip rate, which would manufacture the exact stability this study is trying to test.

Finding 1: our answers are about three times more stable than chance

Across the pooled cohort the brand was named in 821 of 8,060 answers, a base rate of 10.19%. Mentions flipped on 259 of 4,174 consecutive pairs, an observed rate of 6.21% with a 95% Wilson interval of 5.5% to 7.0%. Chance alone predicts 18.30%. That is a stability ratio of 2.95x, and the observed interval sits far below the expected value, so the effect is real rather than sampling noise.

Consecutive answers are not independent draws. Knowing that an engine named a brand yesterday tells you a great deal about today. That is the finding a raw flip rate cannot express, because 6.21% looks like instability until you know that chance predicts 18.30%.

Pairs within a cell are correlated, so a pair-level analysis overstates the effective sample. We repeated the test with the cell as the unit, which is much closer to independent. Of the 916 cells with three or more observations, 114 (12.4%) contained both a mention and a non-mention. Using each cell’s own observation count and the pooled base rate, independence predicts 39.8%. The correction survives the change of unit and the effect size is materially the same.

Finding 2: two engines, one number, two meanings

Google AI Mode flipped on 4.94% of pairs. Copilot flipped on 5.33%. Those two figures are four tenths of a point apart. Published side by side as raw flip rates they would look like the same result, and a reader would reasonably conclude the two engines behave alike.

They do not. Google AI Mode names the brand in 4.90% of answers, so chance alone would produce a 9.31% flip rate. Copilot names the brand in 2.56% of answers, so chance alone would produce 4.98%.

EngineObserved flipBase rateExpected by chanceRatioReading
Google AI Mode4.94%4.90%9.31%1.88xReal stability
Copilot5.33%2.56%4.98%0.93xIndistinguishable from a coin

One of these engines is meaningfully more consistent than chance. The other is not distinguishable from flipping a biased coin at every observation. The raw numbers cannot tell them apart, and the raw numbers are what almost everyone publishes, ourselves included until now.

Finding 3: the correction inverts the engine ranking

Every engine in the cohort, with its base rate, its observed flip rate and interval, and the value chance predicts. “Proven” means the observed interval sits entirely below the expected value.

EngineNamed / runsFlips / pairsObserved (95% CI)ExpectedRatioProven
Google AI Overviews194 / 1,524 (12.73%)38 / 7445.11% (3.7 to 6.9)22.22%4.35xyes
Perplexity149 / 1,852 (8.05%)41 / 1,0114.06% (3.0 to 5.5)14.80%3.65xyes
ChatGPT (consumer)376 / 2,198 (17.11%)129 / 1,3789.36% (7.9 to 11.0)28.36%3.03xyes
Google AI Mode45 / 919 (4.90%)26 / 5264.94% (3.4 to 7.1)9.31%1.88xyes
Gemini (API)19 / 398 (4.77%)10 / 1666.02% (3.3 to 10.7)9.09%1.51xnot proven
ChatGPT (API)15 / 397 (3.78%)9 / 1715.26% (2.8 to 9.7)7.27%1.38xnot proven
Claude (API)5 / 212 (2.36%)2 / 523.85% (1.1 to 13.0)4.61%1.20xnot proven
Copilot10 / 391 (2.56%)4 / 755.33% (2.1 to 12.9)4.98%0.93xat chance

Gemini’s consumer surface is omitted from the table: it recorded 0 flips in 51 pairs, an interval of 0 to 7.0% against an expected 9.0%. Suggestive, but too few pairs to rank.

By raw flip rate · most stable first
  1. Claude, 3.85%
  2. Perplexity, 4.06%
  3. Google AI Mode, 4.94%
  4. Google AI Overviews, 5.11%
  5. ChatGPT API, 5.26%
  6. Copilot, 5.33%
  7. Gemini API, 6.02%
  8. ChatGPT consumer, 9.36%
By stability ratio · most stable first
  1. Google AI Overviews, 4.35x
  2. Perplexity, 3.65x
  3. ChatGPT consumer, 3.03x
  4. Google AI Mode, 1.88x
  5. Gemini API, 1.51x
  6. ChatGPT API, 1.38x
  7. Claude, 1.20x
  8. Copilot, 0.93x

ChatGPT’s consumer surface has the highest raw flip rate of any engine we measure and is the third most stable once its base rate is accounted for. It looks volatile only because it names brands more often than any other engine, and an engine that names you 17% of the time has more opportunity to change its mind than one that names you 2% of the time.

Claude runs the opposite way. It has one of the lowest raw flip rates in the cohort and shows no measurable stability at all: its interval covers the chance value. On the raw number it looks like the steadiest engine we measure. It is simply an engine that rarely names anyone.

Where we cannot prove stability, we say so

Four of the nine engines clear the bar. Four do not, and one, Copilot, sits at chance with a ratio of 0.93x. The four that fail are the four with the lowest base rates and the smallest samples, which is exactly what the arithmetic predicts. When a brand is named in 2.4% of answers, chance itself only produces a 4.6% flip rate, so separating real stability from noise needs far more pairs than we currently have on those surfaces. We are not claiming 2.95x everywhere. We claim it where the interval supports it and report the rest as unproven.

The same pattern appears across brands. Every brand in the cohort with a meaningful base rate lands between 2.07x and 3.40x, which says the pooled result is not carried by one client. Every brand with a base rate near zero lands at or below 1.0x, which says the statistic stops working exactly where the mention rate collapses.

How this relates to our August study

On 27 August we published per-engine verdict stability with different figures, and the two are not in conflict. They measure different things, and saying so is the point of versioning a measurement.

That study grouped runs by brand, prompt, engine and measurement period, then reported the share of same-period cells that contained both verdicts. It captures within-period variation: the same prompt asked repeatedly under the same conditions. This study drops the period from the key, orders every observation in a cell by capture time, and compares each one to the one before it. It therefore captures within-period variation and day-to-day drift across a 51 day window.

Both are ours, both are correct, and the gap between them is not an error to reconcile away. It is the drift component, and it is the reason a number measured within one day should never be compared with a number measured across seven weeks without saying which is which.

The reporting rule we are adopting

Any published claim about AI answer stability should carry four fields. Three are already common. The fourth is the one that makes the other three mean something.

  • The observed flip rate, as flips over pairs.
  • The marginal mention rate, as mentions over valid runs. Without it the flip rate has no null model and cannot be read.
  • The expected flip rate under independence, 2p(1 minus p).
  • An interval on the observed rate, per engine, so a ratio near 1.0 is reported as unproven rather than as stability.

Engines have to be reported separately for this to work at all. Pooling them averages together base rates that differ by a factor of seven in our cohort, which makes the pooled expected value meaningless.

What this does not prove

  • It is not a random sample. This is an observational production cohort of our customers' prompts, weighted toward B2B software with a small number of local businesses. Base rates in another cohort will differ, and every number here moves with them.
  • It does not establish that any engine is stable in general. It establishes that in this cohort, over this window, consecutive answers are not independent draws.
  • The independence null is a floor, not a model of engine behaviour. Real answers are correlated through prompt difficulty, brand stature and index state. Beating independence is the minimum bar for calling something stability, not a full account of it.
  • It says nothing about causality. No intervention was tested and no control arm was run. We run concurrent held-out prompt arms separately for that purpose.
  • A stability ratio is not a quality score, and it is not a rank. An engine being predictable is not the same as an engine being favourable.
  • Pair-level counts are clustered, which is why the cell-level replication is reported beside them. Both are given so the reader can choose.

Reproduce it

The calculation is four lines of SQL over any store that keeps one row per answer with a timestamp and a mention flag: partition by brand, prompt and engine, order by capture time, compare each observation to the one before, and divide. The null model is arithmetic. Anyone holding repeated-measurement data can run this against their own cohort today, and we would rather they did.

The aggregate table behind every figure above is published as a CSV: per engine, the observation count, the mention numerator and denominator, the pair count, the flip count, the interval, the expected value and the ratio. No prompts, no answers, no customer identifiers.

Ansengine production cohort, 11 July to 31 August 2026. 8,060 valid graded answers on unbranded prompts across 32 brand records and 9 engines; 3,886 prompt-engine cells, 916 with three or more observations; 4,174 consecutive pairs. Ungraded, failed and timed-out answers excluded and never counted as absent. Wilson 95% intervals throughout. Branded prompts and location-scoped runs excluded. All figures are first-party measurement; no third-party data is used or quoted.

The full calculation and reporting contract is on our methodology page. More studies are in Research.