Creating an Experience¶
An Experience lets you deliver specific feature flag values to a group of users. Use it when you want to roll out a feature to everyone, to a specific audience, or gradually over time.
Before You Begin¶
Make sure you have:
- At least one Feature Flag created (guide here)
- Logged in to FlagPal and navigated to your project
Step 1: Navigate to Experiences¶
Click Experiences in the left sidebar.
Step 2: Click "New Experience"¶
Click the New Experience button in the top right.
Step 3: Fill in the Basic Details¶
Name (required)¶
Give your experience a clear, descriptive name.
Examples:
- "New Homepage for Beta Users"
- "Premium Feature Rollout — Phase 1"
- "Holiday Promo Banner — December 2024"
Description (optional)¶
Describe what this experience does, why it exists, and when it should be active.
Step 4: Configure the Feature Set¶
The Features is where you define what feature flag values users in this Experience will receive.
- Click Add Features in the Feature section
- Select a feature flag from the dropdown
- Set the value for that flag
Example:
| Feature Flag | Value |
|---|---|
show_promo_banner |
true |
homepage_layout |
"festive" |
max_offers_shown |
5 |
You can add multiple feature flags to a single Experience.
Step 5: Set Targeting Rules (Optional but Recommended)¶
Targeting rules determine when this Experience applies. If you skip this step, the Experience applies to all users. It's not recommended to skip this unless you're an advanced user.
Adding a Rule¶
- Click Add Rules in the targeting rules section
- Choose the feature flag to evaluate (e.g.,
country,plan,user_id) - Choose the operator (e.g.,
equals,contains,greater than) - Enter the value to match
Common Rule Examples¶
| Property | Operator | Value | Meaning |
|---|---|---|---|
country |
equals | "DE" |
Only users in Germany |
plan |
equals | "premium" |
Only premium users |
signup_date |
after | "2024-01-01" |
Users who signed up in 2024 |
beta_user |
equals | true |
Only beta users |
Multiple Rules (AND Logic)¶
If you add multiple rules, all rules must match for the Experience to apply to a user. For example:
- Rule 1:
countryequals"GB" - Rule 2:
planequals"premium"
This would only apply to users who are both in the UK and on the premium plan.
It's also a good practice to add rules that check for non-existence of the flags you're setting, to avoid suddenly changing features for users, who already have entered different flows:
- Rule 3:
show_promo_bannerequals(empty) - Rule 4:
homepage_layoutequals(empty) - Rule 5:
max_offers_shownequals(empty)
See Best Practices for more details.
Step 6: Set the Weight (Optional)¶
Weight controls the relative priority when multiple Experiences could apply to the same user. A higher weight means this Experience wins over lower-weight ones.
The default weight of 1 is fine for most cases. Adjust it if you have multiple Experiences targeting the same users and need to control which one takes precedence.
Step 7: Activate the Experience¶
You have two options:
- Save as inactive — create the experience but don't activate it yet. This is useful for preparing an experience in advance.
- Save and activate — activate it immediately so users start receiving it right away.
To toggle the experience on or off later, find it in the Experiences list and click the Active toggle.
Step 8: Verify It's Working¶
After activating, check that users are receiving the expected feature values. You can do this by:
- Asking your developers to check a test user's feature values via the API
- Manually simulating a user's experience in your app
A Complete Example¶
Here's a complete example of creating a "Holiday Banner" experience:
Goal: Show a holiday promotional banner on the homepage during December, but only to users who haven't made a purchase in the last 30 days.
| Setting | Value |
|---|---|
| Name | Holiday Promo Banner — December 2024 |
| Description | Shows a special holiday offer banner on homepage. Target: users who haven't purchased recently. |
| Feature Set | show_promo_banner = true, promo_message = "Holiday Special" |
| Rules | days_since_last_purchase greater than 30, show_promo_banner in [(empty), false], promo_message equals (empty) |
| Weight | 1 |
| Active | Toggle on December 1st |
Managing Your Experiences¶
Deactivating an Experience¶
Click the Active toggle on an Experience to turn it off. Users will immediately stop receiving that Experience's feature values.
Editing an Experience¶
You can edit an Experience at any time — change the feature set values, rules, name, or weight.
Deleting an Experience¶
To delete an Experience, find it in the list and use the delete option. Note that deleting an active Experience will immediately affect users receiving it.
Related Guides¶
- Creating a Feature Flag → — create flags first
- Running an Experiment → — for A/B testing instead