Traffic Allocation and Variant Weights
Learn how Pertento splits traffic between variants, and what happens when a variant has no explicit weight.
3 min read
Weights control what share of matching visitors each variant receives. You edit them from the variant list on the experiment’s Settings tab, using Change Weights.
Explicit and unallocated weights
A variant either has a weight you set, or no weight at all. The difference matters:
- A variant with an explicit weight always receives that share.
- A variant with no weight shares whatever is left over equally with the other unallocated variants. This is the default, and it is why a fresh experiment with two variants splits evenly without you configuring anything.
The Original — the unchanged page — participates in the same arithmetic. Give one variant 30% and the remainder is divided between the Original and any other unallocated variant.
This is why the weights dialog shows every other variant alongside the one you are editing, greyed out. You are never setting one number in isolation; you are dividing a fixed total, and the consequence for the others should be visible while you do it.
The controls
- The slider and number field set the weight of the variant you opened. They are limited to the share actually available, so you cannot allocate traffic that other variants have already claimed.
- 100% gives this variant everything. Use it to show one experience to all matching visitors.
- Reset removes the explicit weight and returns the variant to sharing the remainder. This is not the same as setting it to zero: reset means "share what is left", zero means "receive nothing".
Automatic rebalancing
Variant assignment happens in the visitor’s browser, and random assignment drifts: over a few thousand visitors the realised split is close to what you configured, but rarely exact.
Pertento corrects for this. Every fifteen minutes a background job measures the split each running experiment actually achieved and nudges the configured weights in the opposite direction, so the cumulative split converges on what you intended. The correction only applies once an experiment has accumulated at least 100 sessions, below which the measurement would be noise, and it is skipped entirely once a variant has been deployed, because a rollout is not a randomised arm.
The practical consequence: the weight values you see may differ slightly from what you typed. That is the correction working, not a fault. The number to judge the split by is the realised share on the Statistics tab, which is measured from sessions.
Choosing a split
- Even splits reach a conclusion fastest. Statistical power is maximised when the groups are the same size, so 50/50 is the default for a reason.
- Uneven splits are for limiting exposure, not for speed. Sending 10% to a risky variant caps the downside, and costs you a much longer run.
- Avoid changing weights mid-run where you can. The periods before and after the change have different sample compositions, and the traffic split check on the Statistics tab will flag the discrepancy.
Notes
- Weights are stored as basis points internally, which is why the dialog accepts two decimal places.
- Reset and 0% are different states. Reset shares the remainder; zero receives nothing.
- A variant left at 0% collects no data and will never produce a result.