Now in open beta — close the books in 2 days, not 2 weeks.Read the case study →
Inventory · March 26, 2026 · 10 min read

Landed cost calculation for imports (from China)

A container from Shenzhen to Melbourne costs you the FOB price plus 30-50% in freight, duty, clearance, transport, and incidentals. If your inventory cost only includes FOB, your gross margin is a fantasy. Landed cost is how you get it right.

What landed cost actually includes.

Landed cost is the total cost to get an SKU from the supplier's factory to your warehouse, ready to sell. It includes: FOB price (the supplier invoice), international freight, marine insurance, customs duty, sales tax or VAT (sometimes refundable as input credit, depending on category), port handling, clearance agent fees, inland transport from port to warehouse, demurrage if any, and bank charges on the LC or remittance.

For a typical AUD 75,000 FOB container from China to Melbourne, the additional landed costs add roughly AUD 22,000-35,000 — 30-50% on top of FOB. If you book the FOB to inventory and everything else to expense, your inventory is materially understated and your gross margin per SKU is wrong by the same amount.

Allocating costs across skus in a container.

A container rarely contains one SKU. A typical importer's container has 30-200 SKUs at very different unit values. Freight is per CBM (cubic meter) or per kg, not per dollar of FOB. Duty is per HS code at percentage of CIF. Clearance is per BL (bill of lading), not per SKU. Each cost has its own driver and needs to be allocated accordingly.

Practical allocation rules: freight by volume or weight (whichever the carrier billed on), duty per SKU based on its own HS code rate, clearance and insurance by FOB value (which is a reasonable proxy for risk and effort), inland transport by volume. Software does this automatically once the rules are set; spreadsheets can do it but break under real conditions.

  • Freight: by CBM or kg, whichever the carrier invoiced
  • Duty: per SKU at its own HS code rate, on CIF value
  • Insurance: by FOB value of each SKU
  • Clearance, port, agent fees: by FOB value (proxy for effort)
  • Inland transport: by volume (CBM)

A worked example: 3-sku container.

Container from Shenzhen to Melbourne via the Port of Long Beach for trans-shipment: total FOB = AUD 90,000 across 3 SKUs. SKU A: 100 units at AUD 240 = AUD 24,000, 4 CBM, HS duty 5%. SKU B: 200 units at AUD 165 = AUD 33,000, 8 CBM, HS duty 10%. SKU C: 150 units at AUD 220 = AUD 33,000, 5 CBM, HS duty 7.5%. Total volume 17 CBM.

Charges: freight AUD 5,100 (300/CBM × 17), insurance AUD 900 (1% of FOB), clearance + port AUD 3,000 (flat per BL), inland transport AUD 1,500 (allocated by CBM). CIF for duty = FOB + freight + insurance per SKU. Compute duty per SKU at its HS rate. Allocate clearance and port by FOB share. Final per-unit cost: SKU A about AUD 273 (FOB 240 + 33 in landed costs and duty), SKU B about AUD 191, SKU C about AUD 253. Without landed cost allocation, all three would be costed at FOB and gross margin reports would be 30-50% wrong.

FOBSupplier invoice+ FreightBy CBM or kg+ InsuranceBy FOB value+ DutyPer HS code on CIF+ ClearanceBy FOB share= LandedInventory cost
FOB plus 30–50% in real costs. Skip the allocation and your gross margin is fiction.

The journal entries.

Step 1: book the FOB at GRN against the supplier (or against an inventory-in-transit account if FOB and bill of lading hits before the goods arrive). Debit Inventory In-Transit (or directly Inventory at landed cost in single-step). Credit Accounts Payable - Foreign or Bank.

Step 2: as each landed cost invoice arrives (freight, duty, clearance, transport), book it against the same goods. Debit Inventory (allocated per SKU). Credit Accounts Payable - Forwarder / Customs / Clearance Agent. Step 3: when goods are received at warehouse, transfer from in-transit to warehouse inventory at the now-accumulated landed cost. The unit cost on each SKU now reflects its true landed cost.

Refundable input vat and sales tax.

Import VAT or GST varies by jurisdiction — Australia 10% GST on landed value, UK 20% VAT, EU varies, US has no federal VAT but state sales tax applies on resale. For VAT-registered importers, import VAT/GST is input tax — it does not go into inventory cost; it goes to a VAT Receivable account and is offset against output tax monthly. Booking it into inventory by mistake inflates cost and is technically wrong.

For non-registered importers (or for non-creditable items), the VAT or sales tax is a real cost and goes into landed cost. Get this distinction right at setup; getting it wrong distorts margin and creates messy adjustments later. Customs duty is never refundable for normal importers and always goes into landed cost.

Foreign exchange and timing.

The supplier invoices in USD. The freight forwarder might invoice in USD. Duty is in local currency. The bank converts on remittance day. The book inventory cost should reflect the actual local-currency cost on each transaction, not a forecast rate. If you book FOB at one rate and the LC settles at a different rate, the variance is FX gain/loss — it does not move inventory cost.

For long-tail goods that sit in inventory for months, FX moves continue but inventory cost is locked at the cost on receipt. Selling 6 months later at today's exchange-rate pricing produces real gross margin. Selling at a price you set 6 months ago using today's landed cost produces compressed margin. Either is fine if you understand which you are doing.

How nonari handles landed cost.

Nonari supports a Landed Cost Voucher document — you create it after the goods arrive, attach it to one or more GRNs, and add lines for freight, duty, insurance, clearance, transport, etc. Each line has an allocation rule (by value, by volume, by weight, or per SKU manually) and a destination account.

When the voucher is posted, Nonari recalculates the cost of every SKU on the affected GRNs, posts the journal automatically, and updates the BranchInventory WAC for each SKU. If some units have already been sold before the landed cost voucher posts (common — duty arrives weeks after goods do), Nonari posts a Cost of Sales adjustment for the difference. The result: cost is right, even when costs land out of sequence. Incoterms 2020 terms (EXW, FOB, CIF, DDP) are supported as templates so the right cost components default in automatically.

Frequently asked

Common questions.

When can I post the landed cost voucher?

As soon as you have all the cost invoices in hand. Often this is 2-6 weeks after goods receipt, since duty and clearance lag the goods.

What if some units have already been sold before landed cost is posted?

Nonari posts a Cost of Sales adjustment for the difference. The original sales were costed at FOB; the adjustment brings COGS up to the true landed cost.

How do I handle freight on a partial container?

Allocate the actual CBM or kg you used. Some forwarders bill flat per BL even for partials; in that case allocate by FOB value or volume per your policy.

Should I include the bank charge on the LC in landed cost?

For most importers, yes — it is a real cost of acquiring the goods. Some companies expense bank charges and accept the small margin distortion. Pick a policy and apply it consistently.

Does Nonari support multi-currency landed cost?

Yes. The supplier invoice can be USD, the forwarder a local-currency bill, the duty local currency. Each line carries its own currency and Nonari converts to your reporting currency using the booking rate per line.

Try nonari

Put your books on autopilot.

Free to start. No credit card. Bring your books, kick the tires, export everything if you decide to leave.