ClearStock is live on the Shopify App Store.Install free →

← All blogs

Choosing a Tool8 min read

Inventory valuation methods for Shopify sellers: FIFO, weighted average, retail

FIFO vs weighted average vs the retail method on one store's rising-cost example — what Shopify's cost per item assumes and what to ask your accountant.

InventoryX is in development and not available today. ClearStock is the live Shopify app.

Short answer: for most Shopify sellers the real-world choice is FIFO or weighted average, and the difference only shows up when your costs are changing — rising supplier prices make FIFO show higher profit (and higher taxable income) than weighted average; falling costs do the reverse. Shopify doesn't force either on you: it tracks a cost per item, and which method your books actually follow depends on how you and your accountant maintain that field. Here's what each method does, worked on one store's rising-cost example, and the conversation to have with your accountant.

The three methods in one paragraph each

FIFO (first in, first out) assumes the oldest units sell first. When supplier costs rise, your COGS reflects the older, cheaper units and your ending inventory reflects the newer, pricier ones — so reported profit runs higher under inflation. Physically, FIFO usually matches reality: most sellers genuinely ship older stock first, especially for anything perishable.

Weighted average smooths cost across everything you hold: every time a new batch lands at a new price, your average cost per unit shifts. COGS and ending inventory land between the FIFO extremes. It's simpler to maintain and less jumpy — one number per SKU to keep straight.

Retail method values inventory at retail prices and converts to cost using your cost-to-retail ratio. It's an estimation method — traditional retail uses it for interim statements when counting everything constantly is impractical, and it works best when margins are consistent across a department. It's a fallback, not a default, for a modern Shopify store that can export per-variant costs in minutes.

One SKU, three answers

Emberwick sells bath bombs and bath oils. In March, its supplier of fragrance oils raised prices, and the cost of the "Cedar Smoke" bath bomb went from $2.10 to $2.60 per unit. The store holds 400 units bought at $2.10, receives a new batch of 500 at $2.60, then sells 600 units before quarter-end. (Numbers illustrative.)

FIFO: the 600 units sold draw the 400 old units first ($2.10 × 400 = $840) then 200 from the new batch ($2.60 × 200 = $520). COGS = $1,360. Ending inventory = 300 × $2.60 = $780.

Weighted average: average cost = (400 × $2.10 + 500 × $2.60) ÷ 900 = (840 + 1,300) ÷ 900 ≈ $2.378. COGS = 600 × 2.378 ≈ $1,427. Ending inventory = 300 × 2.378 ≈ $713.

Same physical stock, same sales — $67 of profit difference on one SKU in one quarter. Multiply across a few hundred SKUs with rising costs and the annual gap becomes real money, which is exactly why the method you use is a decision, not a default. (With falling costs the sign flips: FIFO shows lower profit.)

What Shopify's cost per item actually assumes

As of October 2026, Shopify's native profit reports compute gross profit from the cost per item field on each variant (Shopify Help Center, cost-per-item and profit reports documentation, accessed October 2026). That field holds a single number per variant — it doesn't keep a layered cost history per batch, and Shopify doesn't track FIFO layers or recompute a weighted average for you when a new PO lands at a different price (Shopify's COGS and profit reporting explains the reporting side). So the honest mechanics are:

  • If you update cost per item as new stock arrives, your reporting drifts toward a current-cost basis — closer in spirit to weighted average, though a true weighted-average method re-blends on every receipt, not just on your update schedule.
  • If you leave the old cost in place for a while, your reports look like FIFO during that window — older cheaper costs flow through COGS first.
  • Neither is a formal accounting method by itself. What your books use is decided between you and your accountant; Shopify is the operational layer. The gap between the two is reconciled at year-end, which is one more reason the annual count and its valuation tie-in matters.

The practical discipline that makes any method work: keep cost per item current as POs land, and use fully loaded costs if you can. If freight and duties are significant, a per-unit cost that ignores them understates every method — the build-up is the same one behind a landed cost calculation.

The annotated thread: what the accountant conversation sounds like

