Skip to content

Configure Mutual Exclusion

⏱ 15 minutes advanced

When two experiments modify the same page or feature, a visitor could end up in both simultaneously. If the checkout experiment changes the CTA button and the pricing experiment changes the price display, their effects intertwine. You cannot isolate which experiment caused the observed behavior. Mutual exclusion solves this by partitioning traffic so each visitor enters at most one experiment in the group.

A mutual exclusion group divides 100% of traffic into non-overlapping slices. Each experiment in the group receives its own slice. A visitor is bucketed into the slice first, then into the experiment’s variation within that slice.

Example: A group with three experiments, each allocated 30% of traffic:

  • Visitors in the 0–30% slice see Experiment A
  • Visitors in the 30–60% slice see Experiment B
  • Visitors in the 60–90% slice see Experiment C
  • Visitors in the 90–100% slice see none of the experiments

The remaining 10% acts as a holdout — useful for measuring the combined effect of all three experiments.

ScenarioUse mutual exclusion?
Two experiments on the same page elementYes — Direct conflict
Two experiments on different pagesNo — No interaction risk
A checkout experiment and a homepage experimentMaybe — Only if you suspect cross-page influence
Experiments targeting different audience segmentsNo — Natural separation already exists

Create a mutual exclusion group (Web Experimentation)

Section titled “Create a mutual exclusion group (Web Experimentation)”
  1. Navigate to Experiments > Exclusion Groups in the left sidebar
  2. Click Create Exclusion Group
  3. Name the group (e.g., “Checkout page experiments Q2 2026”)
  4. Click Add Experiment and select experiments to include
  5. Allocate traffic percentages to each experiment — the total must not exceed 100%
  6. Click Save

You can change allocations after creation without resetting the experiment:

  1. Open the exclusion group
  2. Drag the allocation sliders or type exact percentages
  3. Click Save — changes take effect within minutes

Important: Reducing an experiment’s allocation removes visitors from the experiment. Those visitors will not re-enter even if you increase the allocation later, because Optimizely preserves bucketing consistency.

Create a mutual exclusion group (Feature Experimentation)

Section titled “Create a mutual exclusion group (Feature Experimentation)”
  1. Navigate to Experiments > Exclusion Groups
  2. Click Create Group
  3. Name the group
  4. Add experiments by selecting them from the dropdown
  5. Set the traffic allocation for each experiment
  6. Click Save

For Feature Experimentation, mutual exclusion applies to the SDK-level bucketing. The SDK reads the group configuration from the datafile and partitions the user’s murmurhash into the correct slice.

Allocating traffic across a group requires balancing speed (more traffic per experiment) against breadth (more experiments running concurrently).

ApproachTrade-off
Equal split (e.g., 33/33/33)Fair but slower per experiment
Weighted split (e.g., 50/30/20)Prioritizes the highest-impact experiment
With holdout (e.g., 40/40/20 holdout)Measures the combined effect but reduces experiment traffic

Tip: If your site has 100,000 weekly visitors and you allocate 25% to an experiment, that experiment receives roughly 25,000 visitors per week. Check that this volume reaches significance within your desired timeframe.

  1. Open the exclusion group
  2. Click Add Experiment
  3. Reduce existing allocations to free up traffic for the new experiment
  4. Assign traffic to the new experiment
  5. Save
  1. Open the exclusion group
  2. Click the remove icon next to the experiment
  3. Optionally redistribute the freed traffic to remaining experiments
  4. Save

The removed experiment becomes a standalone experiment. If it is still running, it will now receive traffic independently and may overlap with remaining group experiments.

When all experiments in the group are complete:

  1. Archive completed experiments individually
  2. Delete the exclusion group — this has no effect on archived experiment data
IssueCauseFix
Experiment getting less traffic than expectedExclusion group allocation limits total visitorsIncrease the experiment’s slice in the group
Visitor in two experiments from the same groupRare bucketing edge case during config propagationWait 5 minutes after saving and verify with preview
Cannot add experiment to groupExperiment is already in another exclusion groupRemove it from the other group first — an experiment can belong to only one group
Results show unexpected interactionsExperiments not in the same group but on overlapping pagesAdd both experiments to a mutual exclusion group
  • Plan groups before launching experiments. Adding a running experiment to a group resets its traffic allocation.
  • Keep groups focused. Group experiments that genuinely conflict, not every experiment in the project.
  • Reserve holdout traffic. A 10-20% holdout lets you measure the aggregate impact of all experiments in the group.
  • Document group membership. Maintain a shared record of which experiments belong to which groups so team members do not create conflicting tests.