Skip to content

Feature Analytics: environment selector behaviour when chart groups by SDK #7245

@talissoncosta

Description

@talissoncosta

Context

PR #7215 introduced label-based grouping for Feature Analytics charts: when the API returns labelled evaluation buckets (per-SDK user_agent / client_application_name), the chart stacks bars by label value instead of by environment.

This surfaced a UX question that wasn't resolved in that PR:

The problem

When the chart is in labelled mode, the environment selector at the top still works but its effect is invisible — selecting Production + Staging vs. just Production changes the stack totals silently, with no way to tell which environment contributed to each SDK slice.

Example: a bar showing flagsmith-js-sdk: 500 could be 300 from Production + 200 from Staging, or 500 from Production alone. Deselecting an env re-aggregates the total, but there's no visible breakdown.

What was considered in #7215

  • Hide the env selector in labelled mode — simpler, matches the org-level Usage page pattern (which has no env selector in SDK view). Risk: users lose the ability to narrow the dataset to a specific env at all.
  • Keep the env selector as a silent data filterthis is what shipped. It still narrows the dataset; users just can't see the breakdown inside each SDK stack.
  • Nested grouping (env × SDK) — each env becomes a sub-stack within each SDK bar. Visually complex, potentially noisy with 5 envs × 5 SDKs.

Open questions

  1. Is per-environment breakdown valuable when labels are present, or is SDK breakdown sufficient at that level of aggregation?
  2. If both are valuable, what's the right UX? Options:
    • Toggle between "Group by Environment" / "Group by SDK" (mode switch)
    • Show env names in the tooltip (non-stacked, but informative)
    • Nested stack (env × SDK)
    • Let the user drill down from SDK → env on click
  3. Does the answer differ for single-env vs multi-env selection?

Not in scope for #7215

The PR ships the simpler "labelled mode replaces env mode" behaviour. This issue tracks the follow-up UX decision.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions