Why booked air cargo gets left behind
Updated August 30, 2026
Erik Törnblom
CEO and Founder, MSc Engineering (Computer Science)
A ULD booking works like a contract. The forwarder commits to the airline, the shipper is told which flight their cargo is on, and everyone downstream plans around that date. When a house waybill comes off the unit during build-up, the contract is broken quietly, hours before departure, in a warehouse.
The evaluation described below measured that as flown as booked: the house waybills actually loaded, divided by the house waybills that were pre-booked. It is a customer satisfaction measure rather than an efficiency one. Utilisation tells you how much of the unit you used; flown as booked tells you how often you kept your word.
The booking is made before anyone knows whether it fits
This is the part that surprises people from outside air freight.
Cargo is pre-booked onto a unit with open capacity long before it is built. The pre-booking decision runs on the revenue available to cover the cost of the unit, on the ETA a particular shipment has been promised, and on how important the customer is. Those are all sound commercial inputs. None of them is a dimension.
Committing early is not one gateway’s bad habit — it is how the market is priced. Airlines discount containers booked in advance, typically about a week before the shipment day, and penalise a forwarder twice over for guessing wrong: extra units booked on the day cost more than the advance rate, and pre-booked units handed back unused are charged at the deposit. Zhu and colleagues model that commitment for the quantity of cargo that will turn up. What follows is the other half of the same problem, and the harder half: the pieces are already known, and it is still an open question whether they fit.
So at the moment the booking is confirmed, nobody knows whether the pre-booked house waybills fit the unit together — whether they comply with the contour, the payload, and the stacking rules all at once. That is discovered later, by the people building it.
A graduation thesis carried out at the Schiphol (AMS) air gateway of one of the world’s largest freight forwarders describes exactly that sequence. It was commissioned by them to decide whether to license this tool, we supported it while it ran, and the results were shared with us — so treat it as a customer’s own evaluation rather than a disinterested one. It covered a single lane over twelve months of 2019: 93 master waybills, 166 units. In 53 of the 93 consolidations, pre-booked cargo could not be loaded — established from the warehouse’s own build lists rather than inferred. Not an unlucky week. Well over half of them.
What an offload actually costs
The obvious cost is the shipment that did not move. The costs around it are larger and less visible:
- The unit is paid for either way. In almost all cases the airline charges for the unit whether it flies full or empty, so a last-minute offload can mean paying for a unit that leaves with open capacity.
- It has already been built. The problem surfaces during build-up, which means the warehouse takes the unit apart and rebuilds it — a cost in hours, at the worst point in the day to be spending them.
- The problem moves rather than clears. An offloaded house waybill takes top priority on the next booking. Capacity you had planned to sell to someone else is now committed to a shipment that should already have gone.
- Capacity nobody filled. At the point the offload happens it is too late to pre-book something that would have fitted in the space that opened up. The space is lost twice.
- A missed ETA the customer notices. Reliability is what a shipper is buying. Enough missed dates and cargo starts going to a different forwarder.
You would expect the two numbers to fight each other
Load factor and flown as booked look like opposites. Fill units harder and you would expect to roll more shipments, because the space you just used is the margin that would have absorbed a piece that measured larger than expected. Protect the promise and you fly emptier.
That expectation is what makes the evaluation’s result interesting. The same manifests were replanned — identical cargo, same units, one year of real consolidations — and both numbers moved the same way:
| Before | After | |
|---|---|---|
| Load factor — volume built into the unit ÷ its maximum | 68.0% | 70.4% |
| Flown as booked | 87.8% | 90.7% |
Those two percentages are averages taken across the consolidations, so the counts underneath them are a related but separate measure — worth stating on their own terms. Across the 53 affected consolidations, offloaded house waybills fell from 111 to 75. Thirty-six shipments that would have been rolled, flew.
They do not have to trade off, because the trade-off was never really between utilisation and reliability. It was between both of those and not knowing. A plan checked against real dimensions before the booking is confirmed buys back space and reliability at the same time, because it is spending information rather than margin.
It did not improve everything, and the shape of that is more interesting than the averages. On utilisation the replan came out ahead in 35 of the 53 affected consolidations, level in 16 and behind in 2 — so it matched or beat the plan the builders had made in 51 of 53. On flown as booked it was ahead in 25, level in 25 and behind in 3. Some of the improved plans also needed a person to finish them by hand rather than being solved outright, which the evaluation reports.
Be precise about what that is, though, because it is narrower than it first looks. The replan ran only on the 53 consolidations where cargo had already been left behind, not on all 93, so it says nothing about the loads that went fine without it. What it does say is more useful than a general claim would be: on the loads that had already gone wrong, the software recovered space roughly two times in three, and lost ground twice in fifty-three.
The reason those two went the other way is the most useful thing in the evaluation.
The last inches belong to the builder
In those few cases the builders got everything to fit by tilting cargo. Turning a piece on its side wins the last few centimetres, it usually works, and nothing gets damaged. The procedure is not to tilt — and tilting is what the evaluation identifies as the reason those units came out ahead of the software.
Cargo-Planner will not do that. If a cargo is marked as not tiltable, it will not be tilted, in any plan, ever — even where tilting it would produce a tidier answer. The same holds for stacking, payload and contour. That is deliberate rather than a missing feature: a plan is only worth handing to a warehouse if every constraint in it was actually honoured. A solver that quietly relaxes the awkward rule to make its own numbers look better is a solver you have to check by hand, which is no solver at all.
Setting which way up a piece may travel
So the software is not competing with the builder’s judgement, and it should not try to. What a better base plan does is give that judgement somewhere useful to go. If the plan the builder starts from is already sound, the last inches they decide to win — bending a rule they know they can bend, on cargo they can see in front of them — are genuinely theirs to win. What you do not want is that same experience being spent recovering from a plan that was wrong before the cargo arrived.
One concrete thing came out of it on our side. The evaluation surfaced that the tool would load one of the two pieces of a house waybill and leave the other behind — not a useful answer for a consignment that has to travel whole. Cargo-Planner has a setting that loads a shipment entirely or not at all, and it exists precisely for that reason.
Keeping a consignment together
Checking before you commit
Nothing above requires new information. The dimensions exist — they are on the house waybill. They are simply not consulted at the point the commitment is made.
To close that gap in Cargo-Planner:
- Paste or import the pre-booked house waybills with their pieces, dimensions and weights, and create a load plan against the unit you have booked. The ULD contours are in the library, so the constraint you are checking against is the real one.
- Give each house waybill its reference as a shipment ID, and tell it that a shipment loads entirely or not at all, so a part-loaded consignment is never offered as a solution.
- Mark what genuinely cannot move — orientations and stacking limits — on the cargo rather than in someone’s memory.
Importing the house waybills from Excel
Setting the contour and limits of the unit you booked
What you get back is not a promise that everything fits. Sometimes the honest answer is that it does not, and the value is finding that out while you can still pre-book something else into the space, rather than at the point the unit is being broken down.