Skip to content
Browse the library

Inventory fundamentals

How average cost moves

Follow one product through a receipt, a sale, and a count, and see exactly when its cost changes.

On this page

A product carries one cost

Each product holds a single purchase cost: a weighted average of what the stock on hand actually cost. Stock value, margins, cost of goods, and variance at cost all read from it, so it is worth understanding when it moves and when it does not.

It is deliberately one number for the whole product rather than one per location. The same can on a shop shelf and in a stockroom cost the same to buy, and splitting the cost by shelf would make every transfer a revaluation.

A receipt with a cost moves the average

Start with 40 units bought at $8.00 each, which is $320 of stock. A delivery of 20 more arrives, and this time they cost $9.50 each.

Weighted average after a receipt
MeasureCalculationResult
Value before40 × $8.00$320.00
Value received20 × $9.50$190.00
Units after40 + 2060
New average cost$510.00 ÷ 60$8.50
Stock value after60 × $8.50$510.00

The receive dialog shows the new average as you type, before you save it. Leave the cost field alone and nothing about cost changes: the delivery adds units at the cost the product already carried.

What leaves the average alone

Removing stock never changes the average. Selling ten of those units leaves 50 at $8.50, or $425, and the sale itself records $8.50 as the cost of the goods that went out, frozen at that moment so the report stays honest later.

A recount changes the quantity, not the cost: finding 48 where 50 were expected leaves the average at $8.50 and values the two missing units at $17.00. Moving stock between locations changes neither.

Receiving against a purchase order uses the price the order was placed at, which is the supplier’s own price for that product, unless you type what it actually cost on the day. Building a kit adds finished kits at what their components cost that day, which folds into the kit’s own average exactly as a receipt does.

Reading stock value honestly

Stock value is quantity times average cost, and both inputs move. A value that jumped may mean more stock, or it may mean a dearer delivery; check the receipts in History before drawing a conclusion.

Average cost is not a valuation method with tax standing, and Inventory does not attempt FIFO or LIFO layers even for products tracking expiry dates: a dated lot carries a date and a quantity, not its own price. If your accountant needs a different basis, export the data and compute it there.