The method choice is the one inventory topic where you should talk to a real accountant — method changes are regulated, and tax treatment varies by jurisdiction. Here's the shape of that exchange, with margin notes on why each line matters:

You: "Our supplier costs rose about 20% this year. We've been updating the cost field in Shopify as shipments land — what method does that make us, and does it match what's on the return?"

Why it matters: you're describing your operational habit and asking whether the books follow it. The honest answer is often "the books use method X and Shopify is approximation" — the reconciliation is what you need to know about.

Accountant: "Your return uses weighted average. Shopify's report will understate profit while costs rise — when you re-price every unit at the new higher cost, its COGS runs above a true weighted average, so reported margin runs low — fine for management, don't file from it. Changing methods requires a formal change and, in the US, generally IRS consent (see Publication 538, Accounting Periods and Methods — IRS.gov, accessed October 2026)."

Why it matters: the method on the return is usually sticky, and switching (say, weighted average to FIFO) isn't a spreadsheet edit — it's a filing event. Don't improvise this.

You: "Then what should I do in Shopify — stop updating costs so reports match?"

Why it matters: this is the trap. Matching the tax method inside Shopify would make your operating reports worse — you'd be buying replacement stock at today's prices while pretending you aren't. Most accountants will tell you to keep operational data current and accept the management-vs-books gap, but ask, don't assume.

Accountant: "Keep costs current in Shopify. At year-end we'll true up inventory value from your count and adjust. Your job is a clean count and clean cost data."

Why it matters: the division of labor is clean — the platform is operations, the books are compliance, and the count is the bridge. Your obligation is data quality, not method mimicry.

How to choose, honestly

  • Costs are stable: the methods converge to nearly the same numbers. Pick weighted average or FIFO for simplicity and stop worrying.
  • Costs are rising and you want smoother margins in your management view: weighted average keeps month-to-month profit less jumpy.
  • Costs are rising and your accountant prefers FIFO: expect higher reported profit and higher taxable income than weighted average in the same period — budget for the tax timing difference.
  • Margins vary wildly across a large catalog and you need fast estimates between counts: the retail method is a legitimate estimating tool, but with per-variant costs exportable from Shopify, it's rarely the primary method anymore.
  • You make or kit products: raw materials, work-in-progress, and finished goods each carry their own valuation wrinkles — worth raising with the accountant before year-end, not after.

Common questions

What's the difference between FIFO and weighted average? FIFO expenses your oldest unit costs first, so COGS tracks older prices and ending inventory tracks newer ones. Weighted average blends all costs on hand into one per-unit figure and expenses that. When costs rise, FIFO shows higher profit than weighted average; when they fall, lower. With stable costs, the two converge.

Does Shopify use FIFO or weighted average? Neither, formally. Shopify tracks one cost per item per variant and computes native profit reports from it, without batch cost layers or automatic re-averaging. How you update that field determines whether your Shopify reporting behaves more like FIFO or like a current-cost approximation — the formal method lives in your books with your accountant.

Is the retail inventory method still used? Yes, mainly by traditional retailers who need interim inventory estimates between physical counts and have consistent margins. For a Shopify seller who can export per-variant costs and quantities on demand, it's mostly redundant — the data the retail method approximates is directly available.

Which inventory valuation method is best for taxes? That's jurisdiction-specific and situation-specific — in the US, method choices and changes are governed by IRS rules (Publication 538 as a starting reference), and the answer depends on your cost trends and entity situation. It's a conversation with your accountant, ideally before year-end, not a self-serve decision.

What happens if my Shopify costs are wrong? Every downstream number inherits the error: profit reports, valuation, reorder math, and the year-end reconciliation get messier. Updating cost per item when each PO lands — including freight and duty where they matter — is the highest-impact data habit in the whole system.

Where to go next

Open Shopify's cost-per-item report and count the variants with no cost or a stale one. That gap, not the method debate, is where most small-store valuation pain actually lives — and it's the input your COGS reporting and your accountant both need. Then bring the three questions from the annotated thread above to your next accountant call.