How to calculate true landed cost.
- Slipstream

- Jun 20
- 8 min read
Updated: Jun 20
Most distributors think they know their landed cost. They take the supplier invoice, add freight, and call it good. Then they look at their P&L six months later and ask why margins are eroding even though they haven't dropped a single price.
The answer is almost always the same: they're calculating landed cost wrong. Specifically, they're capturing two or three of the seven cost categories that actually land on inventory, then absorbing the rest into a generic "operations" bucket where nobody sees them by SKU, by lot, or by customer.
This is a step-by-step guide to calculating true landed cost — the kind that survives a CFO's review, an auditor's questions, and a CEO asking why a specific product line lost money.
The seven cost categories.
True landed cost is not a single number. It's the sum of seven distinct cost categories, each captured separately, each allocated to inventory at the unit level. Skip any of them and your landed cost is wrong.
1. Material cost
The supplier's invoice for the goods themselves. This is the only category most companies capture cleanly because it comes from a single source and posts directly to the PO.
2. Inbound freight
Ocean freight, air freight, trucking — whatever moved the inventory from the supplier to your warehouse. Multi-modal shipments may have two or three freight invoices for a single PO. Each one has to be allocated back to the SKUs in that shipment.
3. Drayage
The truck move from port to warehouse for ocean shipments. Often invoiced separately from the ocean freight. Often arrives weeks after the ocean invoice. Easy to miss.
4. Demurrage and detention
Charges for containers that sit at the port too long, or trucks that wait too long at the warehouse dock. Variable and frequently surprising. Should be allocated to the specific PO that caused them — not absorbed as a general expense.
5. Duties and tariffs
For imported goods. Calculated against the HTS classification of the product. Easy to assume "10% across the board" and be off by thousands per container.
6. Import broker fees, port fees, and inspection costs
The administrative costs of getting goods through customs. Small per shipment but predictable. Allocated by PO.
7. Currency timing
The category that catches almost everyone. If you ordered goods in EUR at €100 and paid 30 days later at a different exchange rate, the real USD cost is different from the booked USD cost. Distributors who import frequently and don't hedge are absorbing currency variance silently.
The pattern
Most companies capture categories 1 and 2 cleanly, 3 and 5 inconsistently, and 4, 6, and 7 not at all. The "missing" four categories often add 8-15% to true landed cost — which means the gross margin you think you have is actually 8-15 points lower.
The allocation formula.
Once you've captured all seven categories per shipment, you allocate each cost back to the line items on the PO. The standard practitioner formula is weighted by line value, not by quantity.
Here's the structure:

