Skip to main content

Methodology

Retainer Pricing Planner methodology

Set included scope, overage pricing and capacity for a sustainable retainer. The scope buffer grosses delivery cost up by dividing by one minus the entered rate.

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

Delivery Cost
deliveryCost = included hours ร— loaded cost + monthly overhead

Where

includedHours
Included hours (hours/month)Source: User assumption
monthlyOverhead
Monthly overhead (currency units/month)Source: Business record
deliveryCost
Delivery Cost (currency units/month)Source: Calculated output
Protected Delivery Cost
protectedDeliveryCost = delivery cost รท (1 โˆ’ scope buffer)

Where

scopeBufferRate
Scope buffer (proportion of delivery cost added as scope buffer)Source: User decision
deliveryCost
Delivery Cost (currency units/month)Source: Calculated output
protectedDeliveryCost
Protected Delivery Cost (currency units/month)Source: Calculated output
Monthly Fee
monthlyFee = protected delivery cost รท (1 โˆ’ target margin)

Where

targetMargin
Target margin (proportion of client price retained as contribution)Source: User decision
deliveryCost
Delivery Cost (currency units/month)Source: Calculated output
protectedDeliveryCost
Protected Delivery Cost (currency units/month)Source: Calculated output
monthlyFee
Monthly Fee (currency units/month)Source: Calculated output
margin
Margin (decimal rate)Source: Calculated output
Annual Fee
annualFee = monthly fee ร— 12

Where

monthlyFee
Monthly Fee (currency units/month)Source: Calculated output
annualFee
Annual Fee (currency units/year)Source: Calculated output
Included Capacity Hours
includedCapacityHours = included hours

Where

includedHours
Included hours (hours/month)Source: User assumption
includedCapacityHours
Included Capacity Hours (hours/month)Source: Calculated output
Productive Capacity Hours
productiveCapacityHours = monthly capacity ร— utilisation

Where

utilisation
Productive utilisation (proportion of available retainer capacity billable)Source: User assumption
monthlyCapacityHours
Monthly capacity hours (hours/month)Source: User assumption
productiveCapacityHours
Productive Capacity Hours (hours/month)Source: Calculated output
Overage Rate
overageRate = loaded cost รท (1 โˆ’ overage target margin)

Where

targetMargin
Target margin (proportion of client price retained as contribution)Source: User decision
overageTargetMargin
Overage target margin (proportion of overage price retained as contribution)Source: User decision
overageRate
Overage Rate (currency units/hour)Source: Calculated output
margin
Margin (decimal rate)Source: Calculated output
Overage Revenue
overageRevenue = overage hours ร— overage rate

Where

overageHours
Expected overage hours (hours/month)Source: User assumption
overageRate
Overage Rate (currency units/hour)Source: Calculated output
overageRevenue
Overage Revenue (currency units/month)Source: Calculated output
totalRevenue
Total Revenue (currency units/month)Source: Calculated output
Total Revenue
totalRevenue = monthly fee + overage revenue

Where

monthlyFee
Monthly Fee (currency units/month)Source: Calculated output
overageRevenue
Overage Revenue (currency units/month)Source: Calculated output
totalRevenue
Total Revenue (currency units/month)Source: Calculated output
Margin
margin = (total revenue โˆ’ total cost) รท total revenue

Where

totalRevenue
Total Revenue (currency units/month)Source: Calculated output
margin
Margin (decimal rate)Source: Calculated output
Remaining Capacity Hours
remainingCapacityHours = productive capacity โˆ’ included โˆ’ overage hours

Where

includedHours
Included hours (hours/month)Source: User assumption
overageHours
Expected overage hours (hours/month)Source: User assumption
includedCapacityHours
Included Capacity Hours (hours/month)Source: Calculated output
productiveCapacityHours
Productive Capacity Hours (hours/month)Source: Calculated output
remainingCapacityHours
Remaining Capacity Hours (hours/month)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 are rendered from the registered engine and visible default fixture.

Included hours
20 hours/month
Loaded cost per hour
55 currency units/hour
Monthly overhead
250 currency units/month
Productive utilisation
0.8 proportion of available retainer capacity billable
Scope buffer
0.1 proportion of delivery cost added as scope buffer
Target margin
0.35 proportion of client price retained as contribution
Expected overage hours
5 hours/month
Overage target margin
0.4 proportion of overage price retained as contribution
Monthly capacity hours
40 hours/month

