Feature flag
A feature flag is a runtime toggle that gates whether a code path is active. Flags decouple deployment (ship the code dark) from release (turn the flag on for some/all users) and enable instant rollback without redeploying.
Feature flag platforms (LaunchDarkly, Statsig, GrowthBook, in-house) typically support: kill switches (instant disable on incident), percentage rollouts (canary the feature), targeting rules (enable for specific users/teams/regions), and experimentation (A/B test variants). Anti-patterns: flag accumulation (flags that should have been cleaned up months ago becoming permanent code complexity), and using flags for permissions logic (use a proper authz system).
Related terms
- Canary release
A canary release routes a small percentage of production traffic (typically 1-5%) to a new version, monitors error rates and latency, and rolls forward to 100% only when metrics stay healthy.
- Continuous deployment
Continuous deployment automatically deploys every change that passes the test suite into production — no human gate between merging code and serving traffic.
- Dark launch
A dark launch ships a feature to production but leaves it disabled for users — the code runs (sometimes against real traffic, sometimes against shadow traffic) to validate behaviour under load before being turned on.