← All posts
E-commerceAugust 31, 2026

FIFO vs weighted average cost: which inventory method your ecommerce books are using

Your inventory costing method determines what margin you report. FIFO and weighted average cost produce different numbers on the same products sold.

Rows of product shelving in a well-lit ecommerce fulfillment warehouse
JZ
Jessica Zhao
CEO, Clear Books Advisory

An ecommerce operator we work with sells performance running shoes. She buys inventory in batches, and her supplier raised prices twice in the last 12 months. The first batch of 100 pairs arrived in January at $45 each. The second batch of 100 pairs arrived in April at $58 each.

In May, she sold 150 pairs at $120 each and expected a gross margin somewhere around 56 percent, based on what she paid for the most recent batch.

The Profit and Loss report (P&L) came back at 57.1 percent.

The difference was not an error. QuickBooks Online was using weighted average cost, which blended both batches into a single per-unit cost of $51.50. Her mental calculation had assumed FIFO (First In, First Out), where the older, cheaper pairs sell first.

Same sales. Same inventory. Two methods. Two different reported margins.

What the two methods actually do

Every ecommerce business that holds inventory has to assign a cost to each unit when it sells. The inventory costing method determines how that cost is calculated.

FIFO assumes the oldest inventory sells first. When a unit ships, the cost recognized comes from the earliest batch still on hand. If 100 pairs were purchased at $45 and 100 more at $58, the first 100 sales recognize $45 each, regardless of which physical pairs were actually pulled from the shelf.

Weighted average blends all inventory into one cost per unit. Each time a new purchase is recorded, its cost is blended with existing inventory. A purchase of 100 pairs at $58 when 100 pairs at $45 are already on hand produces a new blended average of $51.50 per unit. Every subsequent sale recognizes $51.50 until the next purchase changes the average again.

QuickBooks Online defaults to weighted average cost. QuickBooks Desktop defaults to FIFO. The method is usually set at account setup and rarely reviewed after that. Owners who calculate margins mentally using FIFO logic may be reading reports generated from weighted average books, and the two numbers will not match.

What the running shoes actually looked like

Starting inventory: 100 pairs at $45 each (January purchase). Second purchase: 100 pairs at $58 each (April). Total on hand before May sales: 200 pairs. Total inventory cost: $10,300.

Units sold in May: 150 pairs at $120 each. Total revenue: $18,000.

Metric FIFO Weighted Average
Cost per unit recognized $45 (first 100) + $58 (next 50) $51.50 blended
Total cost of goods sold $7,450 $7,725
Gross profit $10,550 $10,275
Gross margin 58.6% 57.1%
Remaining inventory value (50 units) $2,900 (at $58) $2,575 (at $51.50)

The margin difference: 1.5 percentage points on a single sales batch. The inventory value difference: $325 on the balance sheet.

Neither result is wrong. They are different outputs of different methods applied to the same facts. On $600,000 of annual revenue, a 1.5-point margin difference amounts to $9,000 of reported profit variance.

Why the method matters more when prices move

When prices are stable, FIFO and weighted average produce nearly identical results. The difference grows when supplier prices shift significantly, which is exactly when accurate margin data matters most.

When prices rise, FIFO reports higher near-term margins. FIFO recognizes the cheaper older inventory as sold first. The remaining inventory on the balance sheet reflects the higher-cost units actually on hand. Near-term margins look stronger; the higher cost gets deferred until that inventory sells.

When prices fall, FIFO reports lower near-term margins. The logic reverses. FIFO first recognizes the more expensive older inventory as sold. Weighted average blends old and new costs and produces a middle result in either direction.

The balance sheet value also differs. Under FIFO, remaining inventory is valued at the most recent purchase price, which reflects what it would cost to replace the stock today. Under weighted average, the balance sheet carries a blended number that may understate or overstate the current replacement cost depending on which direction prices have moved.

What an owner misses when the method is unknown

