weighted-average cost
Imagine pouring sacks of flour you bought at different prices into one big bin and stirring. Once it is all mixed, you can no longer tell the cheap flour from the dear flour — every scoop you take out costs the same blended price. The weighted-average method treats inventory exactly like that bin: it blends all the costs together and charges every unit the same average.
Mechanically, weighted-average cost takes the total cost of goods available for sale and divides it by the total number of units available, giving an average cost per unit; that average is used both for the goods sold and for the goods left over. Using the running example — 10 units at 4 (40) plus 10 at 6 (60) is 100 of cost for 20 units, or 5 per unit. Sell 12 and cost of goods sold is 12 × 5 = 60; ending inventory is 8 × 5 = 40. Notice the answer sits neatly between FIFO and LIFO, because it ignores the order of purchases entirely.
It matters because it is simple, smooths out price swings, and avoids the manipulation worries of picking which specific batch was 'sold'. It is widely used for goods that are interchangeable and physically mingled — fuel, grain, screws, chemicals — where tracking individual units is pointless. In a perpetual system the average is recomputed after each purchase (a 'moving average'); in a periodic system it is computed once at period-end, which can give slightly different numbers.
Available for sale: 10 cans at 4 (40) and 10 at 6 (60), total 100 for 20 cans, so 5 per can. Sell 12: cost of goods sold = 12 × 5 = 60. Ending inventory = 8 × 5 = 40. The result lands exactly between FIFO (52 / 48) and LIFO (68 / 32).
Blend all costs into one average per unit, then apply it to both sold and unsold goods.
Average cost is computed differently under perpetual (moving average after each purchase) versus periodic (one average at period-end), so the two systems can report slightly different cost of goods sold from the same transactions.