the takeaway
Split a container’s freight evenly across mixed SKUs and your per-unit costs are wrong in both directions: the bulky items under-costed, the dense ones over-costed. A duvet priced for a 33% margin can really be running at 25%, and the same wrong figure feeds your stock valuation and your tax. Apportion each cost by what actually drives it — freight by weight or volume, insurance by value, duty per commodity line — and you have margins you can price against.
Most importing founders have heard a version of this from their own desk:
"I pay the Chinese factory for the goods, the freight forwarder for transit, DHL for customs clearance, and HMRC for duty and import VAT. The invoices arrive over six weeks and from four different parties. My bookkeeper is dropping the freight into generic 'Overheads', and when we do attempt a unit cost, we are splitting a £10,000 freight bill evenly across a container holding 50 different SKUs. Am I quietly selling my bulky items at a loss while overpricing the dense ones?"
That misallocated £10,000 invoice is the difference between knowing your gross margin per SKU and guessing it. When freight is expensed to “Overheads” it never reaches inventory cost, so every unit on your balance sheet is understated, and with it your profit. When freight is brought into inventory but split evenly, the dense SKUs are over-costed and the bulky ones under-costed. Either way, the per-unit cost number you price against and report stock at is incorrect. The problem is that your pricing and your accounts are both built on a number nobody has actually calculated.
Why this happens
Start with what the rules actually require. Under FRS 102 §13.5 and §13.6, the cost of inventory comprises the purchase price, import duties and other non-recoverable taxes, transport and handling, and other costs directly attributable to bringing the goods to their present location and condition, net of trade discounts and rebates. Equally important, §13.13 excludes selling costs, storage of finished goods, abnormal waste, and administrative overheads.
Capturing those costs is the easy part. The problem is the costing technique and how those pooled costs are pushed down to individual SKUs. FRS 102 §13.18 permits the weighted average or FIFO valuation methods only where the result approximates actual cost, and a flat-rate split across mixed SKUs almost never does. A correct setup allocates each cost type on the basis that actually drives it:
- Inbound freight on the basis the carrier itself bills — chargeable weight, meaning the greater of gross weight or CBM-derived volume.
- Insurance on declared item value.
- Duty calculated per commodity-code line on the import entry, not pooled and apportioned.
In practice, two recognisable failure modes get in the way of that setup:
The three-invoice problem
High-volume bookkeepers are likely to configure invoice recognition software like DEXT or Hubdoc to automatically expense logistics invoices straight to the P&L. Freight, clearance, and duty arrive as separate invoices from separate parties over several weeks, so it is harder to tie them back to the stock they belong to.
The flat-allocation problem
Founders who do try to fix the first problem then take a £5,000 freight bill and divide by total units. It feels rigorous, but a flat per-unit rate ignores that a heavy item and a bulky item cost completely different amounts to ship.

Picture a founder importing a 20ft container holding 1,000 ceramic plant pots (factory cost £2 each; dense and heavy — roughly 1.5 CBM total, 1,500 kg) and 1,000 polyester duvet sets (factory cost £10 each; light but bulky — roughly 12 CBM total, 300 kg). Ocean freight to the UK port is £4,000.
The volume-accountant maths
The founder divides £4,000 by 2,000 total units (£2 per unit). The pot is recorded at a £4 landed cost; the duvet at £12.
The optimised valuation
Sea freight on a mixed-LCL or consolidated basis is billed on the greater of weight or volume (1 CBM ≈ 1,000 kg). The duvets dominate volume (12 CBM of 13.5 total = 89%); the pots dominate weight. On a chargeable-weight basis, the bulky duvets absorb roughly £3,560 of the freight (£3.56 per duvet), and the pots absorb roughly £440 (£0.44 per pot). The duvet’s true landed cost is closer to £13.56, not £12. The pot’s is £2.44, not £4. Add per-line duty calculated from each SKU’s customs value and commodity-code rate (not a single pooled figure spread across units) and the picture shifts further.
What the founder thought, versus what was true
Pricing the duvet at £18 looked like a 33% gross margin on a £12 cost. On the corrected £13.56 landed cost, the margin is closer to 25%.

