---
title: Release templates
---

:::note Availability

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

:::

<details>
  <summary>Participate in the beta program</summary>

  Release templates are currently in beta. If you're interesting in trying the feature out, please contact us at beta@getunleash.io.

  Future iterations of the feature may include:
    - An overview of ongoing releases and currently running milestones across all projects
    - Automated transitions between different milestones
    - Reporting on release templates
</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](/reference/activation-strategies) 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](/reference/activation-strategies), 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

> Note: For this action, you must be an Editor or have a custom root role with [release templates permissions](/reference/rbac#release-template-permissions).

To create a release template, do the following:

1. In the Admin UI, go to **Configure > Release templates**, 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 [strategy](/reference/activation-strategies).
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 strategies and their 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:
1. Create Milestone 1 with a strategy to target the 50% of _Basic_ plan users.
2. Create Milestone 2 and keep the '50% _Basic_ plan' strategy. Add a new strategy to target 25% _Premium_ plan users.

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 **Use template** 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.
