Skip to main content

Release management overview

Release management in Unleash helps you standardize, automate and safeguard your feature rollouts. Instead of manually controlling each stage of a release, you can define a reusable, structured rollout process that progresses automatically while monitoring application health to prevent issues from affecting users.

Release management combines:

Release management structures your rollout process around milestones that execute sequentially. Each milestone defines what portion of users receives the feature using activation strategies. You control progression between milestones through manual triggers, time-based automation, or metric-based conditions.

For a step-by-step walkthrough, see Get started with release management.

YouTube video player 1 thumbnail
Click to load video

Core concepts and relationships

The following concepts work together to enable release management:

ConceptDescriptionRelated concepts
Release templateA predefined sequence of milestonesContains milestones
MilestoneA stage in a release with activation strategiesPart of release templates
Release planAn instance of a release template applied to a feature flagCreated from release templates
Impact metricApplication-level time-series dataUsed by safeguards
Automated release progressionTime-based milestone advancementConfigured per milestone
SafeguardMetric-based condition that pauses releasesUses impact metrics

How release management works

Release templates and milestones

Release templates standardize your rollout approach across features. Each template contains a sequence of milestones that represent stages in your release process, such as:

  • Internal testing with your team
  • Beta rollout to 10% of users
  • Expanded rollout to 50% of users
  • Full release to all users

Illustration showing a release template is made up of milestones

Each milestone contains at least one activation strategy that determines for whom the feature flag is enabled. You define the template once and apply it to multiple feature flags, ensuring consistency across your releases.

Illustration showing a release template can be applied to a feature flag

When you apply a release template to a feature flag in a specific environment, Unleash creates a release plan. The release plan contains the milestones from the template and manages the progression through each stage.

Illustration showing a release template applied to a feature flag in an environment

Automated progressions

Automated progressions eliminate manual milestone transitions. You configure time intervals for each milestone, and Unleash automatically advances to the next stage when the interval elapses.

For example, you might configure a release to:

  1. Start with internal users
  2. Progress to 25% of users after 12 hours
  3. Progress to 50% of users after another 24 hours
  4. Progress to 100% of users after another 48 hours

Automated progressions reduce the operational overhead of managing releases, especially for teams shipping features frequently or outside standard working hours.

Impact metrics and safeguards

Impact metrics connect application data to your release process. You define metrics in your application code using the Unleash SDK, such as error counts, request latency, or memory usage. Unleash stores and visualizes these metrics, allowing you to monitor feature health directly in the Admin UI.

Example of impact metrics displaying

Impact metrics support three types:

  • Counters: Cumulative values like request counts or error counts.
  • Gauges: Fluctuating values like memory usage or active connections.
  • Histograms: Value distributions like request duration (with percentiles).

Safeguards use impact metrics to protect your release. You define thresholds for your metrics, and Unleash pauses the automated progression when a metric exceeds the threshold.

For example, you might configure a safeguard to pause the rollout if error counts exceed 10 in a 15-minute window.

When a safeguard triggers, the current milestone continues to run, but no further progressions occur. You can investigate the issue, deploy a fix, and manually resume the release when ready.

Why use release management

Release management provides structure and safety for feature rollouts:

  • Consistency: Release templates ensure every feature follows the same rollout process.
  • Automation: Time-based progressions reduce manual work and enable off-hours releases.
  • Risk mitigation: Safeguards detect issues early and prevent widespread impact.
  • Visibility: Impact metrics show how features affect application health in real time.

Learn more