In most small and mid-sized manufacturers, "cost of manufacture" is a number the owner knows to plus-or-minus 20%. They know product A costs "somewhere between 180 and 220 PLN", so they sell for 260 and assume they have margin. Then the accountant shows up with the year-end report and it turns out a product line that "was clearly working" ran at a loss last quarter. The blame hunt starts. Usually there is no one to blame. There is a BOM in Excel from 2022 and a labour cost calculation last updated when minimum wage was 40% lower.
This post is about why a BOM (bill of materials) kept in Excel stops working the moment a company crosses 15-20 people, and how to move cost of manufacture into the ERP you already have. Without buying a new system and without hiring a full-time controller.
Why a BOM in Excel stops working
Excel is excellent at exactly one thing: calculating the cost of one product at one point in time. You open the sheet, type in current raw-material prices, hours per piece, add overhead, done. The problem starts when you make not one product but a hundred, purchase prices shift every month, and the BOM has three variants depending on the customer.
The typical symptom list we see at 15-40-person manufacturers:
- BOM differs between design, technology and the shop floor — the designer has one spreadsheet, the process engineer has their own version with "substitutions" made on the floor, the warehouse issues whatever is at hand. Three different truths about the same product.
- Raw-material prices in Excel are six months old — because updating 400 lines by hand takes two days nobody has. Meanwhile sheet metal went up 18% and the calculation doesn't know.
- Labour is one number covering everything — "the process engineer said this is 2 hours", so you multiply by the rate and that's your labour cost. Nobody measures whether it's really 2 hours or 3 hours 20 minutes.
- Departmental overhead is a percentage guessed in 2019 — 15% on everything, because that came out right a year ago. Nobody checked what it actually costs to run the floor in 2026.
- Scrap and defects aren't in the calculation — the sheet assumes 10 kg of material becomes 10 kg of product. Reality: 8.2 kg of product, 1.8 kg of scrap. That's 18% of cost missing from the model.
- Product variants live in the process engineer's head — the customer wants "the same thing, just galvanised". The variant isn't in Excel, but the process engineer knows galvanising is +7 PLN materials and +15 minutes labour. Until the process engineer goes on holiday.
The result: the company sells at prices it thinks give 25% margin, and really gives 8%. Or, on some orders, minus 3%.
Three layers of cost of manufacture
Every serious production-capable ERP — Comarch ERP XL, enova365, Microsoft Dynamics 365 Business Central, Streamsoft Prestiż — looks at cost of manufacture as the sum of three layers. It's not rocket science, but you have to name the layers to know where in the company you are leaking money.
Layer 1 — direct material cost. Everything physically going into the product: sheet metal, screws, paint, electronics, packaging. In the ERP that's a BOM with quantities and current purchase prices. Key word: current. A BOM linked to the material master pulls the latest purchase price or a weighted-average automatically — no manual spreadsheet update.
Layer 2 — direct labour cost. Time operators and machines need to make the product. In the ERP that's a routing: a list of operations, time on each operation, hourly rate at each workstation. The routing must be in sync with how the product actually moves through the shop floor — not with how the designer imagined it in 2021.
Layer 3 — departmental and general overhead. Everything that can't be traced directly to the product but has to be covered: energy, machine depreciation, warehouse cost, foreman and office wages. In the ERP that's usually a percentage on direct cost or an hourly overhead rate. Key: overhead needs to be recalculated once a year, not once for the life of the company.
The sum of these three layers is technical cost of manufacture. On top comes SG&A (another 8-15%) and only then do you have the starting point for pricing. Companies that calculate margin from cost without general overhead live in an illusion of double-digit profit that the accountant can't see.
Routing and shop-floor reality
The biggest difference between a BOM in Excel and a BOM in the ERP is that in the ERP each product is tied to a routing — a list of technological operations with time per operation and the workstation performing it. That sounds like corporate-speak, but in practice it means one thing: you know where in your shop the production is standing, and how much money is standing with it.
When the routing lives only in the process engineer's head, every "what does product X cost?" ends with them picking up the phone, walking onto the floor, looking at the machine and saying "eh, about 2 hours". When the routing is in the ERP, the answer takes 2 seconds: 47 minutes on the laser cutter, 22 minutes on bending, 15 minutes on welding, 8 minutes on painting — 92 minutes across three workstations with different rates. That's a number you can build a quote on.
Routing also does something few people remember at the start: it lets you calculate what a batch really cost. When the operator clocks the start and end of the operation in the system, you see after the fact whether the 92 minutes on the calculation match the 92 minutes on the floor, or 140. If it's consistently 140, the calculation needs redoing — otherwise you're selling below cost. You don't need a full MES for this; basic operation-time tracking in the ERP, driven from a tablet on the shop floor, is enough. That's a topic for its own post; here it's enough to remember: a calculation without comparison to reality goes stale in 3 months.
When you really know what a product costs
A manufacturer really knows what a product costs when four conditions are met:
- The BOM in the ERP is in sync with design and technology — designer, process engineer and warehouse look at one list, not three.
- Material prices in the BOM come from the material master — automatically, not by hand. A change in purchase price = automatic change to the calculation on every product that uses the material.
- The routing is in the ERP with real times — not "ideal" times from the design, but times you can see on the floor. Usually 15-30% longer.
- Overheads are recalculated once a year — after year-end, accounting gives you real cost of running the floor and office, you divide by planned productive hours, and you get real overhead. Not 15% picked out of thin air.
If those four conditions are met, cost of manufacture is accurate to 3-5%. If not, you're at 15-25% accuracy — which is roughly how much you can lose on a single order without noticing.
A concrete real-life example
25-person steel-fabrication manufacturer near Rzeszów, Comarch ERP XL with a production module bought three years earlier and effectively unused. BOMs for 180 active product codes lived in Excel, maintained by the designer — one sheet per product, purchase prices typed in "when someone remembers". The routing lived in the production manager's head. Departmental overhead — 18%, set in 2020, untouched since.
Why they called us: fiscal year closed with a 340,000 PLN loss on 11.2 million PLN of revenue and "good" quotes. The accountant said general costs went up 22% since 2023. The owner didn't buy it, because "every product sells at 22% markup".
What we did, over four months, in order:
- Audit of Excel BOMs vs. floor reality — three days with the designer and production manager. Result: 34 of 180 BOMs had wrong material quantities (scrap not counted), 51 had stale purchase prices (understated by 14% on average), 22 products were sold in variants that never existed in Excel.
- Move BOMs into the Comarch ERP XL production module — two weeks with the designer, roughly one working day per product. Linked to the material master so purchase prices pull automatically. Scrap entered as a percentage on every BOM line (from 3% on sheet metal to 12% on welding consumables).
- Routings for the top 40 products — those 40 products drove 78% of revenue. The production manager and the process engineer walked the floor and entered real operation times for every product. Not "ideal" — real, including setup.
- Recalculating departmental overhead — accounting gave us real 2025 costs of running the floor (energy, depreciation, indirect wages), divided by planned productive hours. It came out to 27%, not 18%. That single correction changed the margin picture on half the product range.
- Operation-time tracking on the floor — a tablet at each workstation, operator clocks start and end. After a month we compared plan to actual. On the laser cutter the difference was negligible; on manual welding it was consistently 22% longer than the routing. Routing corrected.
- New pricing for the top 40 products — 11 products turned out to be sold at a loss (-2% to -14% margin). 6 were renegotiated with customers over 2 months, 3 were withdrawn from the offer, 2 kept as "loss leaders" consciously.
Result after 4 months: gross production margin went from 8.4% to 16.1%. On planned revenue of 12 million PLN next year, that's about 920,000 PLN. For the first time the owner saw a report where products were sorted by real margin, not by "markup out of thin air". As a bonus, the products everyone thought were "the bread and butter" turned out to be the worst margin — and the margin was actually in three unremarkable codes sold to one regular customer.
Project cost: about 42,000 PLN over four months — BOM audit, Comarch ERP XL production rollout, training for the designer, process engineer and manager, tablets on the floor. Payback: the first full month after the pricing change.
Traps worth watching for
A few things that will kill the project:
- "The designer knows everything by heart" — as long as they stay. When they leave, it turns out the knowledge was in their head, not in the system. A BOM in the ERP isn't just a costing tool, it's insurance against staff turnover.
- Too precise a BOM on day one — trying to enter all 400 products in the first month always ends with the project abandoned. The top 40-60 products usually drive 75-85% of revenue. Start there, fill in the rest as orders come.
- "Ideal" routing instead of real — the designer will write the routing as it would be on a perfectly set-up floor. Reality differs. Always compare with the first batch and correct.
- Departmental overhead as a "company constant" — 15% from 2019 isn't a constant, it's a fossil. Recalculate it once a year with accounting from real costs. Otherwise the margin in your reports is fiction.
- Scrap and defects outside the calculation — if 10 kg of metal becomes 8 kg of product, the BOM needs 12.5 kg per unit, not 10. Otherwise every unit is 25% of material cost too cheap.
- Product variants as "we'll figure it out" — coating, finish, alternative material — these aren't "details". In an ERP BOM they need to be defined variants with concrete cost differences, otherwise sales sells the premium variant at the standard price.
- Operation tracking "later" — if the operator clocks times from memory at end of day, the data is worth as much as the designer's Excel. Real-time clocking on a tablet, at the start and end of the operation — otherwise it's better not to measure at all.
What it actually costs
For a 20-40-person manufacturer, realistic ranges:
- BOM and routing audit — 3-5 consultant-days with the client's process engineer (5,000-9,000 PLN). Output: gap list, product priorities, rollout plan.
- Production module and BOMs for the top 40 products — 8-15 consultant-days (15,000-30,000 PLN), depending on the system and variant count. Comarch ERP XL, enova365 with the production module, Streamsoft Prestiż sit in a similar bracket; Business Central runs 30-50% higher on consulting.
- Routing and operation tracking — 5-10 consultant-days (10,000-18,000 PLN) plus tablets on the floor (2,000-4,000 PLN per workstation).
- Overhead recalculation with accounting — 1-2 days (2,000-4,000 PLN), usually once a year.
- Review after 3 months — 1-2 consultant-days (2,000-4,000 PLN). The first round always needs correcting.
Total: 35,000-70,000 PLN. Payback: raising gross margin by 3 percentage points on 10 million PLN of revenue is 300,000 PLN a year. Payback in 2-4 months, if the company actually changes pricing based on the new numbers.
What next
Moving BOMs from Excel to the ERP isn't an IT project. It's a controlling project where IT supplies the tool. The biggest value isn't in the system itself, it's in seeing real numbers for the first time: where the company actually earns, where it subsidises, and how much the offer needs to move.
If you suspect it looks the same at your place — half an hour of conversation is usually enough to know which end to pick this up from. No commitments, no 40-slide deck.
A manufacturer who calculates cost of manufacture in Excel isn't calculating cost of manufacture. They're guessing — and as long as they guess reasonably well, they live. When the guesses start going wrong, they find out from the annual balance sheet, six months too late.