Skip to content

COGS vs Landed Cost (Finally Explained)

Landed Cost vs COGS

TL;DR: Landed cost is everything it takes to get inventory ready for sale (capitalized into inventory). COGS is the slice of those costs you recognize only when you sell units (e.g., per order). Landed cost builds the value of your stock; COGS relieves that value as you sell.


Why sellers mix these up

Both deal with “cost,” but they happen at different times and hit different accounts. If you blur them, margins swing, inventory values drift, and month-end drags on.


Working definitions (plain English)

Landed Cost (Inventory Value):
All costs to bring goods to your shelf/in a condition for sale:

  • Product/Factory cost

  • Freight & drayage (ocean/air/ground), last-mile to 3PL or FBA

  • Import duties, brokerage, insurance

  • Handling, palletizing, labels/packaging related to getting inventory sale-ready

Typically not included: PPC/ads, Amazon referral fees, pick & pack, storage after ready-for-sale (period expenses).

COGS (Expense when you sell):
The per-unit cost (from your landed cost layers, e.g., FIFO) × units sold.

  • Recognized at the moment of sale

  • Reduces inventory asset and increases COGS expense


The key difference in one picture

Timeline: PO created → freight/duty paid → inventory received (landed cost capitalized) → units sold (COGS recognized).

  • Before the sale: costs live in Inventory (Asset)

  • At the sale: a portion moves to COGS (Expense)


A simple numeric example

PO: 1,000 units

  • Factory: $7.00 = $7,000

  • Freight: $2,000

  • Duty: $500

  • 3PL receiving/labels: $300

Total landed cost: $9,800
Per-unit landed cost: $9.80

If you sell 300 units this month:

  • COGS this month = 300 × $9.80 = $2,940

  • Inventory balance after = $6,860 (700 units left)

With FIFO, later POs at different costs form new layers. Sales pull from the oldest available layer first.


Multi-SKU landed cost allocations (how to split freight/duty)

When a container carries multiple SKUs, use a fair basis to allocate shared costs:

  • By Units (simple when items are similar)

  • By Weight (fair for heavy goods)

  • By Volume/CBM (fair for bulky goods)

  • By Value (aligns with customs approaches)


What not to capitalize into landed cost

  • Amazon referral fees and pick & pack → selling expenses

  • PPC/ads → marketing expense

  • Storage beyond “getting sale-ready” → period expense

  • Chargebacks/penalties → period expense
    (Edge cases exist; follow a consistent policy.)


COGS ≠ Full Unit Economics (and that’s okay)

COGS is an accounting metric, not a complete picture of per-unit profitability. If you want true unit economics for operational decisions, you’ll layer in additional variable and semi-variable costs that are not part of COGS:

  • Variable selling costs: referral fees, pick & pack, payment processing, shipping to customer

  • Marketing: PPC spend attributable to a SKU or campaign

  • Holding costs: storage before sale (monthly FBA/3PL storage, AWD storage)

  • Other direct operational costs tied to getting a unit sold

Operational unit economics (simplified):

Unit Profit (ops) = Net Revenue per unit − COGS per unit − (Variable selling costs per unit) − (Allocated PPC per unit) − (Allocated storage per unit)

That operational view helps with pricing, budgeting ad spend, and SKU decisions, but it won’t match your accounting COGS or landed cost balances—nor should it. They answer different questions:

  • COGS & Landed Cost (Accounting): What is the book value of inventory and the expense recognized at sale?

  • Unit Economics (Operational): Are we actually making money per unit after fees, storage, and ads?


Accounting flows (at a glance)

When inventory is received (bill posted):

  • Dr Inventory (Asset) = landed cost

  • Cr A/P, Accrued Freight/Duty, etc.

When you sell:

  • Dr COGS = units sold × per-unit cost (from FIFO layer)

  • Cr Inventory (Asset)

Adjustments/returns:

  • Restock returns back into inventory at the correct cost layer

  • Write-offs/disposals → Dr COGS/Write-off, Cr Inventory


Why this matters

  • True margins: Ads/fees don’t pollute your unit costs; costs are recognized at the right time.

  • Clean close: Inventory valuation matches reality; COGS ties to orders.

  • Smarter pricing: Combine accounting COGS with operational fees for real-world unit economics.

  • Fewer disputes: Your CPA and your dashboard agree.


How NeonPanel handles this (so you don’t)

Today

  • Capture landed costs from POs, freight, duties, insurance, handling; allocate by units/weight/volume/value.

  • Build FIFO cost layers and keep them synced across 3PL ↔ FBA/AWD.

  • Recognize COGS per order (Amazon, Shopify, TikTok, etc.).

  • Post clean journal entries to QBO/Xero using your Chart of Accounts (e.g., split sales by channel/country).

What’s coming (operational view)

  • Optional per-unit operational allocations for non-COGS expenses (e.g., PPC, storage, variable marketplace fees) to show SKU-level unit economics and contribution margin—separate from accounting COGS/landed cost.

  • Clear labeling so teams understand: Accounting COGS (for the books) vs Operational unit economics (for decisions).