How to Roll Up Product Cost Through a BOM in Odoo

The cost of a manufactured product is built up through its BOM. How that roll-up works in Odoo.

The cost of a manufactured product is not a single figure someone sets; it is built up from the things that go into making it. In Odoo, that build-up happens through the bill of materials. This piece explains how product cost rolls up through a BOM in Odoo.

What "rolling up" means

Rolling up cost means calculating the cost of a manufactured product by adding together the costs of everything that goes into it: the components, and the operations that turn those components into the finished product. For a multi-level product, the roll-up happens level by level, the cost of a sub-assembly is itself rolled up from its components and operations, and then that sub-assembly cost feeds into the level above. The roll-up is the BOM structure being used as a costing structure.

The two ingredients: components and operations

A rolled-up product cost in Odoo has two main ingredients.

Component cost. Each component on the BOM has a cost, and the BOM says how much of it is used. Multiplying cost by quantity, and summing across all components, gives the material cost of the product. For a component that is itself manufactured, its cost is its own rolled-up cost.

Operation cost. If the BOM has routing operations, each operation runs at a work center, and a work center has a cost, typically an hourly rate, and the operation takes time. The cost of the operations is the work involved in producing the product. Adding the operation cost to the component cost gives the full cost of the product.

Component cost plus operation cost, rolled up through the levels, is the cost of the manufactured product.

What makes the roll-up accurate

The roll-up is a calculation, and its accuracy depends entirely on its inputs. For the rolled-up cost to be right, a few things have to be right. The BOM has to be accurate, the right components in the right quantities, because a wrong BOM rolls up a wrong cost. The component costs have to be accurate. The routing has to reflect the real operations, and the work centers have to have realistic cost rates and times. If those inputs are sound, the rolled-up cost is meaningful. If they are guesses, the roll-up is a confident wrong number.

Seeing the breakdown

Odoo provides an interactive BOM structure and cost report, which lets a manufacturer explore a BOM and see the cost rolled up through it. This is genuinely useful: it shows not just the total cost but where it comes from, which components and which operations contribute what, level by level. That breakdown is what lets a manufacturer understand a product's cost, see what drives it, and judge the effect of a change, a different component, a more efficient operation, on the total.

Why the roll-up matters

The rolled-up cost is the basis for pricing and margin decisions. A manufacturer that knows the real, rolled-up cost of its products can price with confidence and know which products earn their keep. A manufacturer guessing at product cost is making its most important commercial decisions blind. The roll-up through the BOM is what turns cost from a guess into a known figure.

The takeaway

Product cost rolls up through a BOM in Odoo by adding component costs and operation costs, level by level, so the cost of a manufactured product is built from everything that goes into it. The roll-up is only as accurate as its inputs, the BOM, the component costs, the routing, the work center rates, so those must be sound. Odoo's BOM cost report shows the breakdown. An accurate roll-up is the basis for confident pricing and margin decisions. For how we approach Odoo for manufacturers, see our manufacturing work.

All posts

Got a Topic Worth Posting?

Suggest a Topic

If a question keeps coming up in your operations, it might be worth its own post.