Phased rollout

A phased rollout releases a new version or feature to users in stages instead of all at once, widening by percentage of users, by region or by cohort as each stage proves healthy. It is also called a staged rollout. A problem found at an early stage reaches only the users already included.

The longer version

The stages are chosen by what the team wants to learn. A percentage ladder, such as a small share, then a larger one, then everyone, spreads load and risk evenly. A regional rollout isolates a language, a currency or a data centre. A cohort rollout goes from internal staff to customers who volunteered for early access, then to the rest, so the people most tolerant of rough edges see the change first. Each stage has a hold period and a stated condition for moving on, such as no rise in errors and no cluster of new bug reports.

The first stage is usually a canary: a very small group watched closely against the current version. What the phased rollout adds is the schedule after it, and the discipline of not skipping a stage because the last one looked fine. A feature flag gives the control, since the share can be raised or cut by changing a value instead of redeploying, and a dark launch can come before the whole sequence to check the code under load.

Mobile app stores have the idea built in. Google Play offers staged rollouts by percentage and Apple's App Store offers a phased release for automatic updates, because an app version cannot be recalled once installed and a bad build is expensive. The cost of any phased release is that several versions are live together, so support has to ask which one a reporter was on, and a bug report is only useful if it says.

Common questions

What is a phased rollout?

A phased rollout is a release strategy in which a change reaches users in stages, such as 5 percent, then 25 percent, then everyone, rather than all at once. Each stage is checked before the next begins, so a defect is caught while only part of the user base is affected.

Are phased rollout and staged rollout the same thing?

The two terms mean the same thing. Phased rollout and staged rollout both describe releasing in steps, and the choice of word varies by team and by platform. Google Play, for example, calls its feature a staged rollout, while Apple's equivalent for automatic updates is named a phased release.

How do you decide when to move to the next stage?

Agree the criteria before the release starts. Typical conditions are error rate and latency within an agreed range of the current version, no new defect cluster in support or bug reports, and a minimum time at the current stage. If a condition fails, the team pauses or rolls back.

Can a phased rollout be rolled back?

A phased rollout can be paused or reversed when the change is controlled by a flag or a router, since lowering the share returns users to the old version without a deploy. App store releases are harder, because an installed version stays on the device until the user updates, so a fixed build has to follow.

How is a phased rollout different from a big-bang release?

A big-bang release sends the change to everyone at the same moment, so every defect lands on every user and the only remedy is a rollback. A phased rollout limits exposure at each step and gives the team time to react, at the cost of running two or more versions side by side for a while.

Bug reports that arrive ready to triage.

Collect replay, console, network and browser context with the Free plan.

<script src="…/widget.js" data-key="pb_pub_…">