Traffic Split

Documents / AB Testing

Once you have a Control and at least one variation, you still have to decide how many eligible people see each version. In everyday language, that is a traffic split: “half and half,” or “keep most people on the original.” In CROForge, traffic is not “everyone on the internet.” It is visitors who already passed the domain allowlist, URL targeting, and the audience segment. Those eligible visitors are then placed in a bucket using Equal or Custom percentages that must sum to 100. Assignment is random for new visitors and sticky afterward.

Words used on this page

WordEveryday meaningMeaning in CROForge
TrafficPeople arriving at a site.Eligible visitors who passed domain, URL, and audience checks and can be assigned a variation.
Traffic splitHow you divide those people among versions.The percent of eligible traffic each variation receives. Modes are Equal or Custom.
EqualSplit the pie evenly.TRAFFIC_SPLIT.EQUAL — 100% divided evenly across Control and all variants.
CustomYou choose the slices yourself.TRAFFIC_SPLIT.CUSTOM — you set each variation’s percent. They must sum to 100.
BucketA labeled group you put people into (like lottery bins).A half-open numeric range on a 0–100 line. A visitor’s random number falls into one variation’s range.
Sticky assignmentOnce grouped, you stay grouped.The chosen variation is stored. Changing the split later only affects new visitors; already-assigned visitors keep their variation.
ControlThe original experience.Often given a larger custom percent when you want to limit risk on a new variant.
Variation / VariantAn alternative experience.Each owns a percent (Equal or Custom) and therefore a bucket range.

Screenshot

Filename: traffic-split.png (Equal vs Custom controls and percent fields). Place the file under docs/assets/placeholders/. Paste the screenshot into WordPress after you copy this article; do not add an image tag here.


Equal vs Custom

ModeEnumBehavior
EqualTRAFFIC_SPLIT.EQUALEvenly divide 100% across all variations (Control included). Best default for a clean read.
CustomTRAFFIC_SPLIT.CUSTOMManually set each variation’s percent. Use when you want more traffic on Control (risk control) or on a champion variant.

How assignment works

Think of a number line from 0 up to, but not including, 100. Eligible visitors get a random number in that half-open interval [0, 100). Each variation owns a half-open range [start, end). The visitor is assigned to the matching bucket, then the choice is stored for stickiness.

Example with Equal split, Control plus one variant (50 / 50):

  • Control owns [0, 50) — random 0 through 49.999… goes to Control.
  • Variant A owns [50, 100) — random 50 through 99.999… goes to Variant A.

Example with Custom 80 / 20 (Control / Variant):

  • Control owns [0, 80).
  • Variant A owns [80, 100).

How to set the split

  1. Open the campaign → Configuration → Variations.
  2. Choose Equal for an even split, or Custom to type percents.
  3. Confirm every variation has a percent and that the values sum to 100.
  4. Save. New eligible visitors will be bucketed with the new ranges. Visitors who already have a stored assignment keep it.

Tips that keep results honest

  • Start with Equal unless you have a reason not to. Uneven splits make it slower to judge a small variant.
  • Use Custom when a new variant is risky and you want most people on Control, or when you are ramping a known champion.
  • Percents must sum to 100. Leftover or overlapping ranges mean some visitors cannot be assigned cleanly.
  • Changing the split mid-flight affects new assignments only. Already-sticky visitors keep their prior variation, so the live mix will not match the new percents immediately.
  • Traffic split is not Audience and is not the report’s Traffic source filter. Split decides which variation an eligible visitor gets. Audience decides who is eligible. Traffic source on Report only slices analytics after the fact.

If you change percentages on a Running campaign, document it. Returning visitors stay in old buckets, so comparing “before vs after the change” on the same report can mix two assignment policies.

Related reading