Inventory : Costing Methods

Purpose

This document covers the three Costing Methods used in Odoo 15. Costing Methods are the manner in which Odoo calculates a product's cost for inventory valuation purposes. This setting is configured on product categories through the Inventory application.

Process

To get started, navigate to the Inventory application.


Once there, go to Configuration > Product Categories. Click Create and find the Inventory Valuation section on the form. This is where you'll set the Costing Method for all products in the category. This setting will affect all products in that category.


If you make changes, be sure to click save.

Good to Know!

Changing the Costing Method

If you change the costing Method on an existing category, you'll get a warning stating "Changing your cost method is an important change that will impact your inventory valuation. Are you sure you want to make that change?". This means that the value of the inventory within that category will recalculate. You can revert it by switching it back, but just be aware that this change does impact your accounting and reporting.

 

Important!

Inventory Valuation 

On this form, be sure to select 'Automated' Inventory Valuation. This ensures your accounting entries are updated automatically based on costing method.


Standard Price

In this configuration, the product cost comes directly from the Cost field on the product template.

Good to Know!

Cost of Standard Price Products

With the Standard Price costing method, neither sales + delivery nor purchase + receipt will impact the product cost. It will always remain the same.

Standard Price - Purchasing

Now, let's see what happens when product is ordered or replenished using this configuration. We currently have 0 in stock; lets order 50 dozen for $5.00/dozen.


We'll then process the receipt so the product enters our inventory. Read more about Purchase Orders and Receipts in our Purchase Order documentation


Next, from within Inventory, let's go to Products > Products and select this product. Here we can see the Cost field did not change. To see our valuation of this product, go to the menu item Reporting>Inventory Valuation, and click the Gray line to reveal the product and it's current value. 


Our inventory shows we have 50 dozen in stock with a value of $175.00, or, $3.50/dozen ($175.00 / 50 = $3.50).



Standard Price - Selling

Next, let's see what happens when we sell 25 dozen cookies (which we purchased for $3.50/dozen) for $2.00/dozen.


We'll then process the delivery so the products leave our inventory.


Next, from within Inventory, let's go to PRODUCTS > PRODUCTS and select this product. Again, we can see the Cost field did not change. We do however see the  On Hand smart button and the removal of 25 Dozens from 50, leaving us with 25. Once again, to see our valuation of this product, go to the menu item REPORTING>INVENTORY VALUATION, and click the Gray line to reveal the product and it's current value.


You'll note that each white line represents incoming value (our initial $175.00) or outgoing value (the $87.50 from the Sale Order), leaving us with a grand total of $87.50, shown on the gray line. 


Good to Know!

Manually Updating Standard Price Cost

By changing the Cost on the product template manually, you'll also update your inventory value. Here, we'll update our Shamrock Cookies from  $3.50/dozen to $6.00/dozen.

After saving the new cost, once again, to see our valuation of this product, go to the menu item REPORTING>INVENTORY VALUATION, and click the Gray line to reveal the product and it's current value.


Our inventory shows we have 25 dozen in stock with a value of $150.00, or, $6.00/dozen ($150.00 / 25 = $6.00). Note that there is now a line with no Quantity represented, as this line simply accounts for the cost increase applied to all product on hand. 


Average Cost (AVCO) 

In this configuration, the products are valued at weighted average cost.

Good to Know!

Average Cost (AVCO) Formula

With AVCO, Cost = Total Cost of Inventory / Quantity in Inventory. This means that any time you purchase + receive products into your inventory, the cost is recalculated.

For this example, we've created a product and left the Cost field at $0.00.


AVCO - Purchasing

Now, let's see what happens when product is ordered or replenished using this configuration. We currently have 0 in stock; lets order 50 dozen for $5.00/dozen.


We'll then process the receipt so the product enters our inventory.


Now, from within Inventory, let's go to Products > Products and select this product. Here we can see the Cost field updated to $5.00 because, thus far, the average cost we've paid for per dozen is $5.00. 


Let's purchase and receive another 50 dozen, but this time for $3.00/dozen.


We'll go back to Inventory, then to PRODUCTS > PRODUCTS and select this product. Here we can see the Cost field updated to $4.00 and we have 100 products in stock. We'll click the  On Hand smart button for more details.

 

Our inventory shows we have 10 dozen in stock with a value of $400. Here's why:

  • First Purchase: 50 * $5.00 = $250.00

  • Second Purchase: 50 * $3.00 = $150.00

  • Total Inventory Value: $250.00 + $150.00 = $400.00



AVCO - Selling

Next, let's see what happens when we sell 50 dozen cupcakes (with an average cost of $4.00/dozen) for $2.00/dozen.


We'll then process the delivery so the products leave our inventory.


Now, from within Inventory, let's go to PRODUCTS > PRODUCTS and select this product. We can see the Cost field did not change. Now, we'll click the  On Hand smart button to see our inventory.


Our inventory shows we have 50 dozen in stock with a value of $200.00, or, $4.00/dozen ($200.00 / 50 = $4.00).


First In First Out (FIFO)

In this configuration, the products are valued based on oldest product in inventory.

Good to Know!

First In First Out (FIFO) Formula

With FIFO, Cost = Cost of Oldest Inventory * Inventory Sold. Cost recalculates when products are sold + delivered.

For this example, we've created a product and left the Cost field at $0.00.


We'll also be tracking our products using lots based on expiration date. The date will determine that older dates (those received first) will be used first, hence, First In First Out. 


FIFO - Purchasing

Now, let's see what happens when product is ordered or replenished using this configuration. We currently have 0 in stock; lets order 5 dozen for $8.00/dozen.


We'll then process the receipt so the product enters our inventory with lot numbers and expiration dates.


Now, from within Inventory, let's go to Products > Products and select this product. Here we can see the Cost field is $8.00. This is because we've not sold any of this product, we've only purchased one lot. That lot, being the only lot, dictates the cost.


Let's purchase and receive another 5 dozen, but this time for $10.00/dozen. We'll receive this as a different lot.


Next, let's go back to Inventory, then to PRODUCTS > PRODUCTS and select this product. Here we can see the Cost field remains at $8.00 and we have 10 dozen in stock. We'll once again go to Reporting>Inventory Valuation to see the cost changes. 

 

Because we're tracking this product with lots, we see two entries for inventory. Both entries have 5 dozen, and both have a value of $8.00/dozen ($45.00 per 5-dozen). Again, we've only purchased stock and not sold any so the value remains set to that of the oldest stock.



FIFO - Selling

Next, let's see what happens when we sell 8 dozen coffee mixes for $12.00/dozen. 


We'll then process the delivery so the products leave our inventory. By selling 8 dozen, we're guaranteed to pull from both lots since one lot won't be enough to fulfill the order. Note we are consuming all of the first lot purchased at $8/Dozen, and the remaining 3 from our second lot purchased at $10/Dozen. 


Now, from within Inventory, let's go to PRODUCTS > PRODUCTS and select this product. We can see the Cost field updated to $10.00. This is because the First In lot is now gone, and the second lot cost now takes affect. Go to the Inventory Valuation Report to see the updated valuation of product that remains in stock. 

Our inventory shows we have 2 dozen in stock from the second lot we purchased, which we paid $10/dozen for. This puts our inventory value at $20.00.