Correct; @HotRod19579 has not implemented cost averaging (at least that I can detect). I seem to recall that this has been discussed a couple of times, in the past, on this thread (if my memory isn't completely failing me).My observations are that JC will use the cost per ml of the last entry of an ingredient rather than an average of the entries.
As I recall; there was debate over what, and how, to implement averaging:
Basic cost averaging (like your example):
$0.10/mL (current inventory of 2mL left from a previous purchase)
$0.05/mL (New purchase of 30mL)
Results in $0.075/mL average (.10 + .05 = .15, .15 / 2 = .075)
or:
on-hand based cost averaging:
$0.10/mL (current inventory of 2mL left from a previous purchase)
$0.05/mL (New purchase of 30mL)
Results in $0.053 /mL average (.10 X 2 = .20, .05 X 30 = 1.50, .20 X 1.50 = 1.70, 1.70 / 32mL = .053)
or (not averaging):
"industry standard" first-in/first-out:
where all material is tracked separately, and removed (and cost applied) based on earliest purchase date (and cost).
The first two methods are "okay," but don't reflect a "true" cost, and they are subject to compounding error to the result. Notice the difference in results of the first two; yes it is only 2.2 cents, but that is a 29.3 percent variant of the difference. AND that 2.2 cents is all but the same as the initial 2.5 cents that you were concerned about to start. The only one that truly makes sense is the third option. And that one requires a fair amount of additional programming, and reconfiguring existing programming, on Rod's part, to track multiple purchases, with multiple costs, and link them all under a single ingredient.
It should(?) only truly matter to someone using the program in a professional environment; and Rod has said that is not his target demographic. Most JC personal DIYers aren't too concerned; and are fine with most recent cost. Others, who want an average, will manually input the data, calculated as preferred; or create multiple listing for the same ingredient, based on purchase date and cost, and then "change" the ingredient in their recipes as each is used up.
An easy way to create a manual method of first-in/first-out; would be to put a piece of tape, or post-it across the top of the new bottle, with a note to change the cost in the calculator when first used, along with its cost. That way, you could update the quantity when received, but don't update the cost until you actually start using the new bottle.