An order surge is evidence that a lower price changed behaviour. It isn’t evidence that the promotion created growth.
The missing stage is cash conversion. A discount changes the amount you keep from each sale, the number of sales you have to fulfil, and often the day the buyer pays. Stock, labour, freight, card fees, or a contractor can leave your bank before the discounted cash arrives. Growth can be doing exactly what the dashboard says while the bank takes a different view. Banks remain irritatingly literal.
The cash conversion cycle is the handle: DIO + DSO − DPO — days inventory outstanding plus days sales outstanding minus days payable outstanding. A promotion can raise DIO through a pre-buy, extend DSO through invoice terms, and increase DPO pressure when you ask suppliers to wait. None of that is repaired by an enthusiastic revenue chart.
The Exchange
Start by defining the concession. A discount isn’t “10% off,” or any other percentage floating free of its denominator. It’s a price reduction exchanged for something you can name and verify.
- Volume → the buyer commits to a stated quantity; you get production or purchasing efficiency.
- Commitment or prepayment → the buyer accepts a longer term or pays earlier; you get retention or cash timing.
- Reduced scope or delivery risk → the buyer gives up service, flexibility, or uncertainty; you get a lower cost or safer delivery.
If your agreement contains none of those, you haven’t designed a promotion. You’ve disclosed a lower acceptable price. That may still be the right call, but call it the thing it is.
Keep the record intact: canonical price, concession, consideration received, approving authority, expiry, and final net price. The price in your system isn’t merely an invoicing field. It’s the evidence you need to see whether the same customer returns at full price, whether an account manager has started padding quotes, and whether a one-time exception has become the renewal baseline.
The percentage labels matter here. Markup uses cost as its denominator. Gross margin uses revenue. A discount needs its reference price.
A 25% markup on cost and a 25% gross margin on revenue don’t produce the same selling price, and the corpus’s fabrication illustration puts $312.50 between them.
Don’t let a discount report hide which price, cost basis, or denominator it’s reducing. A percentage without its base is a magician’s sleeve.
The Cash Calendar
For the operating horizon, use a 13-week direct-method forecast rebuilt weekly from reconciled bank cash.
Put receipts in the week they’re expected to clear. Put inventory, payroll, payroll tax, supplier runs, delivery, rent, subscriptions, and debt service in the weeks they’re expected to release. Put financing below the operating position, not inside it.
Then make the promotion visible as three separate movements:
- Fulfilment disbursements → inventory deposits, materials, labour, shipping, commissions, and payment costs, on the dates they leave cash.
- Customer receipts → card settlements, prepaid subscriptions, or invoice collections, on their expected clearing dates.
- Residual exposure → unbilled work, open orders, inventory still held, and receivables that don’t yet count as available cash.
Order date isn’t a cash date. Invoice date isn’t automatically a cash date either.
Your customer’s realized payment behaviour matters more than the term printed on the invoice, which is why a forecast built from sales booking dates models a business you don’t have.
Past the near term, switch the view. Rebuild the longer forecast monthly from forecast net income, noncash charges, and projected changes in receivables, payables, and inventory. Its matching month should reconcile to your week-13 exit balance. If the two views disagree, don’t average them. One is carrying stale assumptions.
Buffer days give the promotion a consequence. The measure is average daily cash balance divided by average daily cash outflow — how long you can keep paying if inflows stop. Published small-business medians sit lower than most owners expect, and they aren’t targets. They’re a reminder that a sale which pulls the trough forward isn’t free just because its month ends positive.
The Tradeoffs
The exchange changes by commercial model. That’s why one universal “promo ROI” cell tends to become a decorative fib.
| Business model | What the buyer receives | What the seller gets back | Cash-out date | Collection date |
|---|---|---|---|---|
| Repeatable goods | Lower unit price for a stated quantity | Volume and potential production or purchasing efficiency | Inventory, materials, labour, and delivery dates | Card settlement or the customer’s expected invoice clearing date |
| Subscription | Lower price for annual prepayment or a longer commitment | Earlier cash and a defined renewal base | Implementation, support, hosting, and acquisition-cost dates | Annual prepayment date or recurring billing settlement date |
| Project or service quote | Lower price for reduced scope, better access, or lower delivery risk | A narrower cost and risk boundary | Labour, subcontractor, and material release dates | Milestone approval, accepted delivery, or valid-invoice clearing date |
| Perishable capacity | Lower price for an off-peak period or expiring slot | Demand moved into capacity that would otherwise expire | Staffing, delivery-window, or operating-cost date | Point-of-sale settlement or contracted collection date |
That table is a control, not a taxonomy project. Each row needs an actual named date in your forecast. “Promotion cash” is too blended to manage.
The Scorecard
Measure the promotion in lanes. Revenue, contribution, volume, retention, and customer mix are separate results. A rise in one doesn’t prove improvement in the others.
- Revenue asks whether discounted sales actually rose.
- Contribution asks whether the dollars left after the relevant variable and fulfilment costs rose.
- Volume and mix ask whether new demand appeared, or full-price purchases simply moved forward, stockpiled, or shifted toward a lower-value buyer cohort.
Add retention and renewal to the same record. An annual prepayment discount can be sensible when it buys a defined term and cash timing.
A permanent legacy rate can make your longest-tenured customers the least profitable even while they stay loyal. The promotion needs a reference price and a future renewal precedent, not just an expiry banner.
The external evidence is sobering. In a retail-electricity field experiment, actors collected standardized offers from incumbent retailers and entrants. Retailers discounted in 93% of negotiations, and the negotiated annual bill averaged 9% below the posted contract.
That isn’t a universal pricing benchmark. It’s a clean demonstration that discretionary concessions create distributions of realized prices, and teach buyers which number to negotiate from.
For consumer offers, the reference is also a compliance issue. Current EU rules require an announced reduction to reference the item’s lowest price during the preceding 30 days.
In a 2025 enforcement sweep, at least 30% of screened traders didn’t comply, and six in ten using comparative prices didn’t clearly explain the reference.
The legal rule isn’t portable outside its jurisdiction. The control is: preserve the real reference price and the time window.
Follow the Symptom
Follow the symptom to the stage that’s broken.
Orders rise, but the bank balance falls → fulfilment-and-collection timing is broken
Your forecast has sales but no separate inventory, labour, delivery, settlement, and invoice-clearing weeks. Rebuild the promotion as receipts and disbursements from reconciled bank cash.
Revenue rises while contribution dollars fall → the concession basis is broken
The report has the discount percentage but not the reference price, cost basis, or denominator. Recalculate realized price and contribution per order before you call the campaign successful.
The promotion creates a low week before payroll or a supplier run → working-capital capacity is broken
You’re overtrading: conducting more business than your working capital can support. Inspect DIO, DSO, and DPO rather than asking sales to create more orders.
Sales peak during the offer, then full-price demand disappears → demand timing is broken
Purchases were accelerated or stockpiled. Separate new customers, repeat customers, post-expiry demand, and retention from the headline volume.
Customers wait for the next sale or demand the old net price at renewal → the reference price is broken
The concession reset the buyer’s comparison point instead of buying commitment, volume, or reduced scope. Preserve the canonical price, expiry, and renewal precedent.
The month closes positive but a promotion week goes thin → the measurement point is broken
Record the daily or intraday liquidity trough. Month-end cash can’t fund an obligation that clears earlier in the month.
Close each week by replacing its forecast line with bank-categorized actuals. Keep the original forecast, the latest estimate, and the actual. Grade receipts and payments separately at 1 week, 4 weeks, and 13 weeks. A small net error can be two large errors that happen to cancel. That isn’t accuracy. It’s a coincidence wearing a tie.
A discount that buys commitment can improve cash timing. A discount that buys nothing is a lower realized price. A sales spike can show demand moved. A cash forecast shows whether you can afford the move.
Price the exchange. Forecast the dates. Treat a promotion as growth only after contribution, cash, and retention agree.