ExperimentationAnalyzing experiments

Filtering experiment results

This topic explains how to use attribute filters to narrow experiment results by attribute.

Attribute filters allow you to analyze your experiment results by certain cross-sections of your experiment audience using context attributes.

For example, if you wanted to view only results from users within Canada, you might narrow your results by users with a “Country” attribute value of Canada.

Add attribute filters

To filter results by attribute, you can add attributes in the “Select metrics” step when you create an experiment. To learn how, read Creating experiments. You can then filter your results by the different values of one of those attributes.

You can also add attributes to an existing experiment from its Results tab. Here’s how:

  1. Navigate to your experiment’s Results tab.
  2. Scroll to the results table and click Add.
  3. Select Attributes. An “Add attributes” dialog appears, listing eligible and ineligible attributes.

The add attribute option on a running experiment.

The add attribute option on a running experiment.
  1. Select any eligible attributes you want to view.
  2. Click Add attributes.

You can now filter your experiment results by these attributes.

Attribute value update timing

After you add attributes to an existing experiment, the time it takes for LaunchDarkly to update the attribute values depends on the metric type and age of the experiment iteration:

Metric typeIteration ageTime to update
LaunchDarkly hostedLess than one dayApproximately five minutes
LaunchDarkly hosted1-60 daysApproximately one hour
LaunchDarkly hostedMore than 60 daysApproximately one day
Warehouse nativeAnyAfter sync with external warehouse, usually 1-2 hours

Attribute eligibility

Which attributes you can filter by depends on whether your experiment uses LaunchDarkly hosted metrics or warehouse native metrics.

LaunchDarkly hosted experiments

For experiments that use LaunchDarkly hosted metrics, the “Add attributes” dialog lists each attribute as eligible or ineligible based on how often LaunchDarkly observes it in your experiment audience. An attribute is eligible when its most common value:

  • appears for at least 50 contexts in the experiment, and
  • accounts for at least 5% of the experiment audience.

Attributes below these thresholds are ineligible. This prevents filtering by segments that are too small to produce meaningful results, and keeps result calculations fast for large experiments.

If your experiment is new or has low traffic, the dialog may display “No attributes available yet.” Attributes become eligible as your experiment collects more exposures. There is no fixed number of total exposures that makes an attribute eligible, because eligibility depends on how the attribute’s values are distributed across your audience. For example, an experiment can have many thousands of exposures while every individual value of an attribute still falls below the 5% threshold.

Warehouse native experiments

Warehouse native experiments do not have an eligibility requirement. You can add any attribute from your context data, either when you create the experiment or while it is running. If an attribute has no data yet, its results display as empty until your warehouse records values for it.

Attribute value limits

For each attribute in a warehouse native experiment, LaunchDarkly displays results for up to the 20 most frequent values, ranked by the number of contexts with each value. All remaining values are combined into a single “(other)” group. If an attribute has 20 or fewer values, LaunchDarkly displays all of them and no “(other)” group appears.

Limiting the number of values keeps results readable for attributes with many distinct values, reduces the risk of false positives from comparing many small segments, and bounds the size of the queries LaunchDarkly runs in your warehouse.

How LaunchDarkly calculates results for the “(other)” group depends on the metric type:

Metric type”(other)” group behavior
Mean and ratio metricsLaunchDarkly aggregates all remaining values into the “(other)” group exactly. The result is identical to computing the metric directly over those contexts. The values you see always add up to your experiment totals.
Percentile metricsLaunchDarkly displays results for the top 20 values only. Percentiles cannot be combined across values after they are calculated. Results for the “(other)” group display as not available.

LaunchDarkly recalculates the top 20 values on every sync with your warehouse, over the full duration of the experiment iteration. If your data changes and a different value enters the top 20, the displayed values update on the next sync.

View filtered results

To filter experiment results by attribute:

  1. Navigate to your experiment’s Results tab.
  2. Above the results table, click All attributes. A menu of attributes appears.
  3. Hover over an attribute from the menu. A list of attribute values appears.
  4. Check the box next to any attribute value you want to narrow your results by.

The graph updates to display results from only contexts with the attribute value you selected:

Experiment results filtered by attribute.

Experiment results filtered by attribute.
You cannot filter results for anonymous contexts or private attributes

Private attributes and contexts with the anonymous property set to true are not available for data filtering. Private attributes and anonymous context attributes do not appear in the “Attribute filters” menus.

Configure your SDK: Context configuration