Methodology
Trade Call-out Fee 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
labourAndTravelCostExTax = (travel + diagnostic hours) * loaded labour rate + distance cost + mobilisationWhere
- mobilisationCostExTax
- Mobilisation and dispatch cost (currency units/call-out, ex tax)Source: Business record
- travelHours
- Round-trip travel hours (hours/call-out)Source: Business record
- diagnosticHours
- Included diagnostic hours (hours/call-out)Source: Business record
- labourAndTravelCostExTax
- Labour and travel cost (currency units, ex tax)Source: Calculated output
capacityDisplacementCostExTax = displaced billable hours * displaced contribution per hourWhere
- displacedBillableHours
- Displaced billable hours (hours/call-out)Source: Business record
- displacedContributionPerHourExTax
- Displaced contribution per hour (currency units/hour, ex tax)Source: Business record
- capacityDisplacementCostExTax
- Capacity displacement cost (currency units, ex tax)Source: Calculated output
protectedCalloutCostExTax = labour/travel cost + capacity displacement costWhere
- labourAndTravelCostExTax
- Labour and travel cost (currency units, ex tax)Source: Calculated output
- capacityDisplacementCostExTax
- Capacity displacement cost (currency units, ex tax)Source: Calculated output
- protectedCalloutCostExTax
- Protected call-out cost (currency units, ex tax)Source: Calculated output
requiredCalloutFeeExTax = protected call-out cost / (1 - target margin)Where
- targetCalloutMargin
- Target call-out margin (decimal fraction of call-out fee)Source: Business record
- protectedCalloutCostExTax
- Protected call-out cost (currency units, ex tax)Source: Calculated output
- requiredCalloutFeeExTax
- Minimum call-out fee (currency units, ex tax)Source: Calculated output
expectedFollowOnContributionExTax = conversion rate * follow-on job contributionWhere
- expectedJobConversionRate
- Expected follow-on job conversion (decimal fraction of call-outs converting to follow-on work)Source: Business record
- expectedFollowOnJobContributionExTax
- Follow-on job contribution (currency units/converted follow-on job, ex tax)Source: Business record
- expectedFollowOnContributionExTax
- Expected follow-on contribution (currency units, ex tax)Source: Calculated output
expectedEconomicContributionExTax = proposed fee - protected cost + expected follow-on contributionWhere
- expectedFollowOnContributionExTax
- Expected follow-on contribution (currency units, ex tax)Source: Calculated output
- expectedEconomicContributionExTax
- Expected economic contribution (currency units, ex tax)Source: Calculated output
proposedFeeGapExTax = proposed fee - required call-out feeWhere
- proposedCalloutFeeExTax
- Proposed call-out fee (currency units/call-out, ex tax)Source: Business record
- proposedFeeGapExTax
- Proposed fee gap (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 worked rows below are evaluated at render time by the same shared engine and visible default fixture as the interactive workflow.
- Mobilisation and dispatch cost
- 18 currency units/call-out, ex tax
- Round-trip travel hours
- 0.75 hours/call-out
- Included diagnostic hours
- 0.5 hours/call-out
- Loaded trade labour cost per hour
- 58 currency units/hour, ex tax
- Round-trip distance
- 34 kilometres/call-out
- Vehicle cost per kilometre
- 0.92 currency units/kilometre, ex tax
- Displaced billable hours
- 0.5 hours/call-out
- Displaced contribution per hour
- 55 currency units/hour, ex tax
- Expected follow-on job conversion
- 0.55 decimal fraction of call-outs converting to follow-on work
- Follow-on job contribution
- 260 currency units/converted follow-on job, ex tax
- Target call-out margin
- 0.3 decimal fraction of call-out fee
- Proposed call-out fee
- 145 currency units/call-out, ex tax
Calculation and outputs
Labour and travel cost
labourAndTravelCostExTax = (travel + diagnostic hours) * loaded labour rate + distance cost + mobilisation- Mobilisation and dispatch cost
- 18 currency units/call-out, ex tax
- Round-trip travel hours
- 0.75 hours/call-out
- Included diagnostic hours
- 0.5 hours/call-out
- Loaded trade labour cost per hour
- 58 currency units/hour, ex tax
- Round-trip distance
- 34 kilometres/call-out
- Vehicle cost per kilometre
- 0.92 currency units/kilometre, ex tax
- Displaced billable hours
- 0.5 hours/call-out
- Expected follow-on job conversion
- 0.55 decimal fraction of call-outs converting to follow-on work
- Capacity displacement cost
- 27.5 money
- Protected call-out cost
- 149.28 money
Engine result: 121.78 money
Capacity displacement cost
capacityDisplacementCostExTax = displaced billable hours * displaced contribution per hour- Round-trip travel hours
- 0.75 hours/call-out
- Included diagnostic hours
- 0.5 hours/call-out
- Loaded trade labour cost per hour
- 58 currency units/hour, ex tax
- Displaced billable hours
- 0.5 hours/call-out
- Displaced contribution per hour
- 55 currency units/hour, ex tax
- Follow-on job contribution
- 260 currency units/converted follow-on job, ex tax
- Expected follow-on contribution
- 143 money
- Expected economic contribution
- 138.72 money
Engine result: 27.5 money
Protected call-out cost
protectedCalloutCostExTax = labour/travel cost + capacity displacement cost- Mobilisation and dispatch cost
- 18 currency units/call-out, ex tax
- Round-trip travel hours
- 0.75 hours/call-out
- Loaded trade labour cost per hour
- 58 currency units/hour, ex tax
- Vehicle cost per kilometre
- 0.92 currency units/kilometre, ex tax
- Labour and travel cost
- 121.78 money
- Capacity displacement cost
- 27.5 money
Engine result: 149.28 money
Minimum call-out fee
requiredCalloutFeeExTax = protected call-out cost / (1 - target margin)- Mobilisation and dispatch cost
- 18 currency units/call-out, ex tax
- Loaded trade labour cost per hour
- 58 currency units/hour, ex tax
- Vehicle cost per kilometre
- 0.92 currency units/kilometre, ex tax
- Target call-out margin
- 0.3 decimal fraction of call-out fee
- Proposed call-out fee
- 145 currency units/call-out, ex tax
- Labour and travel cost
- 121.78 money
- Capacity displacement cost
- 27.5 money
- Protected call-out cost
- 149.28 money
Engine result: 213.257143 money
Expected follow-on contribution
expectedFollowOnContributionExTax = conversion rate * follow-on job contribution- Loaded trade labour cost per hour
- 58 currency units/hour, ex tax
- Displaced contribution per hour
- 55 currency units/hour, ex tax
- Expected follow-on job conversion
- 0.55 decimal fraction of call-outs converting to follow-on work
- Follow-on job contribution
- 260 currency units/converted follow-on job, ex tax
- Expected economic contribution
- 138.72 money
Engine result: 143 money
Expected economic contribution
expectedEconomicContributionExTax = proposed fee - protected cost + expected follow-on contribution- Mobilisation and dispatch cost
- 18 currency units/call-out, ex tax
- Loaded trade labour cost per hour
- 58 currency units/hour, ex tax
- Vehicle cost per kilometre
- 0.92 currency units/kilometre, ex tax
- Displaced contribution per hour
- 55 currency units/hour, ex tax
- Expected follow-on job conversion
- 0.55 decimal fraction of call-outs converting to follow-on work
- Follow-on job contribution
- 260 currency units/converted follow-on job, ex tax
- Proposed call-out fee
- 145 currency units/call-out, ex tax
- Labour and travel cost
- 121.78 money
- Capacity displacement cost
- 27.5 money
- Protected call-out cost
- 149.28 money
- Minimum call-out fee
- 213.257143 money
- Expected follow-on contribution
- 143 money
- Proposed fee gap
- -68.257143 money
Engine result: 138.72 money
Proposed fee gap
proposedFeeGapExTax = proposed fee - required call-out fee- Target call-out margin
- 0.3 decimal fraction of call-out fee
- Proposed call-out fee
- 145 currency units/call-out, ex tax
- Protected call-out cost
- 149.28 money
- Minimum call-out fee
- 213.257143 money
Engine result: -68.257143 money
Example
The worked rows below are evaluated at render time by the same shared engine and visible default fixture as the interactive workflow.
- Labour and travel cost
- 121.78 currency units
- Capacity displacement cost
- 27.5 currency units
- Protected call-out cost
- 149.28 currency units
- Minimum call-out fee
- 213.26 currency units
- Expected follow-on contribution
- 143 currency units
- Expected economic contribution
- 138.72 currency units
- Proposed fee gap
- -68.26 currency units
The exact engine-derived outputs are shown in the labelled rows below.
Interpretation
The required fee protects the entered mobilisation and capacity burden; it is not a market-rate recommendation.
3. Validation and boundary checks
- All inputs must be finite and inside the visible validation boundaries.
- Rates are retained as decimal values and shown as percentages only at the presentation boundary.
- The worked fixture must expose every declared result: labourAndTravelCostExTax, capacityDisplacementCostExTax, protectedCalloutCostExTax, requiredCalloutFeeExTax, expectedFollowOnContributionExTax, expectedEconomicContributionExTax, proposedFeeGapExTax.
- Scenario comparison changes one declared driver while holding the remaining industry records constant.
- Mobilisation and dispatch cost minimum
mobilisationCostExTax โฅ 0 currency units/call-out, ex taxโ A lower value is rejected before calculation.- Mobilisation and dispatch cost maximum
mobilisationCostExTax โค 10,000,000 currency units/call-out, ex taxโ A higher value is rejected before calculation.- Round-trip travel hours minimum
travelHours โฅ 0 hours/call-outโ A lower value is rejected before calculation.- Round-trip travel hours maximum
travelHours โค 168 hours/call-outโ A higher value is rejected before calculation.- Included diagnostic hours minimum
diagnosticHours โฅ 0 hours/call-outโ A lower value is rejected before calculation.- Included diagnostic hours maximum
diagnosticHours โค 168 hours/call-outโ A higher value is rejected before calculation.- Loaded trade labour cost per hour minimum
loadedTradeLabourRateExTax โฅ 0 currency units/hour, ex taxโ A lower value is rejected before calculation.- Loaded trade labour cost per hour maximum
loadedTradeLabourRateExTax โค 10,000,000 currency units/hour, ex taxโ A higher value is rejected before calculation.- Round-trip distance minimum
roundTripDistanceKm โฅ 0 kilometres/call-outโ A lower value is rejected before calculation.- Round-trip distance maximum
roundTripDistanceKm โค 100,000 kilometres/call-outโ A higher value is rejected before calculation.- Vehicle cost per kilometre minimum
vehicleCostPerKmExTax โฅ 0 currency units/kilometre, ex taxโ A lower value is rejected before calculation.- Vehicle cost per kilometre maximum
vehicleCostPerKmExTax โค 10,000,000 currency units/kilometre, ex taxโ A higher value is rejected before calculation.- Displaced billable hours minimum
displacedBillableHours โฅ 0 hours/call-outโ A lower value is rejected before calculation.- Displaced billable hours maximum
displacedBillableHours โค 168 hours/call-outโ A higher value is rejected before calculation.- Displaced contribution per hour minimum
displacedContributionPerHourExTax โฅ 0 currency units/hour, ex taxโ A lower value is rejected before calculation.- Displaced contribution per hour maximum
displacedContributionPerHourExTax โค 10,000,000 currency units/hour, ex taxโ A higher value is rejected before calculation.- Expected follow-on job conversion minimum
expectedJobConversionRate โฅ 0 decimal fraction of call-outs converting to follow-on workโ A lower value is rejected before calculation.- Expected follow-on job conversion maximum
expectedJobConversionRate โค 1 decimal fraction of call-outs converting to follow-on workโ A higher value is rejected before calculation.- Follow-on job contribution minimum
expectedFollowOnJobContributionExTax โฅ 0 currency units/converted follow-on job, ex taxโ A lower value is rejected before calculation.- Follow-on job contribution maximum
expectedFollowOnJobContributionExTax โค 10,000,000 currency units/converted follow-on job, ex taxโ A higher value is rejected before calculation.- Target call-out margin minimum
targetCalloutMargin โฅ 0 decimal fraction of call-out feeโ A lower value is rejected before calculation.- Target call-out margin maximum
targetCalloutMargin โค 0.99 decimal fraction of call-out feeโ A higher value is rejected before calculation.- Proposed call-out fee minimum
proposedCalloutFeeExTax โฅ 0 currency units/call-out, ex taxโ A lower value is rejected before calculation.- Proposed call-out fee maximum
proposedCalloutFeeExTax โค 10,000,000 currency units/call-out, ex taxโ A higher value is rejected before calculation.
4. Assumptions and source classification
- Costs, capacity, contract terms, tax rates and targets are supplied by the user.
- No provider default, jurisdictional rule or industry benchmark is embedded.
- The shared engine retains full precision and display formatting never feeds 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 are only as reliable as the timing, scope and basis of the entered records.
- The workflow does not predict demand or establish accounting, tax, contractual or legal treatment.
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 planner and methodology after pre-launch calculation, content, source and interaction review.
Related reading
Guides to interpret the decision and its assumptions.
- Field-Service Economics: Travel, Labour and Capacity
Reconcile call-out work with travel, loaded labour, recovery and daily capacity on one job basis.
Read guide - Call-Out Fee vs Higher Hourly Rate
Compare a separate call-out fee with a higher hourly rate using aligned job mix, travel and recovery assumptions.
Read guide - Emergency and After-Hours Pricing
Build an after-hours scenario from incremental labour, disruption, capacity and response scope without prescribing a premium.
Read guide