Skip to main content

What is a Canary Release?

Glossary image
canary deployment canary rollout

A canary release is a deployment strategy in which a new version of an application is gradually rolled out to a small, controlled subset of users before it is made available to the entire user base. The approach allows engineering teams to observe how the new version behaves under real traffic conditions, catching bugs or performance regressions early without exposing every user to potential issues.

The name comes from the historical practice of coal miners carrying canaries into mines as an early warning system for toxic gases. In software deployment, the "canary" is the small group of users - or servers - that receives the update first, effectively serving as a live test environment. If the new version causes errors, slow response times, or unexpected behavior, the impact is contained to that small segment while the rest of the user base continues running the stable version.

In practice, a canary release typically begins by routing a small percentage of incoming traffic - often between one and five percent - to instances running the new code. Teams monitor key metrics such as error rates, latency, and user-reported issues during this period. If the metrics remain healthy, the rollout is progressively expanded to larger portions of the user base until the new version is fully deployed. If problems emerge, the deployment can be halted and a rollback to the previous stable version is performed, minimizing the overall impact.

Canary releases are closely associated with CI/CD pipelines, where automated testing and deployment processes make incremental rollouts more manageable and repeatable. They are often compared to blue-green deployments, another strategy that reduces downtime and risk during releases. The key distinction is that a blue-green deployment switches all traffic from one environment to another in a single step, whereas a canary release distributes traffic incrementally across a transition period.

This strategy is particularly valuable for large-scale web applications where even a brief, widespread outage can have significant consequences. By limiting initial exposure, teams gain confidence in a release through real-world validation rather than relying solely on pre-production testing. Some implementations also target specific user segments for canary traffic, such as internal employees or users in a particular geographic region, which provides additional control over who is affected during the testing window.

Feature flags, also called feature toggles, are a complementary technique often used alongside canary releases to enable or disable specific functionality for the canary group without requiring separate deployments. Together, these tools give development and operations teams a finer degree of control over how and when new software reaches end users.

Have a question?

Get in touch if you'd like to learn more about this topic.

Contact Us