Feature flags give you precise control over how and when application functionality is delivered. In CloudBees platform, feature management allows you to roll out changes safely, test in production, and manage risk—all from a centralized platform.
Use this page to learn the key concepts, how feature management is structured, and how to begin creating and evaluating feature flags.
What are feature flags?
Feature flags are conditional statements in your code that determine whether a piece of functionality runs. When a flag is toggled on, the feature is enabled. When toggled off, the behavior is hidden or skipped.
Feature flags help you:
-
Gradually release features to specific segments
-
Test safely in production
-
Reduce risk by decoupling deployment from release
-
Roll back instantly without shipping new code
A feature flag can be one of three types:
-
Boolean
-
String
-
Number
Why use feature management?
Feature management extends feature flags with a platform for controlling rollout strategies, progressive delivery, approvals, segmentation, analytics, and governance across your applications.
Feature management in CloudBees platform supports:
| Aspect | Description |
|---|---|
Cross-platform, cross-device |
Works across a wide range of SDKs and environments. |
Progressive delivery |
Release features to incrementally larger groups. |
Target groups |
Segment audiences by properties such as region, browser, or custom attributes. |
How feature management is structured
Feature management uses applications, environments, and feature flags together to deliver functionality consistently across your system.
Applications
Applications organize everything related to your software delivery, including feature flags, target groups, workflows, and environments.
Applications allow you to:
-
Group related flags and logic in one place
-
Navigate between environments, workflows, and releases tied to the same application
-
Maintain clean boundaries between different areas of your system
If you use only Feature Management, applications are still required—they act as the central connection between flags and environments.
Environments
Environments represent stages such as Development, QA, Staging, or Production.
An environment must be linked to an application before you can evaluate or manage feature flags.
Feature flags and their scope
A feature flag is created within an application and automatically appears in all environments linked to that application. This structure lets you manage rollout conditions differently per environment while maintaining a single flag definition.
| Flag element | Shared across all environments? |
|---|---|
Required settings (name and type) |
|
Optional settings |
|
Custom properties |
|
Target groups |
|
Flag configurations (rules per environment) |
|
SDK keys |
|
Stickiness property |
|
Typical use cases
| Use case | Description |
|---|---|
Decouple deployment from release |
Release code without enabling the feature until ready. |
Kill switch |
Disable a problematic production feature instantly. |
License management |
Expose features to subscription or entitlement tiers. |
Product experimentation |
Test functionality with a subset of real traffic. |
Release management |
Support canary, blue/green, or staged rollouts. |
Testing in production |
Allow QA teams to validate functionality in real environments. |
Set up feature management
Feature management connects to your application through an SDK key. The SDK key is automatically generated when you link an environment to an application.
To get started:
-
Create or select an environment (for example, QA, Staging, or Production)
-
Create or select an application
-
Link the environment to the application
-
Install the SDK for your language or framework
-
Begin evaluating flags in your code using the ROX package
Refer to Install the SDK for installation steps.
How client-side users (CSUs) are captured
Client-side SDKs count client-side users (CSUs) to measure how client applications interact with feature flags.
A CSU represents a unique client instance, such as a mobile device, browser, or session, that evaluates at least one feature flag during a 30-day billing period.
Examples:
-
Opening your iOS app triggers evaluations → 1 CSU
-
Opening your web app from a laptop triggers evaluations → 1 additional CSU
-
Repeated evaluations from the same device do not increase the CSU count
You can view CSU counts in the Billing and subscriptions page.
To learn how CSUs relate to monthly active users (MAUs), refer to Pricing and billing.