In plain English
Every experiment optimises something, and almost every optimisation has a way to cheat. Aggressive email increases sessions and increases unsubscribes. A more prominent upsell increases revenue per order and increases returns. Removing a confirmation step increases completion and increases support tickets. A guardrail metric is the one you watch to make sure the win you measured is not being paid for somewhere the test was not looking.
The defining property is asymmetry. A guardrail can veto a launch; it can never justify one. That sounds like a small distinction and it is the entire mechanism — the moment a guardrail is allowed to declare a win, it has become a second primary metric, the multiple comparisons problem arrives, and the decision rule turns into "ship if anything came out green". Nominating exactly one metric that can say yes, and several that can say no, is what keeps the type I error rate roughly where you set it.
That asymmetry also changes how they should be powered, in a way most teams get backwards. On the primary metric you are protecting against a false positive, so you want a strict threshold. On a guardrail you are protecting against a missed regression, so the error that matters is the false negative — and correcting a guardrail for multiple comparisons makes it less sensitive to exactly the thing it exists to catch. Most mature programmes run guardrails uncorrected, at a looser threshold, and treat the occasional false alarm as the cost of the insurance.
Good guardrails come in three flavours. Business-critical metrics that no experiment is allowed to damage regardless of what it improves — revenue, retention, checkout completion. Quality and trust metrics that degrade slowly and expensively: unsubscribes, complaint rate, app store rating, support contacts. And validity metrics, which are not about the product at all but about whether the experiment can be believed — sample ratio mismatch, latency, error rate, crash rate. That third group catches more real problems than the other two combined.
Two practical points. Guardrails are usually the metrics worth watching with sequential testing, because waiting two weeks to learn that a release broke checkout is not a real option, and continuous monitoring is precisely what sequential boundaries are built for. And the threshold on a guardrail should be an interval question rather than a significance one: what you want to know is not whether the metric moved, but whether you can rule out a drop larger than you are willing to accept — which is an equivalence or non-inferiority test, not a significance test.
The formula
The arithmetic is ordinary; what is specific to guardrails is which hypothesis goes where and which error you are willing to spend.
- The non-inferiority form
H₀: Δ ≤ −margin vs H₁: Δ > −marginRejecting H₀ shows the metric did not drop by more than the margin. This is the question a guardrail is actually asking — see the non-inferiority calculator.
- Why not to correct
stricter α ⟹ lower power ⟹ more missed regressionsA multiple-comparisons correction on a guardrail trades the error you care about for the one you do not. Run them uncorrected.
- The interval to read
lower bound of the (1 − α) CI > −marginA guardrail passes when the worst case consistent with the data is still acceptable, not when the p-value is above 0.05.
- Validity guardrail: SRM
χ² on arm counts, flag if p < 0.001The cheapest guardrail in existence and the one that catches the most. It gates every other metric, so run it first.
Worked example
A test makes the newsletter signup prompt more prominent. Signups rise 14%, comfortably significant. Two guardrails are watched: unsubscribe rate within 30 days, and the spam complaint rate. Unsubscribes move from 2.10% to 2.31%, p = 0.09. Complaints move from 0.041% to 0.052%, p = 0.21.
- Primary: signups
- +14%, p < 0.001
- Guardrail: unsubscribes
- 2.10% → 2.31%, p = 0.09
- Unsubscribe 95% CI
- −0.03 to +0.45 percentage points
- Guardrail: complaints
- 0.041% → 0.052%, p = 0.21
- Complaint 95% CI
- −0.006 to +0.028 percentage points
- Acceptable unsubscribe increase
- +0.10 percentage points
Neither guardrail is significant, and neither passes. The unsubscribe interval extends to +0.45 points, four and a half times the agreed tolerance.
Read as a significance test both guardrails say ship, and that reading is wrong in a specific way: p = 0.09 on a guardrail is not reassurance, it is an unresolved question with the evidence leaning the wrong way. The interval is what the decision needs, and it cannot rule out an unsubscribe increase four times larger than the team said it would accept. Complaints matter more still, because a rising complaint rate is scored against the sending domain and damages deliverability for every message including transactional ones — a slow, expensive harm that a two-week test measures poorly. The right call is to keep the arm running specifically to tighten the guardrail interval, and to treat the 14% signup win as unbanked until it does.
Common misconceptions
- דThe guardrail was not significant, so the change is safe.”
- A non-significant guardrail with a wide interval is an open question, not a clean bill of health — and it is exactly what an underpowered guardrail always produces. Read the lower bound: if a drop larger than you are willing to accept is still consistent with the data, the guardrail has not passed.
- דWe should correct guardrails for multiple comparisons like everything else.”
- That makes them stricter and therefore less likely to fire, which is backwards for a metric whose job is catching harm. On a guardrail the expensive error is the missed regression, so most programmes run them uncorrected and accept occasional false alarms as the price of the protection.
- דA guardrail that improved is a second win worth reporting.”
- Report it, but do not let it decide anything. The moment a guardrail can justify a launch it has become a second primary metric, and a decision rule of "ship if any metric came out green" inflates the false-positive rate exactly as multiple testing predicts. One metric says yes; several say no.