A scenario

What happens if our biggest supplier raises prices 15 percent

Margin first, then the decision about whether to pass it on, then the customer answer to a decision you only made because somebody else made one. This is the only scenario on the list that starts with a letter you did not send.

Run this on your own numbersAll scenarios

Ships as a scenario: one lever, supplier_cost_pct at 15, landing in month one.

off track above 3.1%check here, month 3churn

Mechanics

What the model does with it

The lever moves one number, the supplier index, and that number multiplies your cost of goods every month from then on. Everything else in this scenario is the company reacting to it.

Before you run it

The lever applies the rise to your whole supplier share

The supplier index is multiplied by one plus the percentage times the share of your cost of goods that comes from suppliers. It does not know that only one supplier moved. On the invented Harborline record, supplier spend is about 68 percent of cost of goods and the single sourced billet is about 59 percent of that spend, so a 15 percent rise from that one supplier is about 9 percent blended. Enter the blended number, or the run will overstate the damage by two thirds.

Month 1

Cost of goods moves in the month the lever fires

Cost of goods is accounts times revenue per account times one minus gross margin times the supplier index. Entered at face value on Harborline, 15 percent across a 0.68 share lifts the index 10.2 percent and takes about 83,000 dollars a month out of a company making roughly 74,000 dollars a month of operating profit. Entered at the blended 9 percent it is about 50,000. Same lever, very different meeting.

Month 1 onward

There is no inventory and no contract protection

The new price applies to everything you buy from the month it lands. There is no stock at the old price working through, no hedge, no fixed price agreement running to its end date. If you have one of those, delay the lever to the month it expires rather than modelling the protection.

Months 1 to 12

Ordinary input drift continues underneath it

Every month the supplier index also drifts by a small normal draw centred just above zero, which is where the ordinary, noisy input inflation lives. It is small next to the shock and it is the reason two replications of the same scenario do not have identical cost lines.

Months 2 to 7

The finance lead decides who pays for it

Once the supplier index is above 1.05, and if price is below any regulatory cap, the finance lead passes part of it on. The rise applied is the index increase times the pass through assumption, which defaults to 45 percent. On the Harborline example at an index of 1.102, that is a price rise of about 4.6 percent on both the list price and the new business price. This is on a six month cooldown, so it happens once in a normal horizon.

Month 2 onward

And then the price rise machinery runs

A pass through is a price rise, so it inherits everything from that scenario: contracted revenue reprices only at renewal, competitors match a share of the move once after their lag, named accounts jump to the new price at their own renewal month, and partners may drift if the price index goes above 1.1.

Months 3 to 12

Whatever you did not pass on stays in your margin

Fifty five percent of the rise, at the default, is simply absorbed. That is a permanent reduction in gross profit, and it is the part that reaches runway, the investor and, if it goes far enough, the finance lead's own cost cutting rule. A supplier increase is the scenario most likely to end in a headcount decision that nobody connected to the supplier.

The ecosystem

Which agents move, and why

The supplier is the agent that starts this and the least active one in the run. The interesting behaviour is on your side of the invoice.

The supplier

Objectives: hold their own margin as their costs move at weight 0.5, keep your volume at 0.3, be paid on time at 0.2. In this scenario their decision is imposed rather than simulated, because you are asking what it costs you, not whether they will do it.

The finance lead

Objectives: protect margin at 0.45, protect cash at 0.4, keep the forecast credible at 0.15. Owns the pass through decision and owns the cost cutting rule underneath it. Both are on cooldowns.

Customer segments

Objective: pay as little as the job allows. They do not know your input costs moved. They see a price change and respond with the same elasticity they would to any other one.

Named accounts

Objective: renew at a price they can defend internally at weight 0.35. A cost driven increase is easier to defend than an opportunistic one, and the model does not know the difference. Treat the named account losses in this scenario as a worst case.

Competitors

Objective: take share when you give them an opening at 0.45. They match a share of your pass through, once, after their lag. If they buy from the same supplier they would be raising prices too, and the model does not know that either.

The sales lead

