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.
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.
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
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)
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.
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)
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 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?
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
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.
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).