Skip to main content

Methodology

Location Expansion Scenario Planner methodology

Stress-test a proposed location using capacity, demand realisation, cannibalisation, monthly contribution and setup-cost payback.

Educational only: Business decision support, not accounting, tax or legal advice.

Privacy: Calculations run locally; Margin101 does not receive your commercial inputs.

Update policy: Reviewed when formulas or official dependencies change.

Scope: Market-neutral small-business planning using your own assumptions.

1. Formulas and units

Risk-adjusted new units
expectedNewUnits = min(monthly capacity, expected monthly demand ร— demand realisation rate)

Where

monthlyCapacityUnits
Monthly capacity (units/month)Source: Business record
expectedMonthlyDemandUnits
Expected monthly demand (units/month)Source: User assumption
riskRealisationRate
Demand realisation (decimal fraction of expected monthly demand (1 = 100%))Source: User decision
expectedNewUnits
Risk-adjusted new units (units/month)Source: Calculated output
Displaced existing units
displacedUnits = min(risk-adjusted new units, cannibalised existing units)

Where

cannibalisedExistingUnits
Cannibalised existing units (units/month)Source: User assumption
expectedNewUnits
Risk-adjusted new units (units/month)Source: Calculated output
displacedUnits
Displaced existing units (units/month)Source: Calculated output
Monthly incremental contribution
monthlyIncrementalContribution = (risk-adjusted new units โˆ’ displaced units) ร— contribution per unit โˆ’ monthly fixed cost

Where

monthlyFixedCost
Monthly fixed cost (currency units/month, ex tax)Source: Business record
contributionPerUnit
Contribution per unit (currency units/unit, ex tax)Source: Business record
expectedNewUnits
Risk-adjusted new units (units/month)Source: Calculated output
displacedUnits
Displaced existing units (units/month)Source: Calculated output
monthlyIncrementalContribution
Monthly incremental contribution (currency units/month, ex tax)Source: Calculated output
Setup-cost payback
paybackMonths = setup cost / positive monthly incremental contribution

Where

setupCost
Setup cost (currency units/one-off location setup, ex tax)Source: User decision
contributionPerUnit
Contribution per unit (currency units/unit, ex tax)Source: Business record
monthlyIncrementalContribution
Monthly incremental contribution (currency units/month, ex tax)Source: Calculated output
paybackMonths
Setup-cost payback (months)Source: Calculated output
Risk-adjusted capacity utilisation
capacityUtilisation = risk-adjusted new units / monthly capacity

Where

monthlyCapacityUnits
Monthly capacity (units/month)Source: Business record
expectedNewUnits
Risk-adjusted new units (units/month)Source: Calculated output
capacityUtilisation
Risk-adjusted capacity utilisation (decimal rate)Source: Calculated output

Money inputs and outputs use the currency selected in the scenario without changing the canonical methodology. Rates, margins, utilisation and buffers are entered as percentages and converted to decimal values for calculation.

2. Worked example

Input assumptions

The labelled rows below are formatted directly from the exact shared engine using the visible default inputs.

Setup cost
10,000 currency units/one-off location setup, ex tax
Monthly fixed cost
1,000 currency units/month, ex tax
Monthly capacity
200 units/month
Expected monthly demand
150 units/month
Contribution per unit
20 currency units/unit, ex tax
Cannibalised existing units
20 units/month
Demand realisation
0.8 decimal fraction of expected monthly demand (1 = 100%)

Calculation and outputs

  1. Risk-adjusted new units

    expectedNewUnits = min(monthly capacity, expected monthly demand ร— demand realisation rate)
    Monthly fixed cost
    1,000 currency units/month, ex tax
    Monthly capacity
    200 units/month
    Expected monthly demand
    150 units/month
    Demand realisation
    0.8 decimal fraction of expected monthly demand (1 = 100%)
    Monthly incremental contribution
    1,000 currency units/month, ex tax
    Risk-adjusted capacity utilisation
    0.6 percent

    Engine result: 120 units/month

  2. Displaced existing units

    displacedUnits = min(risk-adjusted new units, cannibalised existing units)
    Cannibalised existing units
    20 units/month
    Demand realisation
    0.8 decimal fraction of expected monthly demand (1 = 100%)
    Risk-adjusted new units
    120 units/month
    Risk-adjusted capacity utilisation
    0.6 percent

    Engine result: 20 units/month

  3. Monthly incremental contribution

    monthlyIncrementalContribution = (risk-adjusted new units โˆ’ displaced units) ร— contribution per unit โˆ’ monthly fixed cost
    Setup cost
    10,000 currency units/one-off location setup, ex tax
    Monthly fixed cost
    1,000 currency units/month, ex tax
    Monthly capacity
    200 units/month
    Expected monthly demand
    150 units/month
    Contribution per unit
    20 currency units/unit, ex tax
    Demand realisation
    0.8 decimal fraction of expected monthly demand (1 = 100%)
    Risk-adjusted new units
    120 units/month
    Displaced existing units
    20 units/month
    Setup-cost payback
    10 months
    Risk-adjusted capacity utilisation
    0.6 percent

    Engine result: 1,000 currency units/month, ex tax

  4. Setup-cost payback

    paybackMonths = setup cost / positive monthly incremental contribution
    Setup cost
    10,000 currency units/one-off location setup, ex tax
    Monthly fixed cost
    1,000 currency units/month, ex tax
    Monthly capacity
    200 units/month
    Expected monthly demand
    150 units/month
    Contribution per unit
    20 currency units/unit, ex tax
    Monthly incremental contribution
    1,000 currency units/month, ex tax

    Engine result: 10 months

  5. Risk-adjusted capacity utilisation

    capacityUtilisation = risk-adjusted new units / monthly capacity
    Monthly fixed cost
    1,000 currency units/month, ex tax
    Monthly capacity
    200 units/month
    Expected monthly demand
    150 units/month
    Demand realisation
    0.8 decimal fraction of expected monthly demand (1 = 100%)
    Risk-adjusted new units
    120 units/month
    Monthly incremental contribution
    1,000 currency units/month, ex tax

    Engine result: 0.6 percent

