Feature flag

Also called: feature toggle, feature switch, feature gate

Last updated:

A feature flag is a conditional wrapped around a piece of functionality whose value is decided by remote configuration rather than hard-coded. An SDK evaluates the flag against the current user and the configuration on the server, returning a variation — boolean, string, number, or JSON. Because the value lives in configuration, you change what your application does by editing the flag, not by shipping a release.

How a feature flag works

In code, a flag is a branch: if (client.boolVariation("new-checkout", user, false)). The SDK holds the flag configuration in memory and evaluates locally, so the check is a sub-millisecond lookup with no per-request network hop. When you change the flag in the dashboard, the new configuration is pushed to every connected SDK over a streaming connection and the next evaluation uses it — fleet-wide, with no redeploy.

Why teams use feature flags

Flags decouple deploy from release: you can ship code to production with the feature off, then turn it on when you choose. They make percentage rollouts and gradual exposure a configuration change, give you a kill switch for risky code, and let you serve different variations to beta users or internal staff. For the full treatment of variations, environments, and the evaluation model, see the feature flags concept guide.

Want the full picture? Read the concept guide: What are feature flags? →

Try it in your own app

Free Solo plan covers 10 flags and 2 environments. No credit card, no demo call — sign up and ship.