When you buy the same product at different prices over time, every sale raises a question: which cost does this unit carry? The answer is your costing method, and it decides your cost of goods sold, your gross profit and the value of the stock on your balance sheet. The two methods most online sellers choose between are FIFO and weighted average cost.
This guide explains both with worked numbers, shows how they diverge when prices move, and covers the accounting and tax points you should raise with your accountant.
In short: FIFO assigns the oldest cost to each sale, so recent costs stay in inventory. Weighted average blends all units into one cost. Over the life of the stock they give the same total; in any one month they give different profit when purchase prices change. Pick one per type of product, apply it consistently and get your accountant's agreement before you switch.
What a Costing Method Does
Your total spending on stock does not change with the method. What changes is when each cost reaches your profit and loss:
Cost of goods sold = Opening inventory + Purchases - Closing inventory
The method decides how the purchases are split between cost of goods sold (this period) and closing inventory (later periods). If your purchase prices never changed, every method would give the same answer. They differ only because prices move.
How FIFO Works
First in, first out treats the oldest units as sold first. Each receipt becomes a cost layer, and sales consume the oldest layer before moving to the next.
Example. You receive 100 units at $10 in January, 100 at $12 in February and 100 at $14 in March. In March you sell 150 units at $25.
FIFO cost of goods sold = (100 x $10) + (50 x $12) = $1,000 + $600 = $1,600 FIFO closing inventory = (50 x $12) + (100 x $14) = $600 + $1,400 = $2,000 Gross profit = $3,750 - $1,600 = $2,150
Strengths:
- It follows how most physical stock actually moves, especially with dated or perishable goods.
- Closing inventory is valued at recent prices, so the balance sheet reflects current replacement cost.
- Each layer can carry its own landed cost, so a cheap shipment and an expensive one stay distinct.
Weaknesses:
- When costs rise, profit looks higher than your replacement cost justifies, and you may pay tax on that.
- It needs layer by layer records, which is impractical by hand at volume.
How Weighted Average Works
Weighted average blends every unit into one cost.
Periodic weighted average computes one average for the period:
Average unit cost = Total cost of units available / Total units available
Using the same purchases: ($1,000 + $1,200 + $1,400) / 300 = $12.00.
Average cost of goods sold = 150 x $12.00 = $1,800 Average closing inventory = 150 x $12.00 = $1,800 Gross profit = $3,750 - $1,800 = $1,950
Moving weighted average, which most inventory software uses, recalculates the average every time stock is received:
New average = (Units on hand x Current average + Units received x Their cost) / (Units on hand + Units received)
Example: you hold 40 units at an average of $10.00 and receive 100 at $12.00. The new average is (400 + 1,200) / 140 = $11.43, and every sale until the next receipt carries $11.43.
Strengths:
- Simple to understand and smooth: one cost per product at any moment.
- Suits interchangeable goods bought often in small lots, where layers add little.
Weaknesses:
- A large expensive receipt shifts the cost of every unit, including the ones already on the shelf.
- Inventory value lags behind current prices when costs move quickly.
Both Methods Through One Quarter
Real stock is bought and sold in between, not all at once. Here is the same product through a quarter of interleaved receipts and sales, under each method:
| Event | FIFO Cost of the Sale | Moving Average Cost of the Sale | Average After the Event |
|---|---|---|---|
| Receive 100 at $10.00 | $10.00 (100 units) | ||
| Sell 60 | 60 x $10 = $600 | 60 x $10.00 = $600 | $10.00 (40 units) |
| Receive 100 at $12.00 | $11.43 (140 units) | ||
| Sell 80 | 40 x $10 + 40 x $12 = $880 | 80 x $11.43 = $914 | $11.43 (60 units) |
| Receive 100 at $14.00 | $13.04 (160 units) | ||
| Sell 70 | 60 x $12 + 10 x $14 = $860 | 70 x $13.04 = $913 | $13.04 (90 units) |
After the quarter, FIFO has charged $2,340 to cost of goods sold and holds 90 units at $14.00, worth $1,260. Moving average has charged $2,427 and holds 90 units at about $13.04, worth $1,173. Together each comes to the $3,600 you paid; only the split differs.
Same Sales, Different Profit
| Measure | FIFO | Weighted Average |
|---|---|---|
| Revenue (150 x $25) | $3,750 | $3,750 |
| Cost of goods sold | $1,600 | $1,800 |
| Gross profit | $2,150 | $1,950 |
| Gross margin | 57.3% | 52.0% |
| Closing inventory (150 units) | $2,000 | $1,800 |
| Total cost recognized so far (COGS + inventory) | $3,600 | $3,600 |
When purchase prices are rising, FIFO reports higher profit now and a higher inventory value. When prices are falling, the effect reverses. The bottom row is the point to remember: the total is identical, only the timing changes.
Try it on your own data: start free, no card needed.
What About LIFO and Specific Identification
LIFO (last in, first out) assigns the newest cost to each sale. It is not permitted under IFRS: IAS 2 allows FIFO or weighted average for interchangeable items. Under US rules it is allowed, but for tax it requires an election (IRS Form 970) and comes with conformity and record keeping requirements. Few small online sellers use it.
Specific identification tracks the actual cost of each individual unit. IAS 2 requires it for items that are not ordinarily interchangeable. It suits serialized, high value or one of a kind goods: refurbished electronics, collectibles, vehicles. For ordinary catalog products it is impractical.
The Rules to Know
This is general information, not tax advice. Points to raise with your accountant:
- Consistency. IAS 2 asks for the same cost formula for all inventories of a similar nature and use. Different formulas can be justified for genuinely different kinds of inventory, not to pick the more flattering one each month.
- US tax. IRS Publication 538 describes specific identification, FIFO and LIFO as the ways to identify the cost of goods you sell, and Treasury regulations expect book inventories to be checked against physical counts at reasonable intervals. Average cost methods are common in bookkeeping, but how they are treated for tax depends on your situation, so confirm before you choose.
- Changing methods. A change of inventory method is generally a change in accounting method, which for US tax usually needs IRS consent (Form 3115). Do not switch quietly in the middle of a year.
- Lower of cost and value. Whichever method you use, inventory that can no longer be sold for its cost (damaged, obsolete, dead stock) may need writing down.
Which Fits Your Business
| Your Situation | Usually Fits | Why |
|---|---|---|
| Perishable, dated or lot tracked goods | FIFO | Matches physical flow and expiry |
| Imports with landed costs that vary a lot by shipment | FIFO | Each shipment keeps its own true cost |
| Costs rising and you want inventory at current value | FIFO | Recent costs stay on the balance sheet |
| Commodity items bought often in small lots | Weighted average | Smooths noise with fewer layers |
| Fungible components mixed in bins | Weighted average | Layers are hard to tell apart physically |
| Serialized or unique items | Specific identification | Each unit's real cost is known |
Most multichannel sellers with imported stock choose FIFO as the default and use average cost for a few commodity lines. Whatever you choose, use software that applies it automatically. Doing either by hand at volume leads to errors that are worse than the difference between methods.
Landed Costs and Returns Under Each Method
- Landed costs. Under FIFO, freight and duty belong to the receipt they came with, so each layer carries its own landed cost. Under average cost they flow into the average when the stock is received. Either way, include them: see how to calculate landed cost.
- Late cost adjustments. If a freight bill arrives after some units sold, only the remaining units should absorb it. Units already sold keep the cost they shipped with.
- Returns. A resellable return goes back into stock at the cost it left with; a write-off posts that cost as a loss.
Common Mistakes
- Costing at the latest purchase price. Using the most recent invoice for every unit is neither FIFO nor average, and it swings margins every time a price changes.
- Leaving out landed costs. Either method gives the wrong answer if freight and duty are missing from the receipts.
- Recalculating cost at report time. If the cost is not stamped when the order ships, rerunning a report after new receipts changes last month's profit.
- Mixing methods by accident. One person tracks a product at average cost in a spreadsheet while the system uses FIFO; the two never reconcile.
- Ignoring returns. A returned unit restocked at the wrong cost slowly distorts both inventory value and margins.
Practical Checklist
- Choose a default method and document why, with your accountant.
- Note any product groups that use a different method, and why they differ.
- Include landed costs on every receipt.
- Stamp the cost on each order line when it ships, not when you run a report.
- Reconcile inventory value in your accounts with your inventory system monthly.
- Write down damaged and obsolete stock rather than leaving it at full cost.
- Do not change methods without agreeing it first.
How Invechar Handles Costing
Invechar keeps FIFO cost layers by default. Each receipt becomes a layer that includes its share of freight, duty and fees, and the true cost of the units is stamped on each order line when the order ships, so sales, margin and valuation reports use what those units really cost. Products can be set to moving weighted average instead, in the product's costing method. Month end figures (revenue, refunds, cost of goods sold and purchases) come with a balanced journal you can export for QuickBooks or Xero.
Read more about accounting exports, sales, margin and valuation reports and landed costs.
Sources
- IFRS Foundation, IAS 2 Inventories. Accessed October 8, 2026.
- Internal Revenue Service, Publication 538, Accounting Periods and Methods. Accessed October 8, 2026.
- Electronic Code of Federal Regulations, 26 CFR 1.471-2, Valuation of inventories, on verifying book inventories by physical counts. Accessed October 8, 2026.
- Internal Revenue Service, About Form 970, Application to Use LIFO Inventory Method. Accessed October 8, 2026.
- Internal Revenue Service, About Form 3115, Application for Change in Accounting Method. Accessed October 8, 2026.