What is a feature flag and how to activate functions without redeploying?
Published on 2026-10-26 by frfrand
Feature flags explained with examples: gradual rollouts, testing, and technical debt.


A feature flag is a configurable condition that allows enabling or disabling a function without necessarily changing the code that is deployed. It can help you roll out new features gradually or disable a problematic option while investigating.
A simple way to understand it
Imagine a theater with a new room already built, but still only open to employees. The room exists, although not everyone can use it. A feature flag allows a similar separation between having the code published and allowing a certain function to be used.
How it works in practice
An application consults a configuration that may depend on the environment, the user, or a percentage of traffic. It then decides what behavior to execute. Flags can be stored in configuration, databases, or specialized services. If the decision affects sensitive data, it must be verified server-side and not rely solely on hiding buttons.
What it does not solve and its limits
A flag does not replace access control. Nor does it turn an incomplete functionality into something secure. Maintaining hundreds of forgotten flags multiplies code combinations and makes testing difficult: an old function can remain present years later. Gradual rollout also needs monitoring and a clear way to roll back.
How to apply it and verify it without surprises
Define what each flag is for, who can change it, and when it should be removed. Test both states and the behavior when the configuration service fails. If an option controls a charge, verify that deactivating it does not leave operations incomplete or inconsistent states.
How it appears in ArduMaker?
An application hosted via ArduMaker can read feature flags from its own configuration or backend. Git deployments publish the code, while flags can control its exposure to users; they are distinct decisions.
Difference between launch and permission
A flag intended to display a new interface should not by itself decide whether a person can access private data. Authorization must always be checked in the backend. Likewise, if the new function changes the data structure, turning off the flag may hide the button but will not revert the modifications made.
What to do when finishing the experiment
When a function has been definitively activated, remove the temporary condition and obsolete paths after testing the result. Assign a person in charge and a review date for each flag. Otherwise, a tool designed to facilitate launches ends up becoming a collection of forgotten decisions that are difficult to maintain.
To remember
A feature flag is a configurable condition that allows enabling or disabling a function without necessarily changing the code that is deployed. Understanding when it applies, how it fails, and what data to review is more useful than memorizing isolated commands.
To expand: Martin Fowler: Feature Toggles.