Cost Tracking - Average Cost

Last Updated: Apr 02, 2019 09:58AM PDT
Average cost is a cost flow assumption method used to keep track of fluctuations in cost over time.

Average cost is operationally simpler than Stitch's alternative method, FIFO, but can blur changes in cost over time and can bake in large cost fluctuations long past the receipt of inventory.

Note: This article applies only to the latest version of Stitch. If you're using an older version, please refer to the corresponding Stitch Classic article.


Average Cost is based on the average cost of a variant's units held in inventory at a given time. Stitch calculates average cost when units are received from a PO using the following formula:

((existing average cost * existing unit qty) + (ship notice cost * received qty)) / total unit qty after receipt

When using the Average Cost method, costs for a variant are averaged across your entire organization, regardless of the warehouse they are located in.

Note: Stitch offers classic average cost tracking for legacy plans. Such average cost is computed by dividing the total cost of available units by the total available units. This result is applied to the units in the ending inventory.

COGS of a sale will be based on the AUC at the time units ship. Please refer to the following example for a better understanding:


Open Units

Unit Cost

Open Unit Cost

Total Cost

Initial Inventory (Layer 1)





Sale 1



Initial Inventory (Layer 1)









Initial Inventory (Layer 1)





Layer 2





Sale 2



Layer 2





***Average Unit Cost = ((25 units from layer 1 @ 10) + (50 units from PO @ 20)) / (25 units from layer 1 + 50 units from PO)

COGS = 75 units from layer 1 @ $10 + 25 units from layer 2 @ $16.667 = 1166.67

Ending Inventory Balance = 50 units from layer 2 @ $16.667 = 833.33

Note that the sum of COGS and the Ending Inventory Balance ($1166.67 + $833.33 = $2000) is equal to the total cost of the inventory (100 units @ $10 + 50 units @ $20 = 2000)

Editing Average Cost

Average cost can also be updated directly by using by reconciling through the Variant Detail page or by using the Inventory CSV to update in bulk. 

Critical Info

  • If stock goes to 0 before new units are received, the newly opened layer will have a unit cost equal to the cost entered on the received PO. That's because the existing average cost * existing unit qty will be 0 in this equation: ((existing average cost * existing unit qty) + (ship notice cost * received qty)) / total unit qty after receipt