If there’s one thing guaranteed to confuse operators, planners, finance, and your poor ERP system all at once, it’s this: What is the true cost of our production? All of them have a different answer and they all think they are right.
I saw a post on Reddit which is really what inspired me to pick this topic today.
Two methods dominate manufacturing:
- First in First out (FIFO)
- Weighted Average Cost (WAC)
They both sound simple in theory but wacky in practice. Let’s break it down with real examples, real problems and how manufacturers survive this.
FIFO: Your Accounting Team’s favorite word
How FIFO works
You value inventory based on the cost of the oldest inventory layer
Example
You bought 1,000 units of SKU # 123 at $1.00, then 1,000 more units of the same SKU at $2.00.
If you need to fill a 500 pc order using the SKU # 123, FIFO would want to use the cost of the component at $1.00 for that 500 pc order
Then, when you have your second order to fill for 600 pcs using the SKU # 123, FIFO would want to use what’s left of the $1.00 layer ( for 500 units) and dip into $2.00 (for 100 units).
Is it that bad?
If you’re in a business with volatile commodity pricing, promos/discounts, or suppliers who “revise price effective immediately”, your COGS becomes a roller coaster.
WAC: For people who want peace of mind
How WAC works
Every time you buy material, the system blends old + new stock into a single new cost.
Same example
First PO: $1.00 (1,000 units)
Second PO: $2.00 (1,000 units)
WAC: $1.50 per unit
First customer order: 500 pcs
Second customer order: 600 pcs
Third customer order: 900 pcs
For all of them, the cost of SKU# 123 will be $1.50. No drama
Why I love WAC?
You have smooth COGS, Less finance/planning conflicts, easier to explain to leadership (my favorite), helps with quoting and pricing consistency.
No, Don’t jump the gun yet. WAC is not all unicorns and rainbows.
WAC breaks in real life
Here’s where things get hairy:
Scenario: You have 300 pcs left at a $1.10 WAC…
But then you place a rush order at $1.40 because line stoppage is looming. The new WAC recalculates at the moment of receipt.
If you release a production order after that receipt, suddenly the cost is now $1.18.
If you released it one minute before, the cost stays $1.10.
And if someone backdates a goods issue (We all have that guy in our office. Don’t we?), your whole month now looks like a Pollock painting.
Why this matters?
Because in real manufacturing, Jobs span multiple days, Material issues aren’t real-time, Backflushing isn’t perfect, Discounts, rebates, MOQ pricing, surcharges all distort reality
What you want is a stable cost.
What WAC gives you is:
“Your cost is whatever happened last.
FIFO breaks too — just differently
Problems with FIFO:
- You need accurate aging of stock
- You need perfect traceability (good luck)
- It can create weird profit swings
- It makes your ERP do layer tracking gymnastics
- If you have 14 partial bins in the warehouse, good luck knowing which one is actually “first in”
FIFO is beautiful in theory. In a messy factory? It’s like sorting laundry by thread count.
So which method should I use?
The answer is, it depends..
Food and Beverage, Chemicals with expiry dates, Pharma, perishable goods – Use FIFO
If your business is high-mix-low volume, driven by components, fast-moving assembly, automotive, plastic, metal fab, industrial, anything where pricing changes often, anything where you want margin stability – Use WAC
Most SMB manufacturers use WAC for their components.

This visual breaks down the real-world behavior of manufacturing costs under FIFO and Weighted Average Cost (WAC) — not the textbook version, but what actually happens inside an ERP and inside your margins.
Orange Zig-Zag Line (FIFO Cost Behavior) represents how FIFO costs move
- Spikes every time a new inventory batch arrives
- Drops when low-cost inventory reappears
- Creates COGS volatility
- Makes monthly variance analysis… fun 😬
This line shows reality in any business with unstable pricing
Teal Smooth Line (WAC Cost Behavior) represents weighted average
- Progressive, smooth cost evolution
- ERP recalculates the new average after each receipt
- Much easier for forecasting, quoting, pricing, and S&OP stability
If FIFO is a roller coaster, WAC is a commuter train.
The “edge case”: Isolating job cost
How do we freeze a cost for a job when WAC keeps moving? (Question from Reddit)
It’s a known problem. Some call it Standard cost snapshot. I have seen ERPs call it Pre-costing
What it does is when you release a production order, the system takes a snapshot of WAC at that moment and sticks with it — even if a new purchase comes in tomorrow at a totally different price.
This solves:
- variance volatility
- WIP revaluation nightmares
- month-end closing trauma
This is why most mature manufacturers configure WAC + cost freeze.
Bottom line: WAC vs FIFO won’t fix your cost problems… processes will
Whichever one you choose, cost chaos usually comes from:
- late goods receipts
- backdated transactions
- bad BOM accuracy
- scrap not recorded
- production postings that lag days
- supplier price changes not entered immediately
- manual inventory adjustments
- “that one planner who enters everything at month-end”
Costing is easy. Humans are the problem. Systems just expose it.
Takeaway:
FIFO = accuracy in theory, volatility in practice
WAC = stability in practice, messiness under the hood
Most manufacturers do this:
- WAC for components
- FIFO for finished goods
- Cost freeze on production order release
- Monthly revaluation review
- Variance analysis on material, labor, overhead
It works. It’s human. It avoids arguments between supply chain, ops, and finance. And it keeps your factory from feeling like a hedge fund.

Leave a comment