How to Calculate True COGS for an Ecommerce Brand
Most DTC brands underreport COGS by 15–25%. Here's the full list of what belongs in cost of goods sold and how it changes the decisions you make.
When we audit a new client's books, the COGS number is wrong roughly 80% of the time — almost always too low. The founder thinks they have a 65% gross margin; the real number is 48%. Every downstream decision (CAC targets, pricing, ad budgets, hiring) is built on the wrong foundation.
What COGS actually means
COGS = every dollar you spend to turn a raw material into a unit sitting in your warehouse ready to ship. That's it. Not marketing, not warehouse rent, not your salary.
What belongs in COGS — the complete list
- Product unit cost from the manufacturer
- Component / raw material costs (if you assemble)
- Inbound freight (sea, air, rail) — proportionally allocated per SKU
- Import duties, tariffs, customs fees
- Inbound 3PL receiving fees
- Quality control inspections
- Labelling, packaging, branded inserts (when SKU-attributable)
- Pre-production samples (amortised across production runs)
- FX losses on supplier payments (the often-forgotten one)
- Manufacturing defects / shrinkage allowance
What does NOT belong in COGS
- Outbound shipping to customers → fulfilment / variable opex
- 3PL pick-and-pack fees → fulfilment
- Payment processing fees → variable opex
- Returns & refunds → contra-revenue (or its own line)
- Marketing & advertising — ever
- Warehouse rent — opex
- Salaries (including yours) — opex
Landed cost — the right way
Landed cost per unit = (unit cost + inbound freight + duties + inbound 3PL + QC + samples + FX) ÷ units in that PO
Recalculate landed cost per SKU per PO. Air-freighted units have a different landed cost than the same SKU shipped by sea. Averaging them hides one SKU bleeding margin.
Why mis-calculated COGS breaks decisions
- CAC target too high → you scale spend on customers who don't pay back.
- Pricing too low → you "win" on conversion and lose on the P&L.
- Wrong SKUs promoted → bestseller becomes the worst contributor.
- Misleading investor reporting → bridge gets uglier the closer they look.
Quick self-check
Add up the last 12 months of inbound freight, duties, QC and inbound 3PL fees. Divide by COGS in your books. If it's > 8% of COGS, you almost certainly have those costs sitting in opex instead of where they belong — and your gross margin is overstated by exactly that amount.
Fix order
- Pull the last 6 supplier invoices, freight bills, customs entries.
- Build a landed-cost worksheet per SKU per PO.
- Reconcile against your accounting system; reclass mis-coded entries.
- Reset your benchmark gross margin and update CAC / pricing targets.
We do this exercise inside the first 14 days of every fractional CFO engagement. It's unglamorous and it changes everything downstream.
A free 30-minute call with a senior CFO. No sales pitch – just a clear read on where your money is and what to do next.
Book a CFO diagnostic callRelated resources
How to Calculate True SKU Profitability (And Why Most Brands Get It Wrong)
Most DTC brands look at gross margin and think they know which products make money. They don't. Here's the full formula for true per-SKU profit — including the hidden costs that quietly destroy margins.
Read articleEcommerce Accounting Services: What DTC Brands Actually Need
Why ecommerce accounting is fundamentally different from generic bookkeeping — and the 7 things your accountant needs to handle if you sell physical goods online.
Read articleShopify + QuickBooks vs Shopify + Xero: The 2026 Accounting Stack
Side-by-side comparison of the two dominant ecommerce accounting stacks — multi-currency, inventory, integrations and total cost — for $1M–$50M brands.
Read article