Skip to content

Percentage Rollouts

A percentage rollout rule lets you release a flag to a fraction of your users. Instead of turning a flag on for everyone at once, you can start at 10%, verify your system is healthy, then ramp to 50% and finally 100%.

  1. On the Feature detail page, click Add Rule.
  2. Choose Rollout (percentage) as the rule type.
  3. Set the Coverage percentage (e.g. 10).
  4. Set the Hash Attribute — this is the user attribute whose value is hashed to decide bucket assignment (usually id).
  5. Optionally add Targeting Conditions to restrict the rollout to a subset of users.
  6. Click Save Rule.

GrowthBook hashes the user’s hash attribute value (e.g. their id) with the feature key to produce a number between 0 and 1. If that number is below the coverage percentage, the rule matches. Because the hash is deterministic, the same user always lands in the same bucket — raising the coverage from 10% to 50% only adds new users; it never flips existing users.

A typical ramp schedule: start at 10% for 24 hours, watch your error rates and metrics. If healthy, move to 50% for another 24 hours. Then roll out to 100% and remove the flag.

gb.setAttributes({ id: 'user-123' });
if (gb.isOn('new-dashboard')) {
// user-123 is consistently in the 10% bucket
}
gb.setAttributes({ id: 'user-123' });
if (gb.isOn('new-dashboard')) {
  // user is deterministically in or out based on id hash
}
StrategyRiskSpeed
Big Bang ReleaseHighFast
Canary ReleaseMediumMedium
Progressive RolloutLowSlow
Feature FlagVery lowAdjustable as needed
OptionBenefitCost
Slow rollout (staged percentages)Safer, catches problems before they hit many usersTakes longer to reach 100%
Fast rolloutYou see results in hand soonerLarger blast radius if something breaks
  • Rolling out to 100% immediately without going through small percentage stages first
  • Not monitoring metrics during each rollout stage
  • Increasing the percentage too quickly without waiting long enough to see the previous stage’s results

💡 Real-world example

Progressive rollout (e.g. 1% → 5% → 25% → 100%) is a common industry pattern for shipping large features, so a bug’s blast radius is limited before it reaches everyone.

What is the hash attribute used for in a percentage rollout?
What happens to existing users who are already in a rollout when you raise coverage from 10% to 50%?
What is a typical first coverage percentage for a cautious rollout?