
Overview
Real-time testing distributes traffic across content variants and automatically optimises allocation over time. It uses a multi-armed bandit (MAB) algorithm that balances exploration (testing underexposed variants) with exploitation (sending traffic to higher performers). Unlike a static Split, real-time testing does not require a fixed split ratio. The system continuously adjusts the distribution based on observed performance.Configuration
The only configurable setting is the number of variants — select between 2 and 10. Each variant creates a separate branch in the Workflow. The node has no other configuration parameters; the optimisation logic is fully automated.How the Algorithm Works
- Initialisation — Traffic is distributed evenly across all variants.
- Data collection — The system tracks user interactions (clicks, conversions) per variant.
- Rebalancing — The MAB algorithm incrementally shifts traffic toward higher-performing variants while keeping a portion of traffic on underexposed variants to detect changes.
- Convergence — Over time, the best-performing variant receives the majority of traffic.
Deterministic User Assignment
Users are assigned to variants deterministically based on their identifier. The same user sees the same variant across repeated interactions within a single Workflow. This is handled identically to Split node user assignment.When to Use RTT vs Split
| Scenario | Recommended Node |
|---|---|
| Fixed A/B test with known split ratios | Split |
| Automatic optimisation toward the best variant | Real-time testing |
| Quick test with 2 variants | Either |
| 5+ variants with limited traffic | Real-time testing (faster convergence than equal split) |
Best Practices
- Start with 2–3 variants for faster convergence. More variants require proportionally more traffic.
- Monitor the distribution in the Workflow’s statistics mode to observe how the algorithm is allocating traffic.
- Use branch categories to tag RTT branches for downstream Analytics reporting.
- Do not combine multiple RTT nodes in the same branch. Use a single RTT node per decision point.