Methodology
Promotion Calendar Profit 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
periodAContributionExTax = period A incremental orders ร pre-discount contribution โ discount on baseline and incremental promoted orders โ campaign costWhere
- periodAOrders
- Period A baseline orders (operational units)Source: Business record
- periodAContributionPerOrder
- Period A contribution (currency units, ex tax)Source: Business record
- periodADiscountPerOrder
- Period A discount (currency units, ex tax)Source: Business record
- periodACampaignCost
- Period A campaign cost (currency units, ex tax)Source: Business record
- periodBOrders
- Period B baseline orders (operational units)Source: Business record
- periodBContributionPerOrder
- Period B contribution (currency units, ex tax)Source: Business record
- periodBDiscountPerOrder
- Period B discount (currency units, ex tax)Source: Business record
- periodBCampaignCost
- Period B campaign cost (currency units, ex tax)Source: Business record
- periodAContributionExTax
- Period AContribution Ex Tax (currency units, ex tax)Source: Calculated output
- totalContributionExTax
- Total Contribution Ex Tax (currency units, ex tax)Source: Calculated output
- baselineOrders
- Orders expected without the promotion (whole orders)Source: Business record
- campaignCost
- Fixed promotion campaign cost (currency units)Source: Business record
periodBContributionExTax = period B incremental orders ร pre-discount contribution โ discount on baseline and incremental promoted orders โ campaign costWhere
- periodAOrders
- Period A baseline orders (operational units)Source: Business record
- periodAContributionPerOrder
- Period A contribution (currency units, ex tax)Source: Business record
- periodADiscountPerOrder
- Period A discount (currency units, ex tax)Source: Business record
- periodACampaignCost
- Period A campaign cost (currency units, ex tax)Source: Business record
- periodBOrders
- Period B baseline orders (operational units)Source: Business record
- periodBContributionPerOrder
- Period B contribution (currency units, ex tax)Source: Business record
- periodBDiscountPerOrder
- Period B discount (currency units, ex tax)Source: Business record
- periodBCampaignCost
- Period B campaign cost (currency units, ex tax)Source: Business record
- periodBContributionExTax
- Period BContribution Ex Tax (currency units, ex tax)Source: Calculated output
- totalContributionExTax
- Total Contribution Ex Tax (currency units, ex tax)Source: Calculated output
- baselineOrders
- Orders expected without the promotion (whole orders)Source: Business record
- campaignCost
- Fixed promotion campaign cost (currency units)Source: Business record
totalContributionExTax = period A incremental profit delta + period B incremental profit deltaWhere
- periodAContributionPerOrder
- Period A contribution (currency units, ex tax)Source: Business record
- periodBContributionPerOrder
- Period B contribution (currency units, ex tax)Source: Business record
- totalContributionExTax
- Total Contribution Ex Tax (currency units, ex tax)Source: Calculated output
- incrementalProfitDelta
- Promotion incremental profit delta (currency units)Source: Calculated output
bestPeriodRank = rank of period A by incremental profit deltaWhere
- bestPeriodRank
- Best Period Rank (units)Source: Calculated output
- incrementalProfitDelta
- Promotion incremental profit delta (currency units)Source: Calculated output
incrementalProfitDelta = baselineOrders ร incrementalOrderRate ร contributionBeforeDiscount โ baselineOrders ร (1 + incrementalOrderRate) ร discountPerOrder โ campaignCostWhere
- totalContributionExTax
- Total Contribution Ex Tax (currency units, ex tax)Source: Calculated output
- baselineOrders
- Orders expected without the promotion (whole orders)Source: Business record
- incrementalOrderRate
- Incremental order-rate assumption (decimal rate)Source: User assumption
- contributionBeforeDiscount
- Contribution per order before discount (currency units per order)Source: Business record
- discountPerOrder
- Discount per baseline and incremental promoted order (currency units per order)Source: User decision
- campaignCost
- Fixed promotion campaign cost (currency units)Source: Business record
- incrementalProfitDelta
- Promotion incremental profit delta (currency units)Source: Calculated output
breakEvenIncrementalRate = (baselineOrders ร discountPerOrder + campaignCost) รท (baselineOrders ร (contributionBeforeDiscount โ discountPerOrder))Where
- totalContributionExTax
- Total Contribution Ex Tax (currency units, ex tax)Source: Calculated output
- baselineOrders
- Orders expected without the promotion (whole orders)Source: Business record
- incrementalOrderRate
- Incremental order-rate assumption (decimal rate)Source: User assumption
- contributionBeforeDiscount
- Contribution per order before discount (currency units per order)Source: Business record
- discountPerOrder
- Discount per baseline and incremental promoted order (currency units per order)Source: User decision
- campaignCost
- Fixed promotion campaign cost (currency units)Source: Business record
- breakEvenIncrementalRate
- Break-even incremental order rate (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 worked rows below come directly from the registered engine and visible default fixture.
Calculation and outputs
Example
The worked rows below come directly from the registered engine and visible default fixture.
- Period AContribution Ex Tax
- -4,600 currency units
- Period BContribution Ex Tax
- -7,000 currency units
- Total Contribution Ex Tax
- -11,600 currency units
- Best Period Rank
- 1
The exact engine-derived outputs are shown in the labelled rows below.
Interpretation
Total incremental profit delta combines the two entered promotion periods after discounts, fixed campaign costs and assumed order lift.
3. Validation and boundary checks
- All values must be finite and inside the visible validation boundaries.
- Rates are entered as percentages and calculations retain decimal precision.
- Money uses one consistent ex-tax currency and planning period.
4. Assumptions and source classification
- Provider fees, exchange rates, return behaviour and operating performance are user-entered scenarios.
- No provider plan, jurisdiction, tax rate or market benchmark is embedded.
- The engine retains full precision and display formatting never feeds back into calculation.
- The embedded promo-code workflow treats attribution and the incremental-order rate as user assumptions, not causal evidence.
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 forecast demand, provider changes, exchange rates or operational performance.
- 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
- : 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.
- How to Test a Promotion Before Launching It
Define a bounded offer cadence, test no-lift economics and review full-price recovery without making behavioural promises.
Read guide