As Craftybase is a perpetual inventory system, your material unit prices are continuously recalculated based on the purchases, manufactures and adjustments you make through the year. So how do we do this exactly? This post is the first in a series that aims to demystify some of the calculations we make in order to provide you with your inventory totals.

There will be times in our explaination in which we show our working in order to provide more detail about our calculations, but we'll try to keep the maths to a minimum. The more important thing is to understand the concepts and the mechanisms so that you can better understand how prices are calculated.

The best way to visualise the way that Craftybase calculates unit prices is to imagine a box full of beads. Each time you add more beads to the box at a different price, your unit price for the box recalculates instantly for every bead inside. Adding lots of beads with a low unit cost will dilute the unit cost for all beads in the box - they will all be slightly cheaper as a result. Likewise, adding beads with a high unit cost will increase the cost of all beads inside the box.

How rolling average costings dilute or increase unit prices

To go through now in detail: let's say we have entered a new material in the system called "Green Bead" and set the stock on hand to be zero.

Material showing zero inventory and unit price

We have now made a purchase of 3 Green Beads from the Bead Co. and they have sent us an invoice.

Typical structure of an invoice

What we'll be doing in Craftybase is adding in a new Expense for the material to capture all the information in the invoice.

Most invoices include a total tax and shipping amount which is listed separately to the cost of your purchased material - your material asset value needs to include the correct proportion of tax and shipping otherwise your inventory will be undervalued. By entering in the tax and shipping amounts in your expense, Craftybase will calculate the correct proportion of shipping and tax to apply to the material.

For this example, as we only have the one material purchased, this is quite straightforward: all of the tax and shipping will be factored into the unit cost (if there were also other items in the order, then a proportion of the tax and shipping would be applied instead).

So working through the invoice, we have purchased 3 beads at a total cost of $0.90, with tax of $0.10 and shipping of $0.20. This means our unit cost is ($0.90 + $0.10 + $0.20), then divided by 3 = $0.40.

Material showing new stock on hand and unit price after purchase

After saving our expense, Craftybase will create a new Inventory Adjustment to log the increase in stock, and will then use the information in your adjustment history to calculate a new unit price for your material.

As there are no other adjustments to consider, the system will use the information from the expense to calculate the new current unit value of your material - in our example, this will be $0.40.

Let's now say that we buy another 3 beads next week from the same company but this time the shipping is free due to an offer they are running.

New purchase of a material with free shipping

As the shipping is now zero, this will affect the unit price for this purchase, which will in turn affect your total stock value of materials. Let's see how.

When you add in the expense for this material, a second adjustment will be created with a new unit price calculated. Your actual unit price paid for the new set of 3 beads is now $0.33 - they are cheaper due to the free shipping. This means that half your stock is now cheaper in unit price than the other half.

Craftybase will now average your available stock using this information to produce a new rolling average:

Inventory adjustment history for the material

All 6 beads now have a unit price of $0.36. Any use of any available amounts of beads at this exact point in time will be costed with this value.

Inventory adjustment history for the material