Feature Flag Test Matrix
List feature flags and generate the full 2^N on/off test matrix or a pairwise-reduced set — baseline all-on/all-off rows highlighted, impossible combos markable.
Runs 100% client-sideOn this page5 sections
Feature flags (each is ON or OFF in the matrix)
HOW TO USE
- 01Add each feature flag you need to test.
- 02Choose Mode: full (every 2^N combination) or pairwise (the minimum set covering every flag-pair).
- 03Mark impossible combinations to exclude them; the all-on and all-off rows are always included.
- 04Copy the matrix or Download CSV for your test run.
Try it
Flags: new-nav, dark-mode, ai-summary → full = 8 rows, pairwise = ~6WHEN TO USE
Use when you need to test a system with multiple feature flags — the matrix enumerates every on/off combination so no configuration is missed. The pairwise-reduction option cuts the number of runs from 2^N to the minimum set that covers every pair of flag states, which is typically practical up to 10+ flags. Baseline all-on and all-off rows are always included.
WHAT BUGS THIS FINDS
Flag interaction defects
Feature A works alone and Feature B works alone, but both enabled simultaneously causes a layout collision or API conflict — only caught by testing combinations.
Default-on / default-off confusion
All-on and all-off rows are explicitly highlighted to confirm baseline and regression states are always tested.
Impossible combination accepted
Marking an impossible combination then retesting confirms the application correctly prevents or ignores that configuration.
QA USE CASES
Release flag combinations
3 release flags → 8 full matrix runs OR ~6 pairwise runs — every flag-pair interaction covered
A/B test combinations
Flags: new-checkout, dark-mode, ai-search → pairwise ensures no pair of feature interactions is missed
Kill-switch regression
Mark impossible combos (e.g. checkout enabled without auth enabled) → excluded rows keep the matrix clean
Environment parity check
Generate the matrix and check each row against staging environment state to confirm all configurations are reachable