Calculation and outputs

  1. deliveryCost

    deliveryCost = included hours ร— loaded cost + monthly overhead
    Included hours
    20 hours/month
    Loaded cost per hour
    55 currency units/hour
    Monthly overhead
    250 currency units/month
    Expected overage hours
    5 hours/month
    Monthly capacity hours
    40 hours/month
    protectedDeliveryCost
    1,500 declared output unit
    monthlyFee
    2,307.692308 declared output unit
    includedCapacityHours
    20 declared output unit
    productiveCapacityHours
    32 declared output unit
    remainingCapacityHours
    7 declared output unit

    Engine result: 1,350

  2. protectedDeliveryCost

    protectedDeliveryCost = delivery cost รท (1 โˆ’ scope buffer)
    Loaded cost per hour
    55 currency units/hour
    Scope buffer
    0.1 proportion of delivery cost added as scope buffer
    deliveryCost
    1,350 declared output unit

    Engine result: 1,500

  3. monthlyFee

    monthlyFee = protected delivery cost รท (1 โˆ’ target margin)
    Loaded cost per hour
    55 currency units/hour
    Target margin
    0.35 proportion of client price retained as contribution
    Overage target margin
    0.4 proportion of overage price retained as contribution
    deliveryCost
    1,350 declared output unit
    protectedDeliveryCost
    1,500 declared output unit
    margin
    0.358285 declared output unit

    Engine result: 2,307.692308

  4. annualFee

    annualFee = monthly fee ร— 12
    Monthly overhead
    250 currency units/month
    Monthly capacity hours
    40 hours/month
    monthlyFee
    2,307.692308 declared output unit

    Engine result: 27,692.307692

  5. includedCapacityHours

    includedCapacityHours = included hours
    Included hours
    20 hours/month
    Expected overage hours
    5 hours/month
    Monthly capacity hours
    40 hours/month
    productiveCapacityHours
    32 declared output unit
    remainingCapacityHours
    7 declared output unit

    Engine result: 20

  6. productiveCapacityHours

    productiveCapacityHours = monthly capacity ร— utilisation
    Monthly overhead
    250 currency units/month
    Productive utilisation
    0.8 proportion of available retainer capacity billable
    Monthly capacity hours
    40 hours/month
    monthlyFee
    2,307.692308 declared output unit
    includedCapacityHours
    20 declared output unit
    remainingCapacityHours
    7 declared output unit

    Engine result: 32

  7. overageRate

    overageRate = loaded cost รท (1 โˆ’ overage target margin)
    Loaded cost per hour
    55 currency units/hour
    Target margin
    0.35 proportion of client price retained as contribution
    Expected overage hours
    5 hours/month
    Overage target margin
    0.4 proportion of overage price retained as contribution
    deliveryCost
    1,350 declared output unit
    protectedDeliveryCost
    1,500 declared output unit
    overageRevenue
    458.333333 declared output unit
    margin
    0.358285 declared output unit

    Engine result: 91.666667

  8. overageRevenue

    overageRevenue = overage hours ร— overage rate
    Included hours
    20 hours/month
    Scope buffer
    0.1 proportion of delivery cost added as scope buffer
    Expected overage hours
    5 hours/month
    Overage target margin
    0.4 proportion of overage price retained as contribution
    Monthly capacity hours
    40 hours/month
    includedCapacityHours
    20 declared output unit
    productiveCapacityHours
    32 declared output unit
    overageRate
    91.666667 declared output unit
    remainingCapacityHours
    7 declared output unit

    Engine result: 458.333333

  9. totalRevenue

    totalRevenue = monthly fee + overage revenue
    Monthly overhead
    250 currency units/month
    Expected overage hours
    5 hours/month
    Overage target margin
    0.4 proportion of overage price retained as contribution
    Monthly capacity hours
    40 hours/month
    monthlyFee
    2,307.692308 declared output unit
    annualFee
    27,692.307692 declared output unit
    overageRate
    91.666667 declared output unit
    overageRevenue
    458.333333 declared output unit

    Engine result: 2,766.025641

  10. margin

    margin = (total revenue โˆ’ total cost) รท total revenue
    Loaded cost per hour
    55 currency units/hour
    deliveryCost
    1,350 declared output unit
    protectedDeliveryCost
    1,500 declared output unit
    overageRevenue
    458.333333 declared output unit
    totalRevenue
    2,766.025641 declared output unit

    Engine result: 0.358285

  11. remainingCapacityHours

    remainingCapacityHours = productive capacity โˆ’ included โˆ’ overage hours
    Included hours
    20 hours/month
    Productive utilisation
    0.8 proportion of available retainer capacity billable
    Expected overage hours
    5 hours/month
    Overage target margin
    0.4 proportion of overage price retained as contribution
    Monthly capacity hours
    40 hours/month
    includedCapacityHours
    20 declared output unit
    productiveCapacityHours
    32 declared output unit
    overageRate
    91.666667 declared output unit
    overageRevenue
    458.333333 declared output unit

    Engine result: 7

