
The list
Each metric:- Name — human-readable
- Source — a Traffical-native event or a warehouse fact
- Aggregation —
conversion_rate,sum,count - Used by — policies attached as goal or health metrics
- Current value — the latest computed aggregate across all traffic
revenue_per_user once and attaching it to every checkout-related experiment is the common pattern.
Creating a metric

| Source | What it means |
|---|---|
| Event | Aggregate a Traffical-native track event |
| Fact | Aggregate a warehouse-native fact definition |
| Aggregation | Numerator | Denominator | Output |
|---|---|---|---|
conversion_rate | Unique users with ≥ 1 event | Unique users exposed | Proportion (0–1) |
sum | Sum of value column | Unique users exposed | Per-user average |
count | Count of events | Unique users exposed | Per-user rate |
sum, you also pick the value column (e.g. order_total). For count, no column is needed.
Metric definitions can also live as config-as-code in
.traffical/metrics.yaml and be pushed via the CLI — see the config file and CLI reference. Attaching a metric as a policy’s goal or guardrail is done in the dashboard (below).Filters and dimensions
A metric can be filtered (e.g. “only completed orders”) or grouped by a dimension (e.g. bycountry).
For event-sourced metrics, the available filters and dimensions come from properties marked dimension: true on the event’s property schema.
For fact-sourced metrics, available filters are columns returned by the fact SQL.
Metric detail

- Current value with trend over time
- Top breakdowns by configured dimensions
- All policies using this metric as a goal or health gate
Attaching to policies
Open a policy → Metrics → Add metric.
- One goal metric. What the experiment is optimizing for (drives adaptive allocation shifts, surfaces as the primary result).
- Any number of guardrail metrics. Side effects you want to watch.
- Rollout health metrics. For policies with a rollout, metrics that gate ramp progression.
Reading per-policy results
On a policy’s detail page, each metric shows per-allocation:- The point estimate (e.g. conversion rate = 0.087)
- A confidence interval
- A significance indicator (when the experiment has enough data to make a confident call)

Best practices
- Pick metrics carefully. A metric that’s noisy at your traffic level will say “no significant effect” forever. Use a more direct outcome where possible.
- Don’t add too many guardrails. Three is plenty. Twenty is paralyzing.
- Match metric to randomization level. If your project is keyed on
companyId, prefer company-level metrics for goals. User-level metrics are still valid with cluster-robust analysis but slow to converge.
Next steps
Experiment design
Picking goal metrics and guardrails.
Definitions
Where warehouse-native fact definitions live.
Rollouts
Health-gated progressive delivery.