This article covers the following: |
Overview
VWO’s Feature Experimentation offers advanced segmentation controls, enabling you to define audiences based on user attributes before an experiment begins (pre-segmentation) and further analyze results by filtering reports (post-segmentation).
This article outlines how to leverage both, standard and custom segments to achieve more granular control over your feature experiments.
Initial Steps (for All Procedures)
- Log in to your VWO account.
- From the main panel on the left, go to Feature Experimentation > Feature Flags. Select the feature flag you want to work with. Alternatively, you can create a new feature flag.
- Navigate to the Rules tab and select the rule you want to work with.
Define Target Audiences (Pre-segmentation)
You can apply pre-segmentation to all rule types, including Rollouts, Testing, and Personalize.
Using Standard Segments
The steps below demonstrate how to configure pre-segmentation using standard segments in an existing A/B Testing rule.
- Complete the Initial Steps before proceeding.
- Click
on the right, and select Modify rule.
- In the Audience section, click
and select Standard Segments. Alternatively, select My Segments to use a previously saved segment.
-
Select the segment All Traffic.
Note: For pre-segmentation, VWO supports only the standard All Traffic segment. - Click Save to apply the segment. Your A/B test will now target all visitors.
Using Custom Segments
You can configure pre-segmentation with custom segments using VWO’s built-in custom attributes or additional attributes defined through custom variables.
Prerequisites
-
To set up pre-segmentation using custom variables, you must pass the custom variable values within the user context of your application code. This allows the VWO SDK to identify users who are eligible for the specific feature or test variation.
For example, to pass an attribute for a user with variable age, you must define the user context as:
// Define the user context object to identify and provide user-specific details
VWOContext userContext = new VWOContext();
// Set User ID - mandatory
userContext.setId("user-id");
// Set IP Address
userContext.setIpAddress("1.1.1.1");
// Set User Agent
userContext.setUserAgent("visitor_user_agent");
// Set Custom Variables
Map<String, ?> customVariables = new HashMap<String, Object>() {
{
put("age", 25);
}
};
userContext.setCustomVariables(customVariables);
For more information on how to define the user context, refer to the implementation steps for the following supported SDKs: Node.js, Java, PHP, Python, .NET, Ruby, Android, iOS, React Native, Flutter, and React.js.
- For server-side SDKs, integrating the VWO gateway service is mandatory to use certain attributes for pre-segmentation. Once enabled, the gateway auto-infers information such as browser, OS, device type, and location from the visitor’s user agent and IP address, which you can then use for segmentation. For more information, see VWO’s Feature Experimentation Gateway Service.
The steps below demonstrate how to configure pre-segmentation using custom segments in an existing A/B Testing rule.
- Complete the Initial Steps before proceeding.
- Click
on the right, and select Modify rule.
- In the Audience section, click
and select Custom Segment.
-
From the dropdown list, select a built-in attribute or select Custom Variable.
-
If you selected a built-in attribute, choose an operator and enter the value. For example, to target users on app version 2.1.0 or higher, select App Version, set the operator to is greater than or equal to, and enter 2.1.0 as the value.
-
If you selected a custom variable, enter the name of your custom variable, choose an operator, and specify the value.
For example, to show an experience only to users who log in via SSO from your company domain, create a custom segment using custom variables, such as email and SSO, select the operator (for example, contains, or is equal to), and enter the value you want to target (for example, vwo for email, true for SSO).
-
If you selected a built-in attribute, choose an operator and enter the value. For example, to target users on app version 2.1.0 or higher, select App Version, set the operator to is greater than or equal to, and enter 2.1.0 as the value.
- Click Save to apply the condition. Your A/B test will now target only those users who meet these criteria.
Analyze Experiment Results by Segments (Post-segmentation)
Post-segmentation allows you to filter and analyze experiment reports based on attributes after a campaign has run. This helps you gain deeper insights by understanding how specific user segments interacted with your feature.
Using Standard Segments
The steps below demonstrate how to configure post-segmentation using standard segments in an existing A/B Testing rule.
- Complete the Initial Steps before proceeding.
- Click View Report.
- Suppose you want to analyze how a new feature is performing only for visitors who arrive on the test page from desktop devices. On the report header, click All Visitors and select Standard Segment.
-
In the segment editor, select the built-in attribute Device Type from the dropdown list, and then select Desktop Traffic.
Note: For post-segmentation, VWO supports only the standard Device Type and Operating System segments. - Click Filter.
The report displays data based on the selected filters.
Using Custom Segments
For post-segmentation with custom segments, you can filter reports using:
- Built-in attributes provided by VWO (for example, Operating System, Browser).
- Custom attributes that you define within the VWO app. For more information, see Working with Attributes in VWO.
- Custom attributes that you defined and passed during pre-segmentation (for example, planType, paymentMethod).
Prerequisites
- To use custom attributes that you defined and passed during pre-segmentation, you must register them within the VWO platform. For more information, see How to Register Custom Attributes for Post-Segmentation?
- Pass the custom attributes using a specific function from your code. For more information, see How to Pass Custom Attributes for Post-Segmentation?
How to Register Custom Atrributes for Post-segmentation?
VWO recommends registering your custom attributes promptly. As soon as you start sending new custom attributes to VWO, register them. This ensures they are available for analysis as soon as your reports are populated.
After passing the custom variables from your code, they appear as unregistered attributes in the VWO platform under Data 360 > Attributes > Unregistered Attributes section.
To register them:
- Log in to your VWO account.
- From the left panel on the dashboard, go to Data360 > Attributes > Unregistered Attributes.
- Click on the unregistered attribute (for example, userType).
- On the attribute details page, click on Register Attribute.
- Provide a Type and an optional Data Rule.
- Click Create to complete the registration.
How to Pass Custom Attributes for Post-segmentation
To ensure your (registered) custom attributes are available for filtering in reports, you must pass them using a specific function for post-segmentation.
Method to Call:
userContext.postSegmentationVariables(List.of(Pair("planType", "premium"), Pair("paymentMethod", "CreditCard")));
This function allows you to pass multiple attributes whose values you want to see in the post-segmentation reports. Variables used only for pre-segmentation, do not need to be passed here unless you also want them to appear in the reports.
The steps below demonstrate how to configure post-segmentation using custom segments in an existing A/B Testing rule.
- Complete the Initial Steps before proceeding.
- Click View Report.
- On the report header, click All Visitors and select Custom Segment.
-
In the segment editor, select the built-in or custom attribute from the dropdown list.
-
If you selected a built-in attribute, choose an operator and enter the value.
For example, to target users on app version 2.1.0 or higher, select App Version, set the operator to is greater than or equal to, and enter 2.1.0 as the value. -
If you selected a custom variable, enter the name of your custom variable, choose an operator, and specify the value.
For example, to evaluate how a new feature performed for premium users paying via credit card, apply a custom segment in your report using variables such as planType and paymentMethod. Select the operator (for example, is equal to) and enter the values you want to filter by (for example, Premium for planType, CreditCard for paymentMethod).Note: If a custom attribute is not registered in VWO, it will not appear in the dropdown list.
-
If you selected a built-in attribute, choose an operator and enter the value.
- Click Filter.
The report is updated to show the data only for the specified user segment.
Troubleshooting
Issue |
Solution |
Custom attribute not appearing in the report filters. | Make sure you have registered the attribute. Unregistered attributes will not be available for post-segmentation. |
Data is not getting populated for a built-in attribute. | Verify that your VWO SDK is correctly integrated and that the attribute data is being captured. For mobile-specific attributes like App Version, ensure you are using the correct mobile SDK. |
Segmentation condition not working as expected. | Double-check the logic of your segmentation rule. Pay close attention to the operators (for example, is equal to, contains) and the values you have entered. |
FAQs
-
Do I need to update my SDK to use these features?
Yes, to use all the latest features (including auto-inferring capabilities), ensure you use the latest SDK version for the best performance and feature support. For more information about the change history in all SDKs, see History of changes that went live in different SDKs.
-
Can I use these attributes for feature rollouts as well?
Yes, all these segmentation capabilities are available for both feature experiments and feature rollouts.
-
Is there a limit to the number of custom attributes I can register?
For information on limits related to custom attributes, please refer to the VWO pricing and packaging documentation or contact VWO Support.
Need more help?
For further assistance or more information, contact VWO Support.