how-to

How to Do a Canary Release in 2026 - A Practical Step-by-Step Guide

A canary release ships a change to a small slice of traffic first, watches the metrics, then expands or rolls back. Here's the actual process, the guardrails that make it safe, and the tools that automate it.

Published:

A canary release is one of the safest ways to ship a risky change: expose it to a small slice of traffic first, watch the metrics, and only expand if the numbers hold. If they don’t, you roll back before most users ever noticed. Done right, it turns “we broke production for everyone” into “1% of users saw it for four minutes.” Done wrong, it’s a false sense of safety over a rollout nobody was actually watching.

This guide is the actual process - the steps, the guardrails that make it real, and the tools that automate the scary parts. If you want the concept first, see what a canary deployment is. Otherwise, here’s how to run one.

Step 1: Define success before you ship anything

The single most common canary mistake is starting the rollout and then deciding what “good” looks like. By then you’re rationalizing noise. Write your guardrail metrics down first. Pick the two or three signals that would tell you this change is harmful - error rate, p95 latency, a key conversion event, crash rate - and set the thresholds that mean “roll back.” A canary with no predefined failure condition isn’t a canary. It’s a slow deploy you’re watching nervously.

Step 2: Wrap the change behind a feature flag

Canary releases and feature flags are joined at the hip. The cleanest way to control what percentage of traffic sees the new version - without a redeploy each time you change the split - is a flag with percentage targeting. Put the new behavior behind a flag defaulted to off, ship the code dark, then control exposure entirely from the flag.

This decouples deploy from release, which is the whole point: the code is in production, but the change is off until you turn a dial. All three tools here do percentage rollouts; the difference is what they add on top.

Step 3: Release to a small cohort (start at 1-5%)

Turn the flag on for a small, representative slice - commonly 1% to 5% of traffic. Representative matters: if your canary is only internal users or one region, it won’t surface the problems real traffic will. Percentage-based targeting that hashes users consistently keeps the same users in the canary as you observe, so you’re measuring a stable group, not a churning one.

Step 4: Watch the canary against the control

Now you monitor - and this is where the tooling earns its keep, because eyeballing a dashboard is how teams call a canary healthy right before it isn’t.

Statsig is worth reaching for here because its statistical engine is the strongest in this set, built by ex-Facebook engineers, with sequential testing and CUPED variance reduction. Sequential testing specifically lets you monitor continuously and expand the moment you have a real signal, without the false alarms that come from peeking at noisy data repeatedly. And its flag checks are unlimited and free on every tier, so metering the canary itself costs nothing. The caveat to weigh: Statsig was acquired by OpenAI on 2 September 2025, so factor roadmap risk into a long-term commitment.

Compare the canary cohort’s guardrail metrics to the control group on the current version. Same time window, same metric definitions.

Step 5: Expand progressively, or roll back

If the guardrails hold, ramp the flag: 5% to 25% to 50% to 100%, pausing to re-check at each stage. If they breach, roll back by flipping the flag off - instant, no redeploy. This ramp-and-check loop is progressive delivery, covered in depth in the progressive delivery guide.

The stage sizes are a judgment call. Higher-risk changes deserve smaller steps and longer soak times; low-risk ones can jump faster. What matters is that each expansion is a decision backed by the metrics, not a calendar.

Step 6: Automate the rollback

Manual rollback depends on a human noticing at the wrong hour. Automate it for anything that matters.

LaunchDarkly is the standout here: its guarded releases automatically roll back when a monitored metric goes bad, which is genuinely best-in-class - most competitors don’t match it. It’s the deepest flag platform, with advanced targeting and around 38 SDKs, so if automated metric-driven rollback is your priority, this is the reference implementation. Price it carefully, though - it bills client-side MAU on your highest-volume context kind, and per Vendr’s third-party contract data the median deal runs around $72,000 a year.

If your canary lives inside a broader CI/CD pipeline, Harness offers canary and progressive delivery as part of its DevOps platform, with a feature-flag module (now Harness FME, built on its Split acquisition) and warehouse-native experimentation. The trade is that you’re adopting a platform, not a point tool - its paid pricing is sales-led and hidden, so it fits best if you already run Harness for delivery.

Which tool for canary releases?

  • You want automatic, metric-driven rollback out of the box - LaunchDarkly, the strongest guarded-releases implementation, if you can absorb the pricing.
  • You want rigorous statistical monitoring of the canary - Statsig, with free flags and sequential testing, OpenAI-ownership caveat noted.
  • You want canary as one stage of a full CD pipeline - Harness, if you’re already on or moving to its platform.

The honest close: the tool matters less than the discipline. A canary release is only as safe as the guardrails you defined in step one and your willingness to actually roll back when they breach. Pick a tool that automates the rollback so the decision isn’t riding on someone being awake - then trust the metrics you set before you shipped. For the wider rollout playbook, the feature flags best practices guide covers what to do the rest of the time.

Frequently Asked Questions

What is a canary release?

A canary release exposes a new version of your software to a small subset of users or traffic first - the canary - while everyone else stays on the current version. You watch the canary's metrics against the control group, and only if they hold do you expand the rollout. If the metrics degrade, you roll back before most users ever saw the change. The name comes from the canary in a coal mine - a small early warning before the whole system is affected.

What's the difference between a canary release and a feature flag rollout?

They overlap heavily. A feature flag is often the mechanism that powers a canary release - you use a percentage rollout to send the new behavior to 1-5% of users first. The distinction is emphasis - canary release describes the strategy of validating on a small slice before expanding, while a feature flag is the tool that lets you do it without redeploying. Modern flag platforms with percentage targeting are the most common way to run a canary today.

How do you decide when to expand or roll back a canary?

You decide against guardrail metrics defined before you start - error rate, latency, conversion, or whatever signals health for your change. Compare the canary cohort to the control group. If guardrails hold within your thresholds, expand to the next stage; if they breach, roll back. The trap is calling it too early on noisy data, which is why tools with sequential testing help - they let you monitor continuously without inflating false alarms.

Can you automate a canary rollback?

Yes, and you should for anything risky. LaunchDarkly's guarded releases automatically roll back when a monitored metric goes bad, which removes the human-reaction delay that makes bad releases worse. Platforms like Harness offer canary and progressive delivery inside a CD pipeline, and Statsig's statistical engine can flag a degrading metric with rigor. Automated rollback turns a 2am incident into a non-event.

Explore More

Free Newsletter

Get the Feature Flags Newsletter

Platform benchmarks, real pricing data and progressive delivery practice. No spam.

Free. Unsubscribe any time. See our privacy policy.

Related Articles