Skip to main content

Take control of your release cycles with Staged Rollouts


Releasing new versions of your software can be nerve wrecking. Doubly so when the update contains new features or a large number of changes for your users. Of course, you always strive to release successful updates, and to help improve your release cycle process, you can use a system called Staged Rollouts.

What is a staged rollout?

A Staged Rollout is a method of releasing updates to your software to only a defined percentage of users, as opposed to releasing the update to all of your users at the same time. Instead of an “everyone or no one” approach, you can gradually distribute your latest update to some of your users. For example, when first released you may choose to only show the update to 10% of users, and over the course of a few days.

Used by numerous software companies world wide, you may have been part of a staged rollout without even knowing it. Common real world examples are mobile phone app releases as well as sites like Netflix and Uber.

The benefits of using staged rollouts.

A staged rollout can serve many purposes depending on the type of software you build. By using a staged rollout, you can take the time to analyze the real world performance impacts of your update, identify any unforeseen bugs, and verify the releases stability prior to giving to all of your users.

As always, we know that you take every precaution to release stable and bug free software to your users, but we live in the real world, where there are some things we just cannot account for. Conflicts with other software, server configurations, and user behavior are all things that organically become apparent as you release an update.

With a Staged Rollout, you can slow down the exposure of your changes to users by only releasing to a specified percentage of them, in order to impact as few people as possible. A bug is much better controlled when only 10% of your users experience it than 100%. If you’ve created a new user interface, getting it in the hands of 25% of users before making it widely available, gives you the time to take feedback from real world users, and release follow up improvements based on this feedback.

How to use staged rollouts with Software Licensing

The Software Licensing extension for Easy Digital Downloads allows you to quickly and easily configure a staged rollout for your releases. When editing your licensed product, you have the ability to do the following:

  • Enable staged rollouts.
  • Define the percentage of sites that get the update.
  • Release the update to sites based on the current installed version.

Staged rollouts is available to all users of our Software Licensing extension who are on version 3.8 or greater. Thanks to the work by Thomas Maier and the team at WP AdvancedAds for inspiring this feature and writing the first proof of concept, which allowed us to quickly integrate this directly into Software Licensing for all users.

Chris Klosowski

About Chris Klosowski

Chris Klosowski is the Director of Technology and a Partner at Sandhills Development.

@cklosowski

2 comments

  1. Chris Klosowski

    Hi Chris,

    A great feature, until now we did this by not changing the version number, which effectively made it available to new customers only. This makes it much more flexible.

    Some questions spring to mind: if I first set it to 10%, is there a way to know when that 10% has been reached?

    And if I push it to 60%, will the system keep counting from overall users, or will it restart the count, taking 60% of the remaining 90%?

    1. Chris Klosowski

      Hey Rogier.

      Right now we don’t have a way to let you know that the stage has been completed, however I’ll log that as a feature request so our team can look into it.

      If you increase from 10% to 60%, the system will keep counting from overall users, it will not reset the count.

Leave a Reply

Your email address will not be published. Required fields are marked *