True cost of goods sold

What is my true cost of goods sold with freight and duty?

Split air and sea shipments, forwarder charges, import duty and the gap between quoted and received weight all sit outside the number most spreadsheets call COGS. Every one of them changes your real margin, and none of them shows up until someone builds landed cost properly into the system that runs your business.

Why the spreadsheet is wrong

Why spreadsheet COGS drifts from the real cost

Freight is not one number

Split a shipment across air and sea and each portion carries its own forwarder charges, on its own timeline, before either portion has a clean per-unit cost.

Duty and customs charges land separately from the invoice

Import duty and customs fees rarely arrive on the same document as the goods themselves, so they get added, if at all, well after the product is already on the shelf.

Received weight is not quoted weight

Actual weights on arrival regularly differ from what was quoted, and freight is usually charged by weight, so the cost you budgeted is not the cost you paid.

Spreadsheet COGS is a snapshot, not a system

A spreadsheet gets updated when someone has time, which means the cost figure everyone is using is usually out of date by the time a pricing or margin decision gets made.

What good looks like

Freight, duty and weight variance, priced in automatically.

Every shipment's real charges, split by mode of transport, get allocated down to the unit level as they happen, and actual received weight replaces quoted weight the moment it is known. The cost figure attached to each product is current, not a periodic estimate someone recalculates by hand.

How we do it

Odoo calculates landed cost, not a spreadsheet

We build landed cost logic directly into Odoo, the open-source commerce ERP, as part of your accounting customisation, so freight, duty and weight adjustments post against each shipment and flow through to real, current per-unit cost automatically.

This is exactly what we built for Gandys, a UK lifestyle brand importing from China across split air and sea shipments, each with its own freight forwarder charges and its own gap between quoted and received weight. We replaced spreadsheet-based COGS with a system that accounted for all of it, giving accurate, current product costs instead of periodic manual recalculation.

Next step

Ready to fix your ops?

Book a free discovery call. We'll look at your current setup and tell you honestly whether Odoo is the right move and what it would involve.