Pricing decisions use the wrong baseline. An owner who believes her margin is 58.6 percent may run a 20 percent promotion with confidence. If the books report 57.1 percent, the realized margin after the promotion is tighter than expected. Neither number is wrong, but the one used for the decision has to match the one the books are actually generating.

Reorder analysis may be off. When inventory is valued under weighted average during a period of rising prices, the balance sheet can understate what it will cost to replenish stock. Reorder planning based on that figure may underestimate the capital required.

Financial review conversations can expose the gap. A lender or investor reviewing financials may ask which costing method is in use and why. A business that cannot answer clearly is a business whose books have not been reviewed at a basic level of care.

What proper inventory cost tracking looks like

For ecommerce clients we work with, the first step is confirming which method is active in QuickBooks and writing it down. The method does not have to be FIFO to be accurate. It has to be consistent and understood by the owner before she reads a margin report.

When a new inventory purchase is recorded, the cost ties to the correct purchase order and batch. When prices change by more than five percent on a core product, we model the reporting impact so the owner knows what the next P&L will show before it arrives.

At least once per quarter, inventory value in QuickBooks is reconciled against a physical count or the fulfillment center’s on-hand report. Any variance gets investigated before it compounds into a larger discrepancy.

Best practices for ecommerce operators

  • Confirm which costing method QuickBooks is currently using. In QuickBooks Online, go to Settings, then Account and Settings, then Sales, then Products and Services. The default is average cost.
  • Document the method. If a new bookkeeper comes in, they need to know immediately what the books assume without reverse-engineering it from purchase history.
  • When a supplier raises prices by more than five percent on a major product, model the impact on reported gross margin before the next purchase hits the books and changes the average.
  • Reconcile physical inventory to the books at least quarterly. A unit count error amplifies a costing error, because the same mistake affects both what is recognized when units sell and what is reported on the balance sheet as stock on hand.
  • If you are considering switching from weighted average to FIFO or back, get bookkeeping help before changing any settings. Restating inventory correctly at the switchover point requires specific entries that affect historical months.

Three questions worth asking

  1. Which inventory costing method is QuickBooks currently configured to use for your products, and who made that decision at account setup?
  2. When your supplier last raised prices, did you look at how that would change the reported margin on the next batch sold?
  3. When was the last time your inventory value on the balance sheet was reconciled against a physical count or your third-party logistics provider’s on-hand report?

If those answers are not clear, the costing method in the books may not match the margin analysis you have been running. Send us a recent P&L and your last two inventory purchase orders. We will confirm which method is active and whether the reported margins are tracking cost accurately.

FIFO
VS
WEIGHTED AVERAGE
WHY DID THE SAME 150 UNITS REPORT TWO DIFFERENT MARGINS?
The inventory costing method assigns a different cost to each unit sold.
WHAT FIFO RECOGNIZED
  • FIRST 100 PAIRS
    Recognized at $45 each, the January batch price
  • NEXT 50 PAIRS
    Recognized at $58 each, the April batch price
  • TOTAL COGS
    $7,450 on 150 units sold in May
  • GROSS MARGIN
    58.6 percent at a $120 retail price
WHAT WEIGHTED AVERAGE RECOGNIZED
  • BLENDED COST
    $51.50 per unit across both batches
  • SAME RATE APPLIED
    $51.50 recognized on every unit sold
  • TOTAL COGS
    $7,725 on 150 units sold in May
  • GROSS MARGIN
    57.1 percent at a $120 retail price
“Margin difference from the same sale”
1.5 POINTS, ONE QUICKBOOKS SETTING
CONFIRMED METHOD = ACCURATE MARGIN
UNKNOWN METHOD = REPORTED MARGIN IS WRONG

Want a second set of eyes on your books?

30 minutes on Zoom. We'll look at your books and tell you what's working and what isn't.

This is the work we do every day. See bookkeeping for e-commerce.

Book a call