
Prompt A/B testing: how to know if one version is really better
Prompt A/B testing compares two versions of instructions with real users. How to plan the test, what to measure, and why variable AI answers need large samples.
Why is testing the prompt by hand not enough?
Because a prompt can look good on three examples and fail on real traffic. Manual tests have two problems: they are few, and they are chosen by whoever wrote the prompt.
FeatBit proposes a five-step rollout sequence:
- Offline evaluation. Compare control and variant on representative examples, known failure cases and a rubric. If the variant fails here, it does not reach users.
- Internal exposure. Turn the variant on with a flag for employees or a trusted group.
- Limited exposure. Assign a small cohort and watch telemetry and support reports.
- Balanced A/B test. Compare control and variant with clean assignment, once the variant is safe enough to measure.
- Decision and cleanup. Promote, roll back or revise, and remove the prompt branches and flags you no longer need.
Why do AI answers need larger samples?
A model does not always give the same answer, even when you set the temperature to zero. According to Atlan, which cites a 2024 study by Atil and colleagues, the accuracy of the same prompt can swing up to 15% across identical runs. The same source estimates that LLM variance is, by order of magnitude, larger than in a normal product test, so the usual sample-size math falls short.
Two practical rules come from that variability:
- Calculate the sample with your own variance, estimated from offline evaluation scores, and with a minimum detectable effect that you decide in advance.
- Remember the square relationship: to detect a difference half the size, you need about four times as many samples.
| Minimum effect you want to detect | Relative sample size |
|---|---|
| 20% or more | 1× (baseline) |
| Around 10% | Around 4× |
| Around 5% | Around 16× |
These ratios come from the square relationship, not from a specific study. Use them as an order of magnitude.
What should you measure?
Do not use a single conversion metric. A prompt test needs a bundle:
- Automated quality. A judge model scores relevance, faithfulness to the context and clarity. See LLM-as-judge for its traps.
- User signals. Thumbs, short surveys and, as an indirect indicator, retries and early exits from the session.
- Operations. Latency to the full response and tokens per variant. A more accurate variant that takes twice as long may not be better.
Before exposing users, you can score the variant with the same rubric on real inputs, in shadow mode. That way you catch problems without affecting anyone.
How should you split traffic?
- Assign by user, not by request. Traceloop stresses that a single user should consistently see the same prompt version for the test to be fair. If each message falls into a different variant, one person sees both and the data gets contaminated.
- Start with a small percentage. A Traceloop guide uses 10% as its canary example: the new variant runs next to the control and receives a small share of traffic.
- Do not check the result every day. Stopping when one variant is ahead produces false winners. Wait for the sample size you defined.
Example
Illustrative example: a support assistant drafts replies to customers. The team believes a prompt with more policy context will give better replies. Before testing, they write the hypothesis: “the variant raises the rubric relevance score by at least 10% and does not raise latency by more than 15%”. They calculate that they need thousands of conversations per variant, not hundreds.
During the test they look at the average relevance score, but also at a segment: return requests. The variant improves the average but worsens that segment, because the policy context is too long for that kind of request. Without checking by segment, they would have shipped an improvement that hurts one group of customers.
For the general framework behind these tests, read prompt regressions and golden datasets. For the underlying metrics, quality metrics for an AI feature. And for the classic product experiment, the A/B testing page in the research section.
Hypothesis template
Write the hypothesis before assigning traffic, using this form:
If we change [what], then [primary metric] will rise by at least [minimum effect] in [segment], without [guardrail] getting worse than [limit].
Example: “If we add the returns policy to the context, the rubric relevance score will rise by at least 10% on return requests, without p95 latency rising more than 15%.”
The form forces three decisions up front: which metric decides, how much it must improve for the change to be worth it, and what must not get worse. If you cannot fill a gap, you are not ready for the experiment yet.
Common mistakes
- Changing the prompt, the model and the temperature at once, and not knowing what worked.
- Deciding on a small sample because the result “looks good”.
- Looking only at the average and not at segments.
- Ignoring cost and latency.
- Leaving old prompt branches and flags in the code after deciding.