Taplytics Distribution Filters
Get advanced filtering control over your experiments
This article shows you how to use Taplytics' powerful user-segmentation controls and allows you to target an experiment to a very specific segment of your users.
If you haven't done so already, take a look at how to set up the different types of Experiments through the Taplytics dashboard.
Introduction
What good is an A/B test if you can't reach the right segment of your users? Taplytics allows you to use all of the information about your user's device, from OS version and device type to app version. We even filter by more advanced information like the device's location, language, and session count.
Sending App User Data
To get the most out of user segmentation, you should send custom "App User" data about your users. Not only will this data help populate your Taplytics "User" page with useful information about your users, but you can also use it to deeply segment your users. Follow the instructions below to set up "User Attributes" for your app.
Segmentation Filters
Use the sidebar on the right to jump to a specific segmentation filter.
Please note that the user must be valid for all segmentation filters to receive the experiment. Applying too many segmentation filters may result in none of your users receiving the experiment.
1. App Version
The app version filter lets you filter your users by the version of your app they are running.
We highly recommend applying an app version filter to all your visual experiments because your visual elements can change from one app version to the next and Taplytics may have difficulty identifying the same element if it has changed position or appearance across app versions. Apply a filter for code experiments that are equal to or greater than the app version that you used to introduce the code block into your app.
2. Platform
This filter sets your experiment to distribute to iOS or Android or other devices.
3. User Email
If you are collecting your user's email address and passing this information to Taplytics. This option can be used as a filter.
4. User ID
Do you create an ID for your users? Whether it's randomly assigned or uses something that the users has inputed - this is a great filter to target only users who have a User ID within your system.
5. iOS / tvOS Version
This filter allows you to distribute an experiment to iOS devices running specific iOS Versions. You can also use the operator field to filter devices with greater than or less than a specified iOS Version.
6. Android Version
The Android version filter allows you to distribute your experiment to Android devices running specific Android versions.
7. Custom User Data
These filters are powered by the custom data that your app passes into the Taplytics iOS or Android SDKs. We allow you to select any key value you pass in. Taplytics currently supports any string, number, or boolean value. The auto-fill dropdown helps you select data that you have sent to Taplytics.
To populate the dashboard with new custom user attributes, there are certain conditions that must be met.
You may use any of the following methods:
- 100 events with the same Custom User Attribute key and value must appear in our DBs if it’s been set on Production devices
- 1 event with the Custom User Attribute key and value must appear in our DBs if you’re setting it via a Development builds (
liveUpdate: true
)
In addition, it may take up to 30 minutes for the new attributes to appear on the dashboard.
8. Is New User
This filter targets users who are brand new to your app and have never been seen my the Taplytics SDK. It is important to note that this filter applies to only the very first session the user has. Once they have had a session, they are no longer a "New User" to the Taplytics SDK since they would have been assigned a TL ID and will no longer be a part of the experiment.
This filter is useful for onboarding experiments where you want to ensure that on a user's first session within your app they see a specific experience but not ever again.
9. Is New User After Start Date
This segmentation filter is meant for users who have come to your app for the first time since the experiment has started. This filter will ensure that users are in the experiment even after their very first session.
10. Session Count
This filter segments users by the number of sessions they've accumulated. A session is defined as a period of sustained activity on your App or Website that typically starts when you launch your App or Website and ends after a period of inactivity, after clearing cookies, or forcefully closed. You can use this filter to test changes with your most active users.
11. Days Since Last Session
This filter distributes your experiment based on when each user last opened your app. For example, this filter lets you distribute your experiment to users who haven't opened your app in the last day.
12. Days Since Signup
This filter distributes your experiment based on when each user signed up. For example, this allows you to distribute an experiment to users who signed up in the last week.
13. iOS / tvOS Device Type
The iOS device types filter allows you to choose multiple iOS devices to distribute an experiment too. This filter is useful for making UI changes for specific device types like the iPhone 6+.
14. City
This filter uses the IP address to identify the user's city as a segmentation filter.
Note that Taplytics uses https://github.com/apilayer/freegeoip/ (https://ipstack.com/) to track user IP location.
15. Region
This filter determines the city/province the user is in through their IP address.
Note that Taplytics uses https://github.com/apilayer/freegeoip/ (https://ipstack.com/) to track user IP location.
16. Country
This filter distributes your experiment to users in the specified country. Taplytics uses IP location to determine the user's location. As a backup, we also use the country specified by the user's device.
Note that Taplytics uses https://github.com/apilayer/freegeoip/ (https://ipstack.com/) to track user IP location.
17. Age
This filter distributes your experiment to users within a defined age range. Make sure you are sending in the age parameter to the Taplytics User Attributes in the SDK, or else none of your users may get this experiment.
18. Gender
This filter distributes your experiment to users of the specified gender. Make sure that you are sending the gender attribute to the Taplytics User Attributes in the SDK or your users may not receive the experiment.
19. App Language
This filter distributes your experiment to users who view your app in the selected language. The app language may be different than the device language because your app may not support a user's preferred language and will default to another language, like English.
20. Screen DPI
This filter distributes your experiments to users with devices that have the specified pixel density.
21. App Build Number
Taplytics automatically tracks the build number installed on the user's device - use this filter to distribute your experiments to users with specific app builds. The app build number is pulled as such:
iOS: the "Build" number under your project settings
Android: the "versionCode" in your app's build.gradle defaultConfig block
defaultConfig {
applicationId "com.example.taplytics.app"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
22. Mobile Carrier
Taplytics automatically detects the user's mobile carrier - use this distribution filter to include or exclude specific carriers from your experiment.
23. App Identifier
This filter is used to distribute your experiments to users who have installed an app with a specific bundle identifier. The app identifier is pulled as such:
iOS: the "Bundle Identifier" number under your project settings
Android: the "applicationID" in your app's build.gradle defaultConfig block
defaultConfig {
applicationId "com.example.taplytics.app"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Updated over 2 years ago