Goals and guardrails
The main goal, supporting goals and guardrail goals, what goals can measure, and their default settings.
A goal is an outcome you measure. Every test has exactly one main goal, the outcome the verdict is about. It can also have supporting goals, shown for context, and guardrail goals, outcomes that must not get worse.
Goals are defined once in Tests → Goals and reused across tests. In the data model they are stored in the xp-metrics collection.
What a goal can measure
Each goal is measured by a source:
| Source | Kind | Set up by |
|---|---|---|
| A click on the page | Yes/no (binomial) | Editors, in Goals or the click-goal picker. See Click goals |
An event name such as signup | Yes/no (binomial) | Your developer, in eventSources |
| A metric source adapter | Yes/no, count or revenue | Your developer, in metricSources |
Event and metric sources are described in Goals and conversions.
A click is a signal, not the outcome
A click shows someone took an action; it does not prove they completed a purchase or signup. Click goals can be the main goal, and results remind you to add the real outcome as another goal when you can measure it.
Goal settings
Prop
Type
A goal's short name and what it measures cannot change while a test uses it, and a goal used by a test cannot be deleted.
Guardrails
A guardrail is a goal you do not want to hurt, such as unsubscribes or refunds. Each results run classifies every guardrail as:
| Status | Meaning |
|---|---|
ok | The data rules out a drop larger than the threshold. |
warning | Trending worse, not yet conclusive. |
insufficient | Too little data to rule out harm. |
failing | Harm is detected and the minimum sample size is met. |
A failing guardrail overrides any win: the verdict becomes "Stop: Variant A harms Unsubscribes." How each status is computed is in Guardrails.
Main and guardrail click goals must appear in every tested version or outside all of them, so that every version has the same chance to collect them. Start refuses a test where they appear only in some versions; supporting goals warn instead.
Adding a goal during a test
Add a metric adds a supporting goal or guardrail to a running test. The add warns when the goal was added mid-test, when it appears only in some versions, or when a placement could not be checked. Clicks from before a click goal was added are excluded from that goal's results for every version.

