Freight Risk Stress Tester — User Guide

Module 03 · Predictive Budgeting & Risk
Module 03 · Predictive Budgeting & Risk

How bad can a tight market get, and which capacity mix survives it?

A budget is a forecast of the normal year. This is the abnormal one. Capacity is bought through three channels — a dedicated fleet on a minimum commitment, a contracted routing guide, and the spot market — and each behaves differently when the market tightens. Contract tenders get rejected and fall through to spot at whatever the market charges that day; if spot has no capacity either, the load goes unserved and carries a service penalty. The tool prices that cascade under named scenarios and searches for the mix that holds up, with the objective function you choose making the decision explicit.

Who uses it
Transportation procurement, logistics finance, risk owners
When
Alongside the annual budget, and before any bid cycle
Time to first answer
Immediate; the optimal-mix search takes a few seconds
Quick start

From open page to a capacity commitment

Set the baseline on tab 1

Annual loads, average length of haul, peak concentration. Then the three channel rates and the dedicated terms — overhead per truck and, critically, the minimum commitment percentage. The fleet is sized for the peak month but billed all year at that percentage, and the gap is the cost of the insurance.

Set tender acceptance and contracted capacity

Also on tab 1. Contracted capacity is the share of demand carriers actually committed to. Tender above it and acceptance decays — pushing 100% of volume through a guide committed for 65% does not hold 92% acceptance.

Set the mix on tab 2

Dedicated and contract shares; spot is the residual. The bar shows the split and a note underneath tells you the effective spot exposure, which is always higher than planned because of rejections.

Run the named scenarios on tab 3

Calm, base, tight, crisis. Each moves fuel, spot rate, volume and acceptance together — because in a real tight market they move together.

Search for the optimal mix

Tab 2 → choose an objective and press search. Minimise expected cost, minimise P90, or minimise the worst-decile average. Choosing the objective is the risk appetite decision, and the three answers are usually different.
Screen map

What each tab is for

Tab 1 sets the economics, tab 2 the commitment, tab 3 the stress, tab 4 the answer.

TabWhat it controlsLeave it alone unless
1. BaselineDemand, channel rates, dedicated terms, tender acceptance, contracted capacity and its decay, service penalty.Never — the dedicated terms in particular decide everything downstream.
2. Fleet mixDedicated and contract shares, objective function, optimal-mix search, mix comparison table.Never.
3. ShocksNamed scenarios, individual shock dials, Monte Carlo sigmas and the spot/acceptance correlation.You only want the deterministic scenario ladder.
4. ResultsStressed cost, percentile bands, cost build-up, scenario ladder and flags.Never.
Reading the output

What the outputs are telling you

The cheapest mix on average is almost never the mix that survives a bad year. That gap is the whole point of the exercise.

MetricWhat it meansWhat to do about it
Effective spot exposurePlanned spot share plus the contract volume that got rejected into spot.Always higher than the planned figure. This is the number that actually determines market exposure, and it is rarely the one in the procurement deck.
P90 and CVaR10The bad-year cost, and the average of the worst ten percent of outcomes.Budget against P90. CVaR tells you how bad the tail gets beyond it.
Resilience curveExpected, P10 and P90 cost across dedicated share.P90 usually forms a U while expected cost rises monotonically. The gap between where those two bottom out is the price of insurance.
Dedicated unused commitmentMiles billed but not moved, because the fleet is sized for peak.This is the premium you pay in a normal year. If it looks large, that is the model working correctly, not an error.
Unserved loadsDemand that found no capacity in any channel.Anything above zero in the base case means the network is structurally short of committed capacity.
Use cases

Three questions this actually settles

Use case 1

What does a tight capacity market actually cost us?

Set upSet the baseline to your real volumes and rates. Tab 3 → click through Calm, Base, Tight and Crisis.
WatchThe scenario ladder on tab 4 shows total cost, effective spot exposure and unserved loads for each. Crisis typically lands well above base, with unserved loads appearing for the first time.
DecideThe crisis number, not the average year, is what justifies committing to dedicated capacity. Present both — the premium paid in a calm year and the exposure avoided in a bad one.
Use case 2

How much dedicated capacity should we commit to?

Set upTab 2 → run the optimal-mix search three times, once for each objective.
WatchThe three answers differ. Risk-neutral typically wants little or no dedicated capacity; P90 and CVaR objectives typically want a meaningful share.
DecidePick the objective first, as a stated risk appetite, then take the mix it produces. Presenting the P90-optimal mix without naming the objective invites an argument you cannot win.
Use case 3

Is our routing guide over-tendered?

Set upTab 1 → set contracted capacity to what carriers actually committed to, and tender share on tab 2 to what you actually tender.
WatchWhen tender exceeds contracted capacity, acceptance decays and a flag quantifies the drop. The excess reappears as spot volume at market rates.
DecideEither contract more capacity or tender less. Routing guide compliance is a cost line, not a service metric — this is where that becomes visible in dollars.
Pitfalls

Where people misread this tool

Every one of these has actually happened during testing.

Dedicated economics hinge on the minimum commitment

An early version applied no per-mile rate to dedicated capacity, which made it monotonically cheaper at every share — the trade-off vanished entirely. The model now bills the greater of actual miles or the committed minimum. If your real contract has different terms, that percentage is the first thing to change.

Acceptance does not hold when you over-tender

Without the decay mechanism the optimum came out as “tender everything to contract” — trivially wrong, and exactly the assumption that produces surprise spot spend in a real tight market.

Uncorrelated shocks understate the tail

Spot rates spiking and acceptance falling are the same event. The correlation dial defaults to −0.70 for that reason. Set it to zero and compare P90: the difference is the amount an independent-variable model quietly hides.

A scenario ladder is not a probability

Named scenarios are illustrative combinations, not forecasts with likelihoods attached. The Monte Carlo distribution is where probability lives. Use the ladder to communicate and the distribution to budget.
Data in and out

Files this tool reads and writes

DirectionFilePurpose
InNo file input. Baseline figures can be taken from the Budget simulator’s assumption registry by hand.
Outfreight_risk_stress_test.csvCost build-up, Monte Carlo percentiles including CVaR, the full scenario ladder, the resilience curve and every assumption.
Where it sits in the loop
This sits alongside the Budget simulator in the forward-looking stage. The budget models the normal year and produces a P90 band from ordinary variability; this tool models the abnormal year and prices structural defence against it. Read them together — a budget band that ignores capacity risk is narrower than reality.