Example

The worked rows are rendered from the registered engine and visible default fixture.

Delivery Cost
1,350 currency units/month
Protected Delivery Cost
1,500 currency units/month
Monthly Fee
2,307.69 currency units/month
Annual Fee
27,692.31 currency units/year
Included Capacity Hours
20 hours/month
Productive Capacity Hours
32 hours/month
Overage Rate
91.67 currency units/hour
Overage Revenue
458.33 currency units/month
Total Revenue
2,766.03 currency units/month
Margin
35.8%
Remaining Capacity Hours
7 hours/month

The exact engine-derived outputs are shown in the labelled rows below.

Interpretation

The retainer pricing result uses only the entered commercial assumptions.

3. Validation and boundary checks

  • Inputs must be finite and remain within the visible boundaries.
  • Rates are decimal values and all monetary inputs use one consistent currency and period.
  • Whole operational capacity is rounded only where the engine explicitly applies floor or ceiling.
  • The scope buffer grosses delivery cost up by dividing by one minus the buffer rate before the target-margin gross-up.
Included hours minimum
includedHours โ‰ฅ 0 hours/month โ€” A lower value is rejected before calculation.
Included hours maximum
includedHours โ‰ค 10,000,000 hours/month โ€” A higher value is rejected before calculation.
Loaded cost per hour minimum
loadedCostPerHour โ‰ฅ 0 currency units/hour โ€” A lower value is rejected before calculation.
Loaded cost per hour maximum
loadedCostPerHour โ‰ค 10,000,000 currency units/hour โ€” A higher value is rejected before calculation.
Monthly overhead minimum
monthlyOverhead โ‰ฅ 0 currency units/month โ€” A lower value is rejected before calculation.
Monthly overhead maximum
monthlyOverhead โ‰ค 10,000,000 currency units/month โ€” A higher value is rejected before calculation.
Productive utilisation minimum
utilisation โ‰ฅ 0 proportion of available retainer capacity billable โ€” A lower value is rejected before calculation.
Productive utilisation maximum
utilisation โ‰ค 0.99 proportion of available retainer capacity billable โ€” A higher value is rejected before calculation.
Scope buffer minimum
scopeBufferRate โ‰ฅ 0 proportion of delivery cost added as scope buffer โ€” A lower value is rejected before calculation.
Scope buffer maximum
scopeBufferRate โ‰ค 0.99 proportion of delivery cost added as scope buffer โ€” A higher value is rejected before calculation.
Target margin minimum
targetMargin โ‰ฅ 0 proportion of client price retained as contribution โ€” A lower value is rejected before calculation.
Target margin maximum
targetMargin โ‰ค 0.99 proportion of client price retained as contribution โ€” A higher value is rejected before calculation.
Expected overage hours minimum
overageHours โ‰ฅ 0 hours/month โ€” A lower value is rejected before calculation.
Expected overage hours maximum
overageHours โ‰ค 10,000,000 hours/month โ€” A higher value is rejected before calculation.
Overage target margin minimum
overageTargetMargin โ‰ฅ 0 proportion of overage price retained as contribution โ€” A lower value is rejected before calculation.
Overage target margin maximum
overageTargetMargin โ‰ค 0.99 proportion of overage price retained as contribution โ€” A higher value is rejected before calculation.
Monthly capacity hours minimum
monthlyCapacityHours โ‰ฅ 0 hours/month โ€” A lower value is rejected before calculation.
Monthly capacity hours maximum
monthlyCapacityHours โ‰ค 10,000,000 hours/month โ€” A higher value is rejected before calculation.

4. Assumptions and source classification

  • All costs, prices, hours, probabilities and volumes are user-supplied; no market benchmark is inferred.
  • Tax is outside these neutral commercial comparisons.
  • The engine retains full precision; 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

  • The model does not predict demand, delivery performance, contract enforceability or customer behaviour.
  • It does not replace 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