The Retail Freight Allocation Problem That Distorts Every Store P&L
March 20, 2026
•
6
mins

When freight costs go to the wrong stores, every downstream decision is built on a wrong number.
Every month, at one of Europe's largest grocery retailers, regional managers receive P&L reports and make decisions — which stores are underperforming, where to cut supplier costs, which locations need cost control attention. For years, those decisions were made on numbers that were systematically wrong. Not wrong by a rounding error. Wrong by €2 million annually, because freight costs were being assigned to the wrong stores.
The allocation error was not visible from any individual store's report. Each location's freight charge looked plausible. The distortion only became apparent when you looked at the aggregate: some stores appeared consistently more expensive to serve than they actually were, and others consistently cheaper. The freight cost that was allocated did not reflect the freight that actually moved.
Why primitive GL mapping fails at retail scale
The root cause at Albert Heijn, the Netherlands' largest supermarket chain with 1,100-plus stores, was not unusual for large retail operations. The TMS in use had a GL mapping configuration that was set up years earlier, when the store network was smaller and the freight patterns were simpler. As the network grew — more stores, more SKUs, more carrier relationships — the primitive GL logic that assigned costs to locations never kept pace. Freight for one distribution zone got coded to a different zone's cost center. Seasonal shipment patterns created systematic misallocations that recurred every cycle.
The operational consequence was that 40-plus hours of analyst time per week went to manually reviewing rate contracts and identifying allocation discrepancies across thousands of weekly shipments. The financial consequence was that regional managers were making merchandising, supplier, and operational decisions based on store P&Ls that did not reflect what freight actually cost to run those stores.

The decision cascade from a wrong allocation
Freight misallocation in retail is not just an accounting problem. It is a decision quality problem that cascades downstream through the organization. A regional manager whose stores appear to have higher freight costs than they actually do will make conservative decisions on supplier ordering and promotional volumes. A store that appears cheaper to serve than it is will receive investment that should go elsewhere.
“A €2M misallocation is not one wrong number. It is the input error in every commercial decision that followed.”
The specific failure mode at large grocery retailers is that freight cost, which is a shared infrastructure cost across multiple stores and distribution cycles, gets coded at the shipment level rather than allocated proportionally across the stores served. A single delivery run serving twelve stores in a distribution zone gets assigned to one store's cost center, because the GL mapping does not have the logic to distribute it. The other eleven stores show artificially low freight costs. Their P&Ls look better than they are.
What precise cost allocation requires
Accurate freight allocation at retail scale requires three things working together that most freight audit configurations do not provide simultaneously. First, shipment-level data that connects each freight movement to the stores or cost centers it served — not just the origin and destination of the shipment, but the specific delivery stops and the volume or weight attributable to each. Second, a GL coding engine that applies allocation logic dynamically based on the actual shipment attributes rather than a static mapping that was configured once and never updated. Third, real-time maintenance of those allocations through the payment cycle, so that the cost center reporting reflects what actually moved, not what the legacy configuration assumed would move.
The 81% reduction in analyst workload that came from automating this at one major European grocery retailer was a byproduct of fixing the allocation problem. The hours that had been spent manually correcting GL coding errors were eliminated when the coding engine became accurate enough that corrections were no longer necessary. The €2M in annual savings from accurate cost allocation was not recovered from carriers — it was recovered from the commercial decisions that were finally being made on correct numbers.






