Preserve the aggregate, declare the standard, narrow the diagnosis
Choose one categorical stratification dimension whose levels are mutually exclusive and exhaustive—for example prompt intent, engine, market, buyer stage, or branded versus unbranded. Do not combine several changing dimensions into ambiguous row labels and call the remainder controlled.
Diagnose whether the rate moved or the mix moved
Name the aggregate and standard, affirm only supported comparison gates, then add one row per stratum with planned, usable, present, and evidence fields for both periods.
Formula and reconciliation
For stratum i, the observed binary visibility rates are p₀ᵢ = present₀ᵢ ÷ usable₀ᵢ and p₁ᵢ = present₁ᵢ ÷ usable₁ᵢ. The crude usable-observation weights are w₀ᵢ = usable₀ᵢ ÷ Σusable₀ and w₁ᵢ = usable₁ᵢ ÷ Σusable₁.
Crude change = Σ[(p₁ᵢ − p₀ᵢ)(w₀ᵢ + w₁ᵢ)/2] + Σ[(w₁ᵢ − w₀ᵢ)(p₀ᵢ + p₁ᵢ)/2]. The first sum is within-rate movement; the second is composition movement.For supplied standard weights qᵢ that total exactly 100%, the directly standardized rates are Σ(qᵢp₀ᵢ) and Σ(qᵢp₁ᵢ). The page never substitutes either period's observed mix, picks a favorable standard, or silently rescales incomplete weights.
What the result can and cannot support
A crude/standardized direction conflict means the historical aggregate and the same-mix comparison point in opposite directions. A Simpson-style warning means the crude direction is opposite every nonzero stratum-specific rate direction. Both are prompts to inspect the evidence and reporting design—not automatic proof that one result is true and another false.
Standardization balances only the declared categorical mix. It does not repair changed prompt wording or identities inside strata, missing-not-at-random observations, differential classification error, platform or model drift, dependence, confounding, selection, sampling error, or an undisclosed series break. The decomposition is an arithmetic identity, not a causal attribution model.
The tool provides no significance test, interval, sample-size rule, universal standard, preferred weights, causal effect, acceptable-change threshold, certification, or instruction to replace the preserved crude series. Consequential interpretation needs the underlying evidence and qualified review.
Method sources
- Evelyn M. Kitagawa, “Components of a Difference Between Two Rates” is the original source for the symmetric rate-and-composition decomposition used here.
- Public Health Technical Guidance: Directly standardised rates documents a standardized rate as a weighted sum of observed stratum-specific rates under reference weights.
- SAS/STAT: Direct Standardization documents common-reference weighting for comparison across study populations.
Those sources establish general arithmetic. They do not endorse this independent page, select an AI-visibility stratification or standard, validate supplied observations, or transfer public-health sampling assumptions to AI answer measurements.
Frequently asked questions
How can prompt mix change an AI visibility rate?
An aggregate is a weighted average. If high-visibility strata become a larger share of usable observations, the aggregate can rise without any within-stratum gain; the reverse can produce an apparent decline.
How do you adjust AI visibility for a changed prompt mix?
Apply one justified common set of stratum weights to both periods' stratum-specific rates, then compare the two standardized results alongside the crude rates, coverage, and evidence.
What is a Simpson-style reversal?
On this page it means the crude aggregate moves in one direction while every nonzero stratum-specific rate change moves in the other. It flags a composition-sensitive aggregate; it does not by itself establish a cause.
Should failed or unavailable answers count as absence?
No. Expected, usable, and present counts remain separate. Failed, unavailable, refused, unreviewed, and ineligible outcomes do not become confirmed absence.
Does this calculator upload observation data?
No. Validation, arithmetic, memo generation, copying, and Markdown download happen locally in the browser.