How the calculation works
peerContributionLost = displacedUnits * peerContributionPerUnit
laterContributionLost = postPromoLostUnits * postPromoContributionPerUnit
netContributionChange = directContributionChange - peerContributionLost - laterContributionLost + haloContribution
The tool aggregates supplied effects; it does not identify cannibalization from your sales. Choose the commercial boundary: a retailer's category and a manufacturer's portfolio can give different answers.
A worked example
A promotion adds €5,000 on its own product. It displaces 200 peer units contributing €15 each and pulls forward 100 later units contributing €10 each. With €500 complementary-item contribution, the net change is €1,500.
Use it carefully
- Use mutually exclusive sets of lost units to avoid double-counting peer displacement and later-period effects.
- Peer and later-period contribution can be negative: displacing a loss-making sale may improve total contribution.
- The direct contribution change should already be net of the promoted product's discount, costs and funding.
- Value lost sales at the contribution that would have been earned, not at their full selling price.
- Two products moving in opposite directions is insufficient evidence that one caused the other's decline.
- Use the same time horizon, currency and cost definition for all components.
Common questions
Is switching from a competitor always a loss?
The answer depends on whose contribution you measure. A brand may gain from switching while a retailer loses contribution on a higher-margin alternative.
What is post-promotion payback?
A later sales shortfall can occur when customers buy earlier during the offer. Include only the part attributed to the offer under your chosen analysis.
Related calculations
Further context: Oracle: promotional cannibalization, halo and pre/post effects. Equations and examples were independently prepared for this calculator.
Bring a CSV to the MarginTrial workbench for contribution bridges, scenarios, and report exports.