# SAP Variant Combination Explosion Calculator: How Many Configurations Does Your VC Model Allow?

> Source: https://netray.co/tools/sap-variant-combination-explosion-calculator
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Multiply characteristic values into a raw combination count, apply a dependency exclusion rate, and estimate the pairwise test floor.

## Category

sap

## Erp

SAP S/4HANA

## Audience

- SAP VC consultant
- PLM engineer
- Product configurator owner

## Tool

**Kind:** calculator

**Inputs:**

#### Characteristic 1 values

**Key:** v1

**Type:** number

**Default:** 6

**Min:** 1

**Step:** 1

**Unit:** values

**Help:** Number of allowed values for the first characteristic, for example 6 voltages.

#### Characteristic 2 values

**Key:** v2

**Type:** number

**Default:** 4

**Min:** 1

**Step:** 1

**Unit:** values

#### Characteristic 3 values

**Key:** v3

**Type:** number

**Default:** 8

**Min:** 1

**Step:** 1

**Unit:** values

#### Characteristic 4 values

**Key:** v4

**Type:** number

**Default:** 5

**Min:** 1

**Step:** 1

**Unit:** values

#### Characteristic 5 values

**Key:** v5

**Type:** number

**Default:** 3

**Min:** 1

**Step:** 1

**Unit:** values

#### Characteristic 6 values

**Key:** v6

**Type:** number

**Default:** 10

**Min:** 1

**Step:** 1

**Unit:** values

**Help:** Enter 1 for any characteristic you do not use.

#### Combinations blocked by dependencies

**Key:** invalid_pct

**Type:** slider

**Default:** 60

**Min:** 0

**Max:** 99

**Step:** 1

**Unit:** %

**Help:** Share of raw combinations removed by constraints, preconditions and selection conditions.

#### Minutes to test one configuration

**Key:** test_minutes

**Type:** number

**Default:** 6

**Min:** 0

**Step:** 1

**Unit:** min

**Outputs:**

#### Raw combinations

**Key:** raw

**Expr:** v1 * v2 * v3 * v4 * v5 * v6

**Format:** integer

**Description:** Product of all characteristic value counts, before any dependency.

#### Valid combinations

**Key:** valid

**Expr:** raw * (1 - invalid_pct / 100)

**Format:** integer

**Primary:** true

**Description:** Configurations a user could actually complete in the sales order.

#### Pairwise test floor

**Key:** pairwise

**Expr:** max(v1*v2, v1*v3, v1*v4, v1*v5, v1*v6, v2*v3, v2*v4, v2*v5, v2*v6, v3*v4, v3*v5, v3*v6, v4*v5, v4*v6, v5*v6)

**Format:** integer

**Primary:** true

**Description:** Lower bound for a pairwise covering set: the product of the two largest value counts.

#### Exhaustive test effort

**Key:** exhaustive_hours

**Expr:** valid * test_minutes / 60

**Format:** hours

#### Pairwise test effort

**Key:** pairwise_hours

**Expr:** min(pairwise, valid) * test_minutes / 60

**Format:** hours

#### Test effort saved

**Key:** reduction

**Expr:** if(gt(exhaustive_hours, 0), (1 - pairwise_hours / exhaustive_hours) * 100, 0)

**Format:** percent

**Chart:**

#### Valid combinations vs dependency exclusion rate

**Type:** line

**X:** invalid_pct

**From:** 0

**To:** 95

**Steps:** 20

**Series:**

- valid

**Disclaimer:** The pairwise figure is a theoretical lower bound. Real covering arrays are usually somewhat larger and must also respect your constraints.

## Content

**Intro:** A configurable material looks small in CU41 but the combination space behind it can be enormous. This calculator multiplies your characteristic value counts, removes what dependencies block, and shows how many tests exhaustive and pairwise strategies imply.

**Sections:**

#### How to use the calculator

**Body:** List the allowed value count for each characteristic in the class assigned to your configurable material. Enter 1 for unused slots. Then estimate the share of combinations that your constraints, preconditions and selection conditions remove. A quick way to get that share is to sample 30 random combinations in a sandbox and count how many the model rejects.

**Bullets:**

- Count values from CT04, not from a spec sheet
- Include numeric intervals as the number of distinct values you would really sell
- Re-run after every major dependency change

#### The method behind the numbers

**Body:** The raw count is the Cartesian product of all value counts. Valid combinations apply your exclusion rate. The pairwise floor comes from covering-array theory: to cover every pair of values between two characteristics at least once, you need at least as many tests as the product of the two largest value counts. Pairwise testing catches most interaction defects with a small fraction of the effort of exhaustive runs.

#### Reading the result

**Body:** With the defaults, 28,800 raw combinations shrink to 11,520 valid ones, yet a pairwise set can start near 80 tests. If your valid count is below a few hundred, test them all. If it is in the thousands, use pairwise plus targeted cases for every constraint and every pricing condition. The chart shows why tightening dependencies has a nonlinear effect on the valid space.

#### Common mistakes

**Body:** Teams often test only the happy path of the sample order. Others forget that multi-valued characteristics multiply the space further. Remember that a configuration that is valid in the model must also explode a correct BOM and routing, price correctly and pass availability checks.

**Bullets:**

- Ignoring multi-value characteristics
- Treating the pairwise floor as the final test count
- Not testing blocked combinations to confirm they are rejected

**Cta:** If your VC model has thousands of valid configurations and testing is manual, Netray can help script configuration test runs against a sandbox and flag unexpected BOM results.

**Faq:**

#### Does this work for SAP AVC as well as classic VC?

**Answer:** Yes. The combination math depends on characteristics and dependencies, not on the engine. Advanced Variant Configuration uses different modeling objects, but the raw product of value counts and the effect of constraints behave the same way.

#### Why is pairwise testing enough?

**Answer:** Industry studies of software and configuration defects show most failures are triggered by one or two parameters interacting. Pairwise covers all two-way interactions, so it finds the bulk of defects at a small fraction of exhaustive effort.

#### How do I estimate the dependency exclusion rate?

**Answer:** Sample random combinations in a test client and count how many are rejected, or export the constraint rules and count the excluded pairs. A rough estimate is fine because the result moves smoothly with the rate.

#### Should I test every valid combination?

**Answer:** Only when the count is small or the product is high risk, such as safety rated equipment. Otherwise combine pairwise coverage with explicit cases for every constraint, price factor and BOM selection condition.

## Search terms

sap variant configuration number of combinations, sap vc characteristic combinations calculator, configurable material variants count, sap vc test coverage pairwise, variant explosion calculator, sap vc model complexity, sap configuration testing effort, sap vc constraint reduction

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
