← All posts
Small machine shop workbench with parts laid out in bins

Odoo Manufacturing for Small Shops: Bills of Materials Without the Headache

Why Small Shops Struggle with BOMs

Most small manufacturers start with Excel or a notebook. It works until it does not. One change in a supplier part number and suddenly every spreadsheet is wrong. Orders get built with the wrong components. Inventory counts drift. The owner ends up spending nights fixing mistakes instead of running the business.

Odoo Manufacturing fixes that by treating the bill of materials as the single source of truth. Once you build it right, everything downstream just works. Production orders pull the exact components. Inventory updates automatically. You stop guessing what is in stock and what you can actually build today.

The key is keeping it simple from day one. Do not try to model every possible variation on the first try. Start with your top three products and build from there. That is how I help shops get live without the usual headache.

Close-up of labeled component bins in a small manufacturing workshop

Setting Up Your First Bill of Materials

Go to the Manufacturing app and click Products, then Bill of Materials. Hit create. Give it a clear name like "Widget v2 - Standard". Select the finished product it produces.

Add each component on the lines below. Use the product name exactly as it appears in inventory. Set the quantity per unit. If you build one widget and it needs four screws, put 4. Odoo does the math for you on every production order.

Save it, then test it immediately. Create a manufacturing order for one unit and watch what happens. The system will reserve the components if they are in stock. This quick test catches 90 percent of setup errors before they matter.

Using Components That Change

Small shops hate rigid BOMs because parts get substituted all the time. Odoo lets you handle this without rewriting the whole thing every month.

Create alternative components as separate products. Then add them to the BOM using the "optional" or routing features. Better yet, use product variants if the difference is size or color. One BOM can cover ten variations if you set the templates correctly.

When a supplier sends you a different grade of material, simply consume it against the order and adjust the cost in the receipt. The BOM stays clean. Your reports still show accurate usage over time. No more version control chaos.

Routing Operations the Easy Way

A bill of materials is only half the story. You also need to know the steps to build it. That is where routings come in.

In Odoo you attach a simple routing to the BOM. List the work centers in order: cut, weld, paint, pack. Add estimated time for each. Now every production order generates a clear checklist for the floor.

Keep the routing short. Most small shops I work with run three or four steps max. If your process has twenty steps, group them. The goal is visibility, not perfection. Floor guys will actually use a four-step routing. They will ignore a twenty-step monster.

Inventory and BOMs Working Together

The magic happens when inventory and manufacturing talk to each other. Odoo does this automatically once the BOM is set.

Set reorder rules on your raw materials. When stock drops low, Odoo suggests a purchase. When you confirm a manufacturing order, it pulls from inventory in real time. Finish the order and the finished goods count goes up.

Run a quick inventory adjustment once a month. Walk the shelves, scan what you see, and let Odoo reconcile. The BOM stays accurate because the counts stay accurate. That loop is what keeps small shops from drowning in stock discrepancies.

  • Check raw material stock before releasing big orders
  • Use the "unbuild" feature when a customer returns a product
  • Run the "BOM structure report" once a quarter to catch drift

Common Mistakes That Create Headaches

I see the same errors every time. First, people make one giant BOM that tries to cover every possible configuration. Split them. One BOM per core product family is plenty.

Second, they forget to update costs. When steel prices jump, update the component cost so your margins do not lie to you. Odoo can pull standard costs or actual costs depending on how you set the product.

Third, they skip training the shop floor. Show the guys how to confirm operations on their phone or tablet. Once they see the list update in real time they stop writing on paper.

Last mistake: treating Odoo like it needs to match your old broken process. Simplify first, then configure. The software rewards clean data.

If you are weighing this for your own shop, here is how I help teams get Odoo running right.

Making It Stick in a Real Shop

The shops that win with Odoo Manufacturing treat the BOM like a living document. They review it every time they run a new batch. If something is consistently off by a few percent, they adjust the quantity in the BOM instead of fudging it on the floor.

I tell every owner to spend one morning a month in the app. Look at the manufacturing orders that did not go perfectly. Fix the BOM, adjust the routing, update a cost. Ten minutes of cleanup prevents hours of pain later.

Start small, stay disciplined, and the system stops feeling like software. It starts feeling like the guy who used to keep everything in his head finally got some sleep.

Frequently Asked Questions

Can I use Odoo Manufacturing if I only make 50 units a month?

Yes. The system works just as well at low volumes. Set the BOM once and every order pulls the right parts. You will actually save more time at low volume because mistakes hurt more when you cannot hide them in high output. Many shops start here and scale up without changing their setup.

How do I handle products that have options like different colors or sizes?

Use product variants inside one BOM. Create a template product with attributes for color and size. The BOM references the template and Odoo expands it when you create the manufacturing order. One BOM, many finished SKUs. Keeps your list short and accurate.

What if my supplier substitutes a part without telling me?

Mark the component as "flexible" in the BOM or add it as an alternative item. When the new part arrives, receive it against the purchase order and consume it on the production order. Odoo tracks the actual usage so your inventory and costing stay correct even when plans change.

Do I need to be a programmer to set this up?

No. If you can list the parts that go into your product, you can build a BOM in Odoo. The interface is point and click. Spend a few hours with the sample data and you will be comfortable. Most small shops get their first three BOMs live in a single afternoon.

Share this post X Facebook LinkedIn
David Strausser

Written by David Strausser

David is CEO of Dead Brands, LLC and Head of Sales (contracted) for Quaint Business Solutions — an ERP veteran of over a decade across SAP Business One and Odoo. Ex-General Manager (Northeast) at Vision33 and VP of Business Development at SEIDOR. Dad, guitarist, Eagles fan.

Keep reading

Try Odoo free

See why so many small businesses are ditching a dozen disconnected apps for one platform. Spin up Odoo and kick the tires yourself — no credit card, no sales call required.

Start Your Free Odoo Trial

Shop the brand

Take a piece of the bite with you

Dead Brands white v-neck — white v-neck shirt with the official Dead Brands crowned skull logo
View all in the store →