---
title: Release management
---

:::note Availability

**Plan**: [Enterprise](https://www.getunleash.io/pricing) cloud-hosted | **Version**: `6.8+` in [BETA](/availability#beta-features).

:::

<details>
  <summary>Share your feedback</summary>

  We're currently gathering feedback for release templates and release plans.
  
  To provide feedback using the Admin UI, go to **Configure > Release management**, and click **Share your feedback**.

  Future iterations of the feature may include:
    - An overview of ongoing releases and currently running milestones
    - Automated transitions between different milestones
</details>


## Overview

[Release templates](#release-template) help you standardize your approach to rolling out new features. By predefining a set of release milestones, you can ensure consistency across all your feature rollouts.

Instead of manually configuring the same [activation strategies](/activation-strategies#rollout-percentage) across different feature flags, you can define release templates once, and apply them to any feature flag to initiate a rollout.

[Milestones](#milestone) rely on activation strategies to give you full flexibility when it comes to customizing your release templates. Each milestone executes sequentially, ensuring a structured release process.

For example, you might define 3 milestones for a release:
- **Milestone 1**: Enable the feature for internal teams to test functionality and resolve initial issues.
- **Milestone 2**: Expand the rollout to 20% of beta users to gather feedback and monitor performance.
- **Milestone 3**: Release the feature to all users after confirming stability and addressing earlier feedback.

#### Release template

A predefined sequence of [milestones](#milestone) that structures a feature release.

#### Milestone
Sequential stages within a [release template](#release-template). Each milestone must contain at least one [activation strategy](/activation-strategies#rollout-percentage), which determines when a feature flag is enabled.
You can combine multiple activation strategies in a single milestone. Unleash evaluates each strategy independently, enabling the flag if any strategy resolves to true.

#### Release plan

An instance of a [release template](#release-template) applied to a specific feature flag in a specific environment. You can combine a release plan with additional activation strategies.

## Create a release template

To create a release template, do the following:

1. In the Admin UI, go to **Configure > Release management**, and click **New template**.
2. Enter the template name and an optional description.
3. For the first milestone, click **Add strategy**.
4. Choose a strategy type and configure your [rollout percentage](/activation-strategies#rollout-percentage), [targeting](/activation-strategies#targeting), and [variants](/reference/strategy-variants).
5. Click **Add strategy**.
6. Optional: Add, rename or reorder milestones as needed.
7. Click **Create template**.

## Configure a gradual rollout with release templates

Milestones are designed to be flexible and do not inherit the configurations of previous milestones. To build a gradual rollout where each milestone expands on the previous one, you must manually configure the progression of the constraints.

For example, suppose you want to structure your rollout as follows:
- **Milestone 1**: Enable the feature for 50% of users on the *Basic* plan.
- **Milestone 2**: Keep the same 50% of *Basic* users from Milestone 1 and add 25% of *Premium* users.

To achieve this, you need to configure Milestone 2 with both constraints:
- A 50% *Basic* users constraint.
- A 25% *Premium* users constraint.

The configuration would look something like this:

![Example of progressive milestones](/img/progressive-milestones.png)

## Apply a release template to a feature flag

To apply a release template to a feature flag, do the following:

1. In the Admin UI, open a feature flag and select your target environment.
2. Click **More strategies** (triple-dot icon) and select one of the available release templates.
3. Click **Add release plan**.

If the environment is enabled, the first milestone starts automatically.

## Perform a release using a release plan

Release plans apply per feature and environment. To add a release plan, [apply a release template](#apply-a-release-template-to-a-feature-flag).

### Start the release
If the environment is enabled, the first milestone begins automatically upon adding the release plan. Otherwise, enable the environment to start the first milestone.

### Pause the release
Pause the release at any time by disabling the environment for the feature flag.

### Progress to the next milestone
To progress to the next milestone, click **Start** on the milestone you want to run.

### Revert to a previous milestone

To return to a previous stage of the rollout, click **Restart** on the milestone you want to revert to.
