A/B Testing
Run experiments to optimize your server. A/B testing lets you show different experiences to different players and measure which performs better.
Test different spawn points, welcome messages, game mechanics, or any other feature. Analyse automatically splits players into groups and tracks conversion metrics so you can make data-driven decisions.
Setup
Step 1: Create an Experiment
- Go to A/B Tests in your project dashboard
- Click "New Experiment"
- Enter a name (e.g., "Welcome Message Test")
- Add your variants:
- Control: "Welcome to the server!"
- Variant A: "Hey {player}, welcome! Type /help to get started"
- Set traffic allocation (e.g., 50/50 split)
- Click "Create"
Step 2: Integrate with Your Plugin
Use the Analyse API to assign players to variants:
import net.analyse.api.Analyse;// Get the player's assigned variantString variant = Analyse.getVariant(player.getUniqueId(), "welcome-message-test");if ("control".equals(variant)) {player.sendMessage("Welcome to the server!");} else if ("variant-a".equals(variant)) {player.sendMessage("Hey " + player.getName() + ", welcome! Type /help to get started");}
Step 3: Track Conversions
Define what "success" means for your experiment:
// When a player completes the desired actionAnalyse.trackConversion(player.getUniqueId(),player.getName(),"welcome-message-test","completed_tutorial");
How It Works
Player joins server
API assigns player to a variant (deterministic)
Your plugin shows the appropriate experience
Player either converts or doesn't
Analyse tracks results per variant
Dashboard shows which variant wins
Players are consistently assigned — the same player always sees the same variant, even across multiple sessions.
Experiment Dashboard
Each experiment shows:
| Metric | Description |
|---|---|
| Participants | Players in each variant |
| Conversions | Players who completed the goal |
| Conversion Rate | Conversions ÷ Participants |
| Statistical Significance | Confidence the result isn't random |
| Lift | % improvement over control |
Best Practices
- Test one thing at a time — Isolate variables for clear results
- Run until significant — Wait for statistical significance before deciding
- Start with 50/50 splits — Even distribution gives fastest results
- Define clear goals — Know what "success" means before starting