Methodology
Material Markup & Recovery Planner methodology
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
protectedMaterialCostExTax = material cost รท (1 โ wastage rate) + handling costWhere
- materialCostExTax
- Material cost (currency units/material charge, ex tax)Source: Business record
- handlingCostExTax
- Handling cost (currency units/material charge, ex tax)Source: Business record
- wastageRate
- Wastage allowance (decimal fraction of purchased material lost)Source: User assumption
- protectedMaterialCostExTax
- Protected material cost (currency units, ex tax)Source: Calculated output
materialChargeExTax = protected material cost ร (1 + markup rate)Where
- materialCostExTax
- Material cost (currency units/material charge, ex tax)Source: Business record
- markupRate
- Markup on protected cost (decimal fraction of protected material cost added)Source: User assumption
- protectedMaterialCostExTax
- Protected material cost (currency units, ex tax)Source: Calculated output
- materialChargeExTax
- Material charge (currency units, ex tax)Source: Calculated output
recoveredContributionExTax = material charge โ protected material costWhere
- materialCostExTax
- Material cost (currency units/material charge, ex tax)Source: Business record
- protectedMaterialCostExTax
- Protected material cost (currency units, ex tax)Source: Calculated output
- materialChargeExTax
- Material charge (currency units, ex tax)Source: Calculated output
- recoveredContributionExTax
- Recovered contribution (currency units, ex tax)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 rows below come directly from the exact engine using the visible default fixture.
- Material cost
- 900 currency units/material charge, ex tax
- Handling cost
- 100 currency units/material charge, ex tax
- Wastage allowance
- 0.1 decimal fraction of purchased material lost
- Markup on protected cost
- 0.25 decimal fraction of protected material cost added
Calculation and outputs
Protected material cost
protectedMaterialCostExTax = material cost รท (1 โ wastage rate) + handling cost- Material cost
- 900 currency units/material charge, ex tax
- Handling cost
- 100 currency units/material charge, ex tax
- Wastage allowance
- 0.1 decimal fraction of purchased material lost
- Markup on protected cost
- 0.25 decimal fraction of protected material cost added
- Material charge
- 1,375 money
Engine result: 1,100 money
Material charge
materialChargeExTax = protected material cost ร (1 + markup rate)- Material cost
- 900 currency units/material charge, ex tax
- Handling cost
- 100 currency units/material charge, ex tax
- Wastage allowance
- 0.1 decimal fraction of purchased material lost
- Markup on protected cost
- 0.25 decimal fraction of protected material cost added
- Protected material cost
- 1,100 money
Engine result: 1,375 money
Recovered contribution
recoveredContributionExTax = material charge โ protected material cost- Material cost
- 900 currency units/material charge, ex tax
- Handling cost
- 100 currency units/material charge, ex tax
- Markup on protected cost
- 0.25 decimal fraction of protected material cost added
- Protected material cost
- 1,100 money
- Material charge
- 1,375 money
Engine result: 275 money
Example
The rows below come directly from the exact engine using the visible default fixture.
- Protected material cost
- 1,100.00
- Material charge
- 1,375.00
- Recovered contribution
- 275.00
The exact engine-derived outputs are shown in the labelled rows below.
Interpretation
Use the recovery stack to explain the customer charge; markup on purchase cost alone can hide loss and handling cost.
3. Validation and boundary checks
- All values must be finite and remain inside visible input boundaries.
- Rates must remain below the engine-owned upper boundary.
- The same cost must not be entered in more than one category.
- Material cost minimum
materialCostExTax โฅ 0 currency units/material charge, ex taxโ A lower value is rejected before calculation.- Material cost maximum
materialCostExTax โค 10,000,000 currency units/material charge, ex taxโ A higher value is rejected before calculation.- Handling cost minimum
handlingCostExTax โฅ 0 currency units/material charge, ex taxโ A lower value is rejected before calculation.- Handling cost maximum
handlingCostExTax โค 10,000,000 currency units/material charge, ex taxโ A higher value is rejected before calculation.- Wastage allowance minimum
wastageRate โฅ 0 decimal fraction of purchased material lostโ A lower value is rejected before calculation.- Wastage allowance maximum
wastageRate โค 1 decimal fraction of purchased material lostโ A higher value is rejected before calculation.- Markup on protected cost minimum
markupRate โฅ 0 decimal fraction of protected material cost addedโ A lower value is rejected before calculation.- Markup on protected cost maximum
markupRate โค 9.99 decimal fraction of protected material cost addedโ A higher value is rejected before calculation.
4. Assumptions and source classification
- All commercial terms, costs, rates and volumes are supplied by the user.
- Money values use one consistent ex-tax basis.
- No provider fee, jurisdiction, benchmark or demand forecast is embedded.
- Raw engine precision is retained until display.
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 the completeness and classification of entered records.
- The planner does not forecast demand, customer behaviour or supplier terms.
- This is educational business decision support rather than 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
- : Initial public release of the Material Markup and Recovery planner and methodology.
Related reading
Guides to interpret the decision and its assumptions.
- How to Cost Labour and Materials in a Service Quote
Keep labour, materials, subcontractors and allocated overhead visible without counting the same cost twice.
Read guide