A feature rollout enables you to safely deliver a new feature to your users by controlling who sees it, and when. You can:
- Deploy a feature to a percentage of your traffic.
- Roll the feature back if needed.
- Target your rollout to custom audiences, so that only a subset of users (for example, users in the United States) gets access to the feature.
Rollouts and rollbacks take effect immediately without a new code deploy. All of this functionality is available with zero performance impact via free (see plans for advanced features), easy-to-use, open source SDKs.
Rollouts help you mitigate risk. For example, if you want to be sure that a new feature doesn’t degrade the visitor experience, start by launching the feature to a small percentage of visitors, then increase.
Rollouts also let you launch winning variations that you identify through experimentation. For example, if you find a winning variation when running a feature test, use a feature rollout to gradually expose the winning variation to your visitors in a controlled fashion.
Often, you want to roll out more strategically than to a random percent of your total user base. You can use audiences to do so. For more information, see Target audiences.
Here are some examples of how to use multiple audiences to roll out features:
First you roll out to beta users. Second, you retain the 100% roll out for the beta users and roll out to your lowest value customers. Finally, you roll out the feature for your highest-value customers.
For each environment, you can roll out with different rules for:
- feature configurations
For example, you roll out to “Everyone” in pre-production while targeting only “Internal users” in production.
For each rollout audience, you can set different feature configurations. For example, you roll out a feature flag with a configuration for English for your "USA" audience, and a configuration for Portuguese for your "Brazil" audience. For information about feature variables, see Feature variables.
Bucketing for feature rollouts is:
- deterministic: A user sees the same enabled feature across all devices they use, whether they're on their laptop, phone, or tablet. They are bucketed according to an efficient and deterministic hash based on their user ID.
- not always sticky: You can increase traffic monotonically and retain bucketing. However, if you decrease the traffic exposed to a feature rollout, then increase the traffic again, users previously exposed to the feature might no longer see it.
For more information about how bucketing logic works, see How bucketing works.
To get started rolling out a feature, see Use feature flags.
Updated 3 months ago