Every time a feature flag is evaluated, that evaluation is recorded as an impression. This page explains what impression data represents, how CloudBees Unify derives flag lifecycle statuses from it, and what the impression chart shows.
What impressions measure
An impression is recorded each time the SDK evaluates a flag for a user or context, regardless of which value the flag returns. Over time, impression data reveals whether a flag is being actively used, has settled into a fixed value, or has gone quiet entirely.
This makes impressions the primary signal CloudBees Unify uses to assess flag health. A flag that receives varied impressions is actively influencing behavior. A flag that consistently returns the same value has effectively stopped doing work, even if it remains in your configuration. A flag with no recent impressions may have been abandoned.
|
Impression data is fetched and reported every few minutes. The flag configuration must be enabled for impressions to be calculated. |
Flag lifecycle statuses
CloudBees Unify derives a lifecycle status for each flag based on its impression data. These statuses drive the flag health view and cleanup candidate identification.
| Status | Description |
|---|---|
Setup |
The flag exists in CloudBees Unify and may include configuration, but has not yet received any impressions. This is the typical status immediately after a flag is created. |
Active |
The flag has received impressions returning different values during the selected timeframe. |
Stale |
The flag has received impressions during the selected timeframe, but all with the same value. The flag is no longer affecting behavior. |
Inactive |
The flag has received no impressions during the selected timeframe and may no longer be in use. |
Permanent |
A user-defined status that excludes the flag from impression tracking and lifecycle calculations. Intended for long-lived flags with no retirement plan. |
The permanent status
Permanent is the only status that is not derived from impression data. It is set explicitly by a user. Marking a flag as permanent excludes it from impression tracking and lifecycle calculations entirely.
This status is intended for flags that serve ongoing operational roles with no planned retirement: feature toggles tied to infrastructure behavior, configuration values exposed as flags, or any flag your team has decided is indefinitely load-bearing. The trade-off is that a permanent flag no longer contributes to health signals, so stale or inactive behavior goes undetected. Use the permanent status deliberately, not as a way to suppress health warnings on flags that are simply overdue for cleanup.
To mark a flag as permanent, refer to Create and manage feature flags.
The impression chart
Once a flag has received impressions, CloudBees Unify displays them as a stacked bar chart broken down by flag value across three timeframes: last 24 hours, last 7 days, and last 30 days. Each color in the chart represents a different flag value, and hovering over a bar shows the impression count for that value during that period.
The chart is most useful for spotting behavioral drift. A flag that once returned varied values but now consistently returns only one is approaching stale status. The chart makes this visible before the status label changes. Similarly, a flag with a sharp drop in total impressions may indicate that the feature has been fully rolled out or that SDK calls have been removed from the codebase.