This article covers the theory behind mutually exclusive groups. To set one up, refer to:
What’s a mutually exclusive group?
A mutually exclusive group lets you create groups of campaigns or experiments where only one member of the group targets each visitor. Grouping campaigns or experiments this way is helpful whenever multiple tests could otherwise conflict with each other, for example when several teams run experiments on the same page. MEGs work the same way for web experiments and feature experiments: the technology triggering each experiment differs, but the grouping and bucketing logic behind a MEG doesn’t.When Kameleoon assigns a visitor to a group
Kameleoon assigns a visitor to a mutually exclusive group before any other experiment targeting or bucketing decision. This assignment happens at the start of the visit, so the visitor’s group membership is already fixed by the time Kameleoon evaluates targeting conditions or allocates traffic for the individual campaigns or experiments in that group. To maintain a consistent experience, if a visitor was previously assigned to a campaign or experiment within a group, they remain assigned to it for the rest of the visit. Otherwise, Kameleoon randomly chooses the campaign or experiment to display within the group, ensuring an even distribution among the group’s members.Benefits
A mutually exclusive group prevents overlapping campaigns or experiments from interfering with each other:- Clearer results: Avoids conflicting data by ensuring visitors see only one campaign or experiment within each group.
- Better visitor experience: Reduces visitor fatigue from multiple simultaneous changes, creating a smoother experience.
- Simpler setup for feature experiments: Enforcing mutual exclusivity through a MEG doesn’t require additional targeting conditions, so it’s easier to implement across feature flags containing experiment rules.
Drawbacks
A mutually exclusive group carries a significant drawback: you can’t measure the combined performance of visitors exposed to the experiments within it. For example, if you run three experiments in a mutually exclusive group, identify a winning variation for each one, and later ship all three winning variations at the same time, the original experiments don’t tell you how those winners perform together. Interaction effects between them, positive or negative, are never measured. Because of this, running experiments concurrently without measuring their combined effect carries the risk of shipping changes that interact poorly together, even though each change looked like a win in isolation. For more on this risk, see Ronny Kohavi’s discussion of running concurrent A/B tests. Weigh this tradeoff before grouping campaigns or experiments that you might later want to ship together and evaluate as a combination.Example of a mutually exclusive group
Imagine you have two groups of campaigns targeting your website’s homepage:- Group A: Campaign 1 (new homepage layout) and Campaign 2 (highlighted “Buy now” button)
- Group B: Campaign 3 (simplified navigation) and Campaign 4 (updated product descriptions)
- A visitor sees either Campaign 1 or Campaign 2 from Group A, but not both.
- The same visitor may see either Campaign 3 or Campaign 4 from Group B, but not both.
Cross-group exposure
A mutually exclusive group only prevents overlap within the same group. Kameleoon can expose visitors to one campaign from Group A and one campaign from Group B simultaneously. For example, a visitor could experience any of these combinations:- Campaign 1 (from Group A) and Campaign 3 (from Group B)
- Campaign 1 (from Group A) and Campaign 4 (from Group B)
- Campaign 2 (from Group A) and Campaign 3 (from Group B)
- Campaign 2 (from Group A) and Campaign 4 (from Group B)
How exposure percentages interact with a MEG
Exposure percentages set on individual campaigns or experiments aren’t applied independently to each one’s full traffic when they belong to the same mutually exclusive group. The MEG first decides which single campaign or experiment a visitor is eligible for within the group, and that campaign’s or experiment’s own exposure percentage is then applied on top of that allocation. Each campaign or experiment in a MEG receives roughly an equal share of the eligible group population, for example one third if the group contains three members, regardless of the individual exposure settings.Example
Imagine three campaigns in the same MEG, each running on a different page that receives 200,000 requests:
The result isn’t 20k, 60k, and 120k. That outcome would assume each campaign receives all of its page traffic before Kameleoon applies the exposure percentage, which isn’t how a MEG works.
Because a MEG splits eligible traffic across the group before Kameleoon applies exposure, MEGs suit campaigns or experiments that can overlap and that you want to make mutually exclusive, typically campaigns running on the same page or surface.
Simulation mode turns off mutually exclusive groups.