Modern software teams no longer deploy and pray. They deploy incrementally, gate features behind flags, and roll back instantly if something goes wrong. Feature flags — also called feature toggles or feature switches — are at the heart of this approach. If your team practises trunk-based development or progressive delivery, this vocabulary is essential for daily standups, incident reviews, and planning discussions.
Core Concepts
Feature Flag (Toggle / Switch)
A feature flag (also called a feature toggle or feature switch) is a conditional in your code that enables or disables a feature without deploying new code. Instead of making code changes to turn something on, you change configuration.
“We shipped the new onboarding flow behind a feature flag. We can enable it for specific users without a new deployment.”
Flag Lifecycle
Every feature flag has a lifecycle:
- Create — define the flag in your system and write the conditional in code
- Enable — turn it on, initially for a small group
- Rollout — gradually increase the percentage of users who see it
- Retire — once the feature is fully released, remove the flag and the conditional from the code
“This flag has been sitting in the codebase for three months. It’s time to retire it — remove the conditional and clean up the code.”
Targeting Rule
A targeting rule determines who sees a feature. Rules can target by user ID, email domain, country, account plan, or any other attribute.
“Set a targeting rule so only users on the beta plan see the new editor — we’re not ready to release it to everyone.”
Percentage Rollout
A percentage rollout enables a feature for a defined percentage of users — for example, 5%, then 20%, then 100%. It limits the blast radius if something goes wrong.
“Start with a 1% rollout. If no errors appear in the next hour, bump it to 10%.”
Deployment Strategies
Canary Release
A canary release is a deployment strategy where a new version of the application is rolled out to a small subset of users (the canary group) before everyone else. The name comes from the miners’ canary — an early warning system.
“We’re doing a canary release to 5% of production traffic. Watch the error rate and latency — if anything spikes, we roll back.”
Blue-Green Deployment
In a blue-green deployment, you maintain two identical production environments — blue (current) and green (new). You deploy to green, test it, then switch traffic from blue to green. If problems arise, you flip back to blue instantly.
“Blue-green gives us zero-downtime deployments. The switch is instant — just a DNS or load balancer change.”
Ring Deployment
A ring deployment releases changes through a series of rings — from internal employees, to beta users, to a small percentage of customers, and finally to everyone. Each ring is a checkpoint.
“Our deployment rings are: internal → 1% → 10% → 100%. We spend at least 24 hours in each ring.”
Dark Launch
A dark launch means running new code in production for real traffic without showing the results to users. You test the performance and correctness of the new code path in silence.
“We dark-launched the new recommendation engine for two weeks. It processed real requests but we discarded the output. Once we were confident, we turned on the flag.”
Risk Management
Kill Switch
A kill switch is a flag specifically designed to disable a feature instantly in an emergency. Unlike a gradual rollout, a kill switch is binary — on or off — and is operated by on-call engineers, not product managers.
“The payment integration has a kill switch. If it starts failing, flip the switch and fall back to the legacy flow immediately.”
Rollback
A rollback means reverting to a previous state. With feature flags, you can “roll back” a feature by disabling the flag — no code deployment required.
“We don’t need to roll back the deployment. Just disable the flag and users will get the old behaviour.”
Technical Debt and Hygiene
Flag Debt
Flag debt is the accumulated cost of feature flags that are never retired. Old flags clutter the code, create confusion about what is enabled, and can interact unexpectedly with new flags.
“We have 80 flags in the codebase and only 20 are still active. The rest are flag debt — let’s schedule a cleanup sprint.”
Trunk-Based Development and Feature Flags
In trunk-based development, all developers commit to a single main branch (the trunk) frequently. Feature flags enable this by allowing incomplete features to be merged and deployed without being visible to users.
“We don’t use long-lived feature branches. We merge to trunk daily and use feature flags to hide work in progress.”
Feature Flag Platforms
LaunchDarkly
LaunchDarkly is a leading commercial feature flag platform. It provides a dashboard for managing flags, targeting rules, and percentage rollouts, with SDKs for all major languages and frameworks.
“LaunchDarkly lets the product team change targeting rules without involving engineers.”
Unleash
Unleash is an open-source feature flag platform. Teams who want to self-host their flag infrastructure often choose Unleash.
“We self-host Unleash on our own infrastructure — no third-party dependency for flag evaluation.”
Flagsmith
Flagsmith is another open-source alternative to LaunchDarkly, supporting both cloud-hosted and self-hosted deployments.
Common Feature Flag Phrases
| Phrase | Meaning |
|---|---|
| “Gate it behind a flag” | Don’t release it to all users — put a flag in front of it |
| “Flip the flag” | Enable or disable the feature |
| “The flag is stale” | The feature is fully released but the flag hasn’t been removed from the code |
| “We can roll back without a deploy” | Turn off the flag to revert the behaviour |
| “Gradual rollout” | Increasing the percentage of users who see the feature over time |
| “The blast radius is limited” | Only a small percentage of users are affected if something goes wrong |
| “Flag hygiene” | The practice of retiring old flags and keeping the flag inventory clean |
Understanding the Nuances of “Rollout” in a Team Context
The term “rollout” – frequently used when discussing feature flags – can be surprisingly tricky for non-native English speakers. It’s often presented as simply “making a feature available to users,” but it carries a significant amount of operational and strategic weight, especially within a development team. It’s not just about deploying code; it’s about the process of making that deployment impactful. A common misunderstanding comes from equating “rollout” with simply hitting a “deploy” button. That action is necessary, certainly, but it’s only the first step in a carefully orchestrated plan.
Consider this scenario: During a code review, a senior engineer might comment on a PR description saying, “This rollout looks good conceptually, but we need to add more detail about the target user segment for this percentage-based release – let’s clarify what constitutes ‘critical’ users before we proceed.” This isn’t criticism; it’s an observation highlighting the strategy behind the rollout. The engineer is asking for a deeper understanding of why that particular group is being targeted, and how success will be measured. Similarly, in Slack, you might see messages like, “Rolling out v2 to 10% of users this afternoon – monitoring key metrics closely.” The emphasis here isn’t just on the action; it’s about continuous observation and adaptation. A poorly defined rollout can quickly become “flag debt,” accumulating unused flags and complicating future deployments.
Furthermore, the concept of a “gradual rollout” is often misinterpreted. It doesn’t mean simply deploying to 1% initially. It means carefully controlling who sees the feature, when they see it, and how its performance is monitored at each stage. A successful rollout isn’t about blindly pushing code; it’s about iterative learning and risk mitigation. It requires a clear understanding of your metrics – conversion rates, error rates, user engagement – and the ability to quickly react if something goes wrong (hence the importance of having a “kill switch”).
Let’s illustrate this with an example using LaunchDarkly:
launchdarkly set feature-name=true segment="new_users" region="us-east-1"
This command, while seemingly simple, represents a deliberate action – setting a flag to a specific segment in a particular region. The rollout isn’t just the command itself; it’s the entire process of defining that segment, monitoring its impact, and adjusting the rollout strategy based on those observations. It’s about understanding how different segments react, and ensuring the feature is delivering value to the intended users.
Keep practising
Turn this article into muscle memory
Five-minute exercises with instant feedback — built from the same kind of real IT language.
What to read next
Frequently asked questions
What will I learn from "Feature Flags & Progressive Delivery Vocabulary: 25 Terms Explained"?
This is a Intermediate-level Vocabulary article covering vocabulary, feature-flags, devops and deployment. Learn feature flag vocabulary for modern delivery — toggles, percentage rollouts, canary releases, kill switches, flag debt, LaunchDarkly, Unleash, and more.
Is this article free to read?
Yes. Every article on CoderSlingo, including this one, is free to read with no account, sign-up, or paywall.
How is reading this article different from doing an exercise?
Articles like this one explain concepts and vocabulary in context through prose, while exercises are interactive drills — fill-in-the-blank, matching, and multiple-choice — that test and reinforce specific terms. Reading builds understanding; exercises build recall.
Can I practice the vocabulary used in this article?
Yes — this article's topic lines up with our vocabulary exercises. Use the "Practice this vocabulary" link below to jump straight into a matching drill.
How long does "Feature Flags & Progressive Delivery Vocabulary: 25 Terms Explained" take to read?
About 9 min. Most CoderSlingo articles, including this one, are written to be read in one sitting, without needing a dictionary open in another tab.
Do I need to create an account to read or save this article?
No account is required to read any article. If you complete exercises elsewhere on the site, your progress is saved locally in your browser — no login needed.
What if I don't understand a technical term used in this article?
Check the site Glossary for plain-English definitions of common IT terms, or browse the #vocabulary tag page for other Vocabulary articles that use the same vocabulary in different contexts.
Can I share or link to "Feature Flags & Progressive Delivery Vocabulary: 25 Terms Explained"?
Yes — use the Twitter/X or LinkedIn share buttons at the end of the article, or copy the page URL directly. Attribution back to CoderSlingo is appreciated but the content is free to reference.
When was this Vocabulary article published?
This article was published in 2026. New Vocabulary articles are added regularly — visit the #vocabulary tag page to see the full, continuously updated list.
Where can I find more articles like this one?
See "Deployment Strategy English: Blue-Green, Canary, and Feature Flags", "Vocabulary for Progressive Delivery: Canary, Feature Flags, and Dark Launch", "OpenFeature and Feature Flags: English Vocabulary for Progressive Delivery" in the Related Articles section below, or browse all Vocabulary articles from the main Blog index.