Built on a guess
“The problem is that your pricing and your accounts are both built on a number nobody has actually calculated.”
A workable approach
- Stop expensing inbound supply-chain costs Inbound freight, insurance to the UK border, customs duty, and clearance fees that bring inventory to its present location and condition belong on the balance sheet inside inventory cost. Keep outbound carriage, finished-goods storage, and customer-facing fulfilment in the P&L. One pairing trips founders up repeatedly: duty goes into inventory cost but import VAT does not, even though both are paid to HMRC on the same entry. The reason is recoverability. Import VAT is reclaimable as input VAT on your return, so under FRS 102 §13.6 it is a recoverable tax and is excluded from cost; customs duty is non-recoverable, so it forms part of cost. If you are VAT-registered and on postponed VAT accounting, treat the import VAT as it appears on your monthly statement and keep it out of the SKU costing entirely. The distinction is what HMRC and your external auditor (if you have one) will probe.
- Define the apportionment basis for each cost type, in writing When defining the cost apportionment strategy for your inventory, it is critical to document exactly how you allocate each expense type across your SKUs. Freight costs should be apportioned strictly based on how the carrier actually billed you, whether that is by chargeable weight or CBM. Insurance, however, must be allocated according to the declared financial value of each specific item. Duty requires a different approach entirely, as you do not need to manually calculate or spread this cost. Instead, you can take the exact duty figure directly from the C88 or CDS entry per commodity-code line.
- Configure the technology around the rules, not the other way around An inventory management system (Cin7 Core, Unleashed, or Katana for manufacturers) with a landed-cost module will distribute freight, insurance, and duty to SKU level once the apportionment rules are correctly set. The system is only as accurate as the rules you give it. We sit with clients to define those rules against the actual carrier invoices and CDS entries, so the costing technique meets the FRS 102 §13.18 “approximates cost” test rather than producing a tidy-looking but incorrect unit cost.
If you think you’ve already been getting this wrong
Most founders reading this will recognise their own past containers in it. The natural worry is that years of stock have been valued on the wrong basis and the whole history now needs rebuilding. It almost never does. Restating every historical container is rarely possible — the carrier and CDS detail often is not retained — and rarely worth the effort even when it is. The error that actually matters is the one still sitting on your books.
That means the practical fix has two parts. First, adopt the correct apportionment method going forward, ideally switching at a stocktake or year-end rather than mid-period, so there is a clean break point. Second, focus the correction on your closing inventory valuation: the number for goods still on hand at the period end. That single figure is what carries the historical error onto the balance sheet and into next year’s cost of sales, so getting it right resets the position without re-costing every shipment you have ever made. Goods already sold cannot be repriced, and the cost of sales they generated is in the past.
Two things are worth flagging to whoever prepares your accounts. If a prior year’s inventory was materially misstated, FRS 102 §10.21 may require a prior-period adjustment rather than simply absorbing the correction in the current year; if the amount is immaterial, current-year treatment is usually acceptable. And because understated inventory understates profit, a correction of any size also touches the corporation tax position for the affected periods. Neither point should stop you fixing the method — it is simply better to raise the historical question deliberately than to leave it for an auditor or HMRC to find. This is a sensible moment to take advice rather than self-diagnose.
If you import mixed containers, the step worth taking next is to pull your most recent carrier invoice and CDS entry and check what basis your freight, insurance, and duty are actually being apportioned on — because if the answer is “evenly”, or “Overheads”, your per-SKU margins need correcting before your next pricing or reporting decision rests on them.
Apportion a mixed container’s freight evenly and your per-SKU margins are a guess — the figure you price against, value your stock at, and pay tax on is one nobody actually calculated. The fix is to allocate each cost by the metric that drives it, and to configure your inventory system around those metrics rather than the other way round. If you suspect past containers were wrong, you don’t rebuild history — adopt the method going forward and correct the closing stock valuation, which is where the error sits on the balance sheet and flows into next year’s costs.