Objective: keep price defensible in the field at weight 0.2, which is the objective a cost driven rise puts under most pressure. With discount authority granted, three months under quota turns into field discounting that gives the pass through straight back.

The ledger

What this answer is standing on

AssumptionWhat it does hereWhy to check it first
Share of cost from suppliersMultiplies the percentage you entered before it reaches the indexThe single biggest lever on the size of this answer, and easy to read off a purchase ledger
Share of a cost rise you can pass onSets how much of it reaches customers and how much stays in your marginDefaults to 45 percent. Your last increase is better evidence than any prior
Gross marginTurns the index move into moneyA thin margin business is levered to this scenario and a fat one barely notices it
Price elasticity of demandDecides what the pass through costs you in volumeThe reason passing it all on is usually not the answer
Revenue under contract and months leftDecide how slowly the pass through actually reaches revenueA cost rise that lands immediately against a price rise that lands over a year is a cash flow problem as well as a margin one
Supplier concentrationNothing. It is computed into the ledger and the simulation does not read itIt is there to tell you whether the blended number above is the right one to enter
Supply lead timeNothing. Also in the ledger and not read by the engineNamed here so you do not assume the model is using it

Two of the rows in this table exist in the ledger and do not reach the simulation. They are listed because a model that quietly ignores a number you entered is worse than one that says so.

Honestly

Where this is weakest

The margin arithmetic here is the most reliable thing in the engine. Everything around the arithmetic is thinner than the decision needs.

  • One supplier index for all suppliers. You cannot raise one and hold another, so a multi supplier answer has to be entered as a blended number
  • No second source. Switching is a separate lever with its own disruption window, and the model will not find the alternative for you
  • No negotiation. Volume commitments, longer terms and payment days are all levers a real buyer has and none of them are here
  • No inventory, no hedging, no fixed price contract running out. The rise is total and immediate
  • Pass through is one number applied once, on a six month cooldown. Staged increases and customer by customer negotiation are not modelled
  • If the index lands below 1.05 the pass through rule never fires at all, which is a threshold rather than a judgement. A rise just under it will look cheaper than it is

What this cannot tell you

Monthly revenuedocumentGross margindocumentPrice elasticitydefaultMonthly churndocumentCompetitor reactiondefaultContracted revenuedefaultLargest customer sharederivedCost per headderived

The pass through question

Forty five percent is a default, not an answer

+56%price down 30%price up 60%profit
Profit against price at an elasticity of 1.8 and a gross margin of 31 percent, the shape of the invented Harborline twin, computed from the same equations the engine uses. How much of a cost rise you should pass on is the same question as where you sit on this curve, which is why the useful follow up to this scenario is a sweep on price rather than a second opinion about suppliers.

What people ask about this one

What number should I actually enter?

The rise weighted by that supplier's share of your total supplier spend. Fifteen percent from a supplier who is 59 percent of your spend is about 9 percent.

The supplier concentration figure in the ledger is there to help you work it out, even though the simulation does not read it. If you do not know the split, the purchase ledger will tell you in an hour and it is the highest value hour in this scenario.

Should I pass it on?

Run it three ways: the default pass through, none of it, and all of it, against the same baseline on the same seeds. The difference between the three is the actual decision. Passing none of it is not the safe option, because a permanent margin reduction reaches the runway rule and the runway rule cuts people.

How do I model switching to another supplier instead?

There is a separate lever for it. It moves the cost in either direction and adds a disruption window on quality and delivery while the new supplier learns your business, with the drag lifting when the window closes. Run both and compare. A cheaper supplier who costs you three months of on time delivery is not obviously cheaper.

Why does a cost rise end in a headcount cut in some runs?

Because a permanent margin reduction eats runway, and below a threshold set by the finance lead's own risk appetite they take out between 4 and 20 percent of headcount and 30 percent of marketing. That is not in the scenario you wrote. It is what this company does at that runway, and it is the most useful thing the run tells you.

Know the answer before the letter arrives

A single sourced input is a concentration risk in the same way one large customer is, and the graph shows both. This scenario puts a number and a band on one of them.

Build a twinAll fifteen scenarios