Example

The labelled rows below are formatted directly from the exact shared engine using the visible default inputs.

Risk-adjusted new units
120 units
Displaced existing units
20 units
Monthly incremental contribution
1,000.00
Setup-cost payback
10 months
Risk-adjusted capacity utilisation
60%

The monthly incremental contribution is 1,000.00.

Interpretation

Treat the new location as an incremental scenario; existing-location revenue is not automatically transferable.

3. Validation and boundary checks

  • All inputs must be finite and remain inside the visible non-negative validation boundaries.
  • Capacity and demand fields that represent physical units reject fractional values where the engine requires whole units.
  • Rates remain inside the closed range from 0% to 100%.
  • Unreachable contribution, crossover or payback thresholds return an explicit unavailable state rather than Infinity.
  • Option comparisons reject an infeasible option when its entered capacity is below the required workload.
Setup cost minimum
setupCost โ‰ฅ 0 currency units/one-off location setup, ex tax โ€” A lower value is rejected before calculation.
Setup cost maximum
setupCost โ‰ค 10,000,000 currency units/one-off location setup, ex tax โ€” A higher value is rejected before calculation.
Monthly fixed cost minimum
monthlyFixedCost โ‰ฅ 0 currency units/month, ex tax โ€” A lower value is rejected before calculation.
Monthly fixed cost maximum
monthlyFixedCost โ‰ค 10,000,000 currency units/month, ex tax โ€” A higher value is rejected before calculation.
Monthly capacity minimum
monthlyCapacityUnits โ‰ฅ 0 units/month โ€” A lower value is rejected before calculation.
Monthly capacity maximum
monthlyCapacityUnits โ‰ค 100,000,000 units/month โ€” A higher value is rejected before calculation.
Expected monthly demand minimum
expectedMonthlyDemandUnits โ‰ฅ 0 units/month โ€” A lower value is rejected before calculation.
Expected monthly demand maximum
expectedMonthlyDemandUnits โ‰ค 100,000,000 units/month โ€” A higher value is rejected before calculation.
Contribution per unit minimum
contributionPerUnit โ‰ฅ 0 currency units/unit, ex tax โ€” A lower value is rejected before calculation.
Contribution per unit maximum
contributionPerUnit โ‰ค 10,000,000 currency units/unit, ex tax โ€” A higher value is rejected before calculation.
Cannibalised existing units minimum
cannibalisedExistingUnits โ‰ฅ 0 units/month โ€” A lower value is rejected before calculation.
Cannibalised existing units maximum
cannibalisedExistingUnits โ‰ค 100,000,000 units/month โ€” A higher value is rejected before calculation.
Demand realisation minimum
riskRealisationRate โ‰ฅ 0 decimal fraction of expected monthly demand (1 = 100%) โ€” A lower value is rejected before calculation.
Demand realisation maximum
riskRealisationRate โ‰ค 1 decimal fraction of expected monthly demand (1 = 100%) โ€” A higher value is rejected before calculation.

4. Assumptions and source classification

  • All operating volumes, rates, workload, capacity, time, cost and contribution values are supplied by the user.
  • Money inputs use one consistent ex-tax basis and every record refers to the same operating period.
  • Demand realisation, recovery, hours saved and expected unit rates are scenarios, not forecasts or benchmarks.
  • Committed sunk cost is disclosed but excluded from make, buy, outsource and hire incremental economics.
  • The shared engine retains raw precision and display formatting never feeds back into calculation.

This planner has no current policy-data dependency. Its commercial assumptions are user supplied. Registered family-level regression suites exercise the shared business-logic engine and worked-result reconciliation.

5. Limitations

  • Results depend on complete and comparable incremental cost, capacity and operating records.
  • The model does not forecast demand, service quality, employee performance, supplier reliability or disruption duration.
  • A positive result or short payback does not establish implementation feasibility or guarantee a commercial outcome.
  • The planner does not replace operational, accounting, tax, legal or financial advice.

This is educational decision support, not tax, accounting, legal or financial advice. Check the treatment of your actual transactions under the rules that apply to your business and seek qualified advice where appropriate.

6. Update and evidence policy

Registered family-level suites test formula invariants and example reconciliation; the release ledger records that coverage without claiming a separate oracle for every line of public copy. There is no official threshold or benchmark to refresh for this planner. Commercial inputs remain user-supplied because they vary by business and contract.

Change history

  1. : Initial public release of the planner and methodology after pre-launch calculation, content, source and interaction review.

Guides to interpret the decision and its assumptions.

Return to the planner