Inventory and COGS: why your P&L is lying about margin
Recording what you bought instead of what you sold makes gross margin swing 47 points across a quarter in a business whose real margin never moved. Here is the arithmetic, and how to fix it.
Here is a P&L that looks healthy and is lying to you.
| Line | Amount |
|---|---|
| Revenue | $62,400 |
| Inventory purchases | $41,000 |
| Gross profit | $21,400 |
| Gross margin | 34.3% |
Nothing here is arithmetically wrong. It is still not gross margin, because $41,000 is what you BOUGHT in March, not what you SOLD in March.
Cost of goods sold means the cost of the goods that were sold. Inventory
purchases means the cost of goods that arrived. In a business that buys in
batches and sells continuously — which is every ecommerce business —
those two numbers are almost never the same, and in the month you place a large
order they are wildly different.
Booking purchases as COGS does not make your margin slightly wrong. It makes it wrong in a different direction every month, which is worse than being consistently wrong.
What it does to your numbers
Same business, same three months, recorded both ways. In March a big
restocking order landed; in April almost nothing was bought; in May, normal
trading.
| Month | Purchases method | Real COGS method |
|---|---|---|
| March gross margin | 34.3% | 58.0% |
| April gross margin | 81.2% | 57.4% |
| May gross margin | 52.6% | 58.1% |
| Spread across the quarter | 46.9 points | 0.6 points |
The business did not become four times more profitable in April and then collapse in May. It sold roughly the same goods at roughly the same margin every month. Only the recording changed.
The right-hand column is the truth: a stable business running at about 58%.
The left-hand column is what the owner sees, and it is unusable. You cannot spot
a supplier price rise, a shipping cost increase, or a product that has quietly
stopped making money, because the monthly noise is forty times larger than the
signal you are looking for.
The three things this hides
Your inventory is not on the balance sheet
If purchases go straight to COGS, the stock sitting in your warehouse or in
an FBA facility is worth nothing in your accounts. For many ecommerce
businesses inventory is the largest asset they own. A balance sheet showing none
of it understates the business to any lender, buyer or investor who reads it
— and it means you have no book figure to check a stock count against.
You cannot see which products make money
Aggregate COGS tells you the business made 58%. It does not tell you that
three SKUs are at 70% and one is at 11% and consuming most of your ad budget.
Product-level margin needs cost tracked per unit sold, and that is impossible
while cost is recorded per delivery received.
Your tax position can be wrong
Inventory is an asset until it is sold. Expensing purchases on receipt
overstates costs in a heavy buying period and understates them later. Where a
business is on accrual accounting, that is not a timing preference — it is
a misstatement, and it changes the tax due in each year. This is worth a
conversation with whoever prepares your return, not a decision to make alone.
How to do it properly
Three moving parts, and none of them is difficult:
- Purchases go to inventory, an asset account — not to an
expense. Include landing costs: freight in, duty, and inbound shipping are
part of what the goods cost you. - At month end, move the cost of what sold from inventory to COGS.
Units sold × unit cost. If you sell 400 units that cost $9.40 each,
$3,760 moves. - Count the stock periodically and adjust to the count. The
difference between your book figure and the physical count is shrinkage,
damage or a costing error, and it is information worth having rather than a
nuisance.
The honest exception. If you hold almost no stock — print on
demand, dropshipping, or a service business selling a trivial amount of goods
— purchases and COGS genuinely are close to identical, and the full
treatment buys you very little. The moment you hold more than about a month of
stock, or your buying is lumpy, the two diverge and the P&L stops being
usable.
Which unit cost method to use
Most small ecommerce businesses use weighted average cost, and for most of
them it is the right answer: it is simple, it is stable when supplier prices
move, and it survives having the same SKU arrive at three different costs. FIFO
is more precise and more work, and matters most where unit costs are high or
moving sharply. Whichever you pick, the rule that matters is to pick one and
stay with it — a margin computed one way this month and another way next
month is not a comparison.
Questions we get asked
01What is the difference between inventory purchases and COGS?
02Does it matter if I only sell a few products?
03Should I use FIFO or weighted average cost?
04Do freight and duty count as part of inventory cost?
05How often should I count stock?
Not sure whether this is happening in your books?
Give us view-only access and we will tell you, in plain English, what is misclassified, unreconciled or wrong — within 48 hours. Free, and you are under no obligation to do anything about it.