Weighting by line value (rather than by unit count) handles the realistic case where one PO contains both high-value and low-value SKUs. A $200 SKU should absorb more freight cost than a $20 SKU on the same container — value-based allocation reflects that.
For currency timing, the convention is to recognize the variance at receipt time using the spot rate on the date inventory landed. The variance between the booked rate and the receipt rate gets allocated to the line just like any other cost.
Worked example: one container of specialty chemicals.
Let's run a real example. A specialty chemical distributor imports a 40-foot container from Germany with three SKUs:
SKU | Qty (drums) | EUR / drum | USD Value |
SOLV-A | 40 | €420 | $18,480 |
SOLV-B | 30 | €680 | $22,440 |
RESIN-X | 20 | €850 | $18,700 |
PO Total (at booked rate 1.10 USD/EUR) | $59,620 | ||
The associated landed costs for this container:
Cost Category | Amount (USD) |
Ocean freight | $4,200 |
Drayage (port → warehouse) | $680 |
Demurrage (3 days at port) | $450 |
Duties (6.5% on declared value) | $3,876 |
Broker & port fees | $340 |
Currency variance (paid at 1.12, booked at 1.10) | $1,084 |
Total landed costs to allocate | $10,630 |
Now we allocate by line value share. SOLV-A is 31% of the PO value ($18,480 / $59,620), so it absorbs 31% of the $10,630 landed costs — about $3,294.
Working it through:
SKU | Material Cost | Allocated Costs | Total | Per Drum |
SOLV-A | $18,480 | $3,294 | $21,774 | $544.35 |
SOLV-B | $22,440 | $4,000 | $26,440 | $881.34 |
RESIN-X | $18,700 | $3,336 | $22,036 | $1,101.80 |
If you'd only used material cost ($462 per SOLV-A drum) as your "landed cost," you'd be undercharging by $82 per drum on this SKU alone. Across 40 drums that's $3,294 of margin compression that nobody sees until quarterly close.
A 15% understated landed cost on a 22% gross margin product turns it into a 7% gross margin product. The product looks fine on paper. The business is bleeding.
Edge cases most articles skip.
Partial shipments
What if only 30 of the 40 SOLV-A drums arrive (the other 10 are on the next container)? Allocate the freight that already shipped against the drums that arrived. When the rest arrive, allocate the second freight invoice against those. Do not wait for the full PO to close — you'll have stale cost data for weeks.
Allocating against returns
If a customer returns 5 drums of SOLV-A, your landed cost on the returned units is the original landed cost ($544.35 each) — not the current market rate. This matters when you book the return as a debit to inventory.
Demurrage allocation when it's your fault
If the demurrage was caused by your customs broker missing a deadline (rather than the supplier), accountants will sometimes argue it shouldn't land on inventory cost — it should be expensed as a one-time charge against the period. This is a real CFO judgment call. Both positions are defensible; just pick one and apply it consistently.
Currency hedging
If you actively hedge FX exposure, the realized rate on the hedge is the rate that lands on inventory — not the spot rate at receipt. This complicates the formula but is critical for accuracy. If you don't hedge, ignore this and use spot.
Vendor rebates and volume bonuses
Quarterly volume rebates from suppliers typically come months after the inventory landed. The accounting convention is to amortize them back against the inventory cost on a retroactive basis if material. This means your reported landed cost in Q1 may be revised after the Q2 rebate posts. Make peace with this.
How to actually do this without losing your mind.
Calculating landed cost by hand is feasible for one PO. Calculating it for 50 POs a month, across 200+ SKUs, with retroactive adjustments for vendor rebates and currency variance, in time to inform pricing decisions — is not.
There are three paths:
Path 1: Spreadsheet purgatory
Build it in Excel. Someone owns the workbook. It works for about 18 months until that person leaves, takes a vacation, or makes a formula error nobody catches. Most distributors live here longer than they should.
Path 2: NetSuite's landed cost module
NetSuite's Advanced Inventory module has landed cost allocation built in. It works, but it's batch-based (often posts at month-end), so you can't see real-time landed cost on a Tuesday morning when a customer asks about pricing. Also doesn't handle currency variance, demurrage, or rebates without custom configuration.
Path 3: A purpose-built cost intelligence layer
Tools like Slipstream Supply Chain Intelligence (SSCI) automate landed cost calculation in real time. SSCI pulls receipt data from your WMS, pulls freight and duty invoices from your AP system, pulls currency rates from a real-time API, and produces a landed cost per unit before the inventory is even picked. The math from this article runs every time inventory lands.
You also see things you couldn't see in a spreadsheet: which suppliers are silently raising prices (vendor price-creep detection), which products' landed costs are drifting up faster than their selling prices, and which lots had unusual cost spikes worth investigating.
The mechanic
The mechanical answer to "how is landed cost calculated in SSCI?" is: receipt event triggers a calculation, allocation runs against all known cost categories for the source PO, result writes back to the inventory record with a full audit trail of which costs contributed.
You don't build it. You turn it on.
The TL;DR.
True landed cost has seven components. Most teams capture three. The other four — drayage, demurrage, broker fees, and currency variance — add 8 to 15 percent to your real cost basis. That's the gap between the gross margin on your P&L and the gross margin you actually have.
Calculate it line-by-line, weighted by line value, allocated at receipt time. Handle the edge cases consistently. Recognize that doing it manually in a spreadsheet is a temporary solution that will fail you at some point.
If you want real-time landed cost without building a data pipeline yourself, that's what SSCI was built for. If you want to keep going with the spreadsheet, that's also fine — but go in knowing what categories you're skipping and what they're costing you.
Frequently asked questions
What is included in true landed cost?
True landed cost has seven components: material cost (supplier invoice), inbound freight (ocean, air, or truck), drayage (port to warehouse trucking), demurrage and detention (port and dock waiting fees), duties and tariffs (for imports), broker and port fees, and currency timing variance (the gap between booked and paid FX rates). Most distributors only capture the first two or three. The remaining four typically add 8 to 15 percent to true landed cost.
How do you allocate landed cost across SKUs in a single shipment?
The standard formula is weighted by line value, not by quantity. For each PO line, calculate the line's share of total PO value, then multiply the total landed costs (freight, drayage, demurrage, duties, broker fees, currency variance) by that share. Add the result to the line material cost and divide by line quantity to get landed cost per unit. Value-based allocation correctly reflects that a $200 SKU should absorb more freight than a $20 SKU on the same container.
How do you handle currency variance in landed cost calculations?
Recognize variance at receipt time using the spot rate on the date inventory landed. The difference between the booked rate when the PO was created and the actual rate at receipt is the currency variance, allocated to the line just like any other cost. If your company actively hedges FX exposure, use the realized hedge rate instead of spot. Distributors who import frequently and do not hedge are often absorbing significant currency variance silently.
Does NetSuite calculate landed cost?
NetSuite's Advanced Inventory module includes landed cost allocation. It works for material cost, freight, and duties — but it is batch-based and typically posts at month-end, so you cannot see real-time landed cost on demand. It also does not natively handle currency variance, demurrage allocation, or supplier rebate amortization without custom configuration. Many distributors supplement NetSuite with a purpose-built cost intelligence layer to get real-time visibility.
What is the biggest mistake distributors make calculating landed cost?
Absorbing the missing four cost categories (drayage, demurrage, broker fees, currency variance) into a generic operations expense bucket instead of allocating them per SKU. The total cost still hits the P&L, but you lose all visibility into which products are genuinely profitable. A 15 percent understated landed cost on a 22 percent gross margin product turns it into a 7 percent gross margin product. The product looks fine on paper, but the business is bleeding silently.
How does Slipstream SSCI calculate landed cost?
SSCI automates landed cost calculation in real time. It pulls receipt data from your WMS, freight and duty invoices from your AP system, and currency rates from a real-time API. The seven-category allocation formula runs every time inventory lands. Results write back to inventory records with a full audit trail of which costs contributed. You also see vendor price-creep detection, landed cost drift over time, and lot-level cost spikes. Pricing starts at $499/month with a 30-day risk-free trial.
About the author
Clive Hecker
Founder of Slipstream WMS and SSCI. Clive writes about warehouse operations, landed cost, inventory management, and supply chain analytics, drawing on experience building software for distributors, importers, and warehouse operators.
.jpg)
Comments