What is Canary Release?
A canary release (named after the "canary in a coal mine" practice) routes a small percentage of traffic to the new version while the majority continues using the stable version. If the canary version performs well, traffic is gradually shifted over.
Unlike feature flags which control feature visibility in the same codebase, canary releases typically involve deploying a new version of the entire application to a subset of servers or containers. The two approaches are complementary and often used together.
The key to a successful canary release is good monitoring: you need clear metrics (error rates, latency, business KPIs) and automated comparison between canary and stable traffic. If the canary degrades any metric, the release is automatically rolled back.
Example
You deploy v2.4 to 2 out of 50 servers (4% of traffic). Monitoring shows the canary servers have the same error rate and 5ms lower latency. After 2 hours of stable metrics, you proceed with the full rollout.
Related Terms
Ship features with confidence
Use feature flags to control rollouts, run A/B tests, and instantly kill problematic features.
Explore Feature Flags