In this article, we’re looking at the four most common BOM mistakes we hear custom steel fabricators talk about most often, why each one happens, and how to solve them. For a 25-person shop, the worked example further down puts the cost at about $77,000 a year, close to 8% of gross margin, and there is a calculator to run your own numbers.
BOM mistake1: Treating the estimate BOM and the production BOM as the same thing
Most lost margin starts here, at the handoff. The estimator builds a bill of materials to win the job: fast, approximate, priced to be competitive. Then the job is won, and the shop floor needs a completely different bill of materials to build the job: every part, profile, length, sub-assembly, and the order to make them in.
In a lot of steel fabrication shops, nobody converts one into the other. The estimate lives in one spreadsheet, the production list gets rebuilt from scratch in another, and the two never reconcile. The estimator wins the work, and then production starts from zero.
This is the difference between an engineering BOM and a manufacturing BOM: the engineering BOM describes what the thing is, the manufacturing BOM describes how you make it. When a shop treats them as one document, three things leak money:
- Double data entry, because the floor re-keys what the estimator already built.
- Lost scope, because something the estimator priced never makes it into purchasing or the cut list.
- Quotes that never get smarter, because nobody compares the estimate BOM against what the job actually consumed.
How to fix it: carry one living BOM from the quote into the job, so the estimate becomes the production list instead of being rebuilt. When a quantity or a revision changes, it should change in one place and flow downstream automatically. This is exactly what EZIIL does: the BOM you quote on becomes the BOM the shop floor works from, so the handoff stops being a re-typing exercise. One of our customers, VMT Steelwork, found that one hour spent structuring the BOM in EZIIL saved roughly a day of downstream work across purchasing and production. (More on how we handle this on the features page.)
BOM mistake 2: Buying against jobs with no over/short exception report
Once the BOM exists, the next leak is procurement buying blind. The classic version: purchasing orders off a stale or partial BOM, and there is no flag when you over-order or under-order against what the job actually needs.
For example, here’s the question: “I bought 100 ft of 2×2 angle, I need 75. Do I have an over/short flag?” If the answer is no, two expensive things happen. You tie up cash in steel the job does not need, and you discover the shortages mid-build, when the only fix is an expedite fee and a stalled bay.
This is why material waste in fabrication so often sits in the 10-20% range. A spreadsheet cannot reconcile “bought” against “needed” against “already reserved” in real time, so offcuts and over-orders never get reconciled against the next job, and a small error in the bill of materials quietly cascades into waste, shortages, and a stopped bay.
How to fix it: let purchasing reserve material against a job before the BOM is even final, then raise an over/short exception report automatically when the finished BOM lands. Bought 100 ft, need 75? The 25 ft over should be flagged and visible, not buried. Just as important, the BOM should arrive by import, not by hand. EZIIL pulls bills of materials in from CAD and detailing tools like Tekla, Inventor, and Advance Steel, so the list is not rebuilt manually, and gives purchasing real-time inventory updates tied to each job. That is the integration capability that keeps procurement honest instead of guessing.

BOM mistake 3: Letting two jobs fight for the same material because the BOM is not live
When a BOM is a static document instead of a live record connected to your schedule, two jobs can each be promised the same steel, and nobody finds out until the bundle is gone. The owner of a US based custom steel shop described what that does to planning: two big projects both ran a week and a half late at the same time, and the schedule, in his words, “is not based on our actual capacity, that’s all kind of like gut feel.”
Gut feel is expensive. When material allocation is invisible across jobs, capacity planning is a guess, the late job triggers a domino of downstream slips, and the cost shows up as a missed delivery date and a client who remembers it.
How to fix it: keep the BOM live and tied to the schedule, so material reserved by one job is visible to every other open job, and capacity reflects real allocation instead of a guess. This is what real-time BOM tracking is actually for. In EZIIL, a change in the BOM updates the schedule and the material picture together, so two jobs cannot quietly book the same steel. The payoff is not just fewer collisions, it is production scheduling that runs on facts, which is the single biggest driver of on-time delivery in a multi-project shop. See how EZIIL approaches this in the production scheduling software comparison article.
Two jobs, one beam: how EZIIL reserves material per job
This is the version we hear most. A stair job and a platform job both need the same 6 m length of HEA 200. It is on the rack, both project managers can see it, and both assume it is theirs. Whoever cuts first gets it, and the other job finds out at the saw.
In EZIIL, steel you own but have not committed to a job sits in the material warehouse as free stock. When a job needs it, someone in the office moves it into that job’s production warehouse with a warehouse movement. The movement names the project and phase, so from then on the stock list shows the beam against that job and it no longer counts as free stock for anyone else. If two jobs share one bundle, you split it into two rows, one per job, because a movement row belongs to exactly one job.
You can see the clash before anything is moved. The Inventory Overview shows, for every article, what is in stock and where, what is already in production, the total need across open jobs and which jobs that need comes from, the free or still-to-buy balance, and what is on open purchase orders. When stock no longer covers the combined need, the row turns red. Need is read straight from each job’s BOM once the job reaches a status that counts for purchasing, so the second job shows up as a shortage before anyone walks to the rack.
Leftovers go the other way. A reverse movement sends an offcut from the job back to free stock, and it keeps its batch number, which matters if you work to EN 1090. If you park offcuts in their own shelf location, the overview shows full lengths and remnants apart.
Two limits to know before you rely on it. The movement is an office step: reporting time on the shop floor does not move material, so the record is only as current as the last movement someone made. And software does not lock the rack. EZIIL records which job owns the beam, and the yard still has to mark it, usually by writing the job or PO number on the steel. (This uses the BOM and inventory modules.)
BOM mistake 4: Rebuilding traceability and cost actuals from paper after the job ships
The last mistake is treating the BOM as a document you file rather than the system of record. When the BOM is not the live record, two costly things break at once: compliance traceability and job cost.
On the compliance side, this is not optional for a lot of our customers. For European shops, EN 1090 has been mandatory since 2014, and material traceability, tying each heat number and mill certificate back to the part, is a core requirement, especially in the higher execution classes. For North American shops, the AISC Certified Fabricator program expects end-to-end material identification and traceability maintained through cutting, drilling, welding, and painting. If your BOM is a filed PDF, that audit trail gets rebuilt from paper every single time, and that is days of someone’s week, every audit.
On the cost side, the same disconnect means you do not know if a job made money until after it ships. There is no plan-versus-actual loop, so the next quote repeats the last job’s mistakes, and revision drift reaches the floor too late to stop the wrong parts being cut.
How to fix it: make the BOM the live record, so traceability and cost actuals come out of the same data instead of being reconstructed afterward. This is where a fabrication-specific tool earns its keep over a generic MRP system, because EN 1090 and AISC traceability are built into the BOM record rather than bolted on. EZIIL keeps the heat numbers, revisions, and consumed quantities attached to the live BOM, so the audit trail and the job-cost report are a by-product of running the job, not a separate paperwork exercise. Our customer BW Metall, a structural steel fabricator, used exactly this to move off spreadsheets without losing the compliance trail they had built up over years.
What a BOM error costs a 25-person shop: a worked example
Percentages are easy to wave away, so here is one shop priced out. Take a custom fabricator with 25 people (18 on the floor, 7 in the office), about $4 million in annual revenue, 10 to 15 jobs open at any time, and $1.2 million a year spent on steel and bought-in parts.
In a shop like this, the most common BOM error is an ordinary one: a profile that was missed, promised to two jobs, or cut from an old revision, found when the fitter goes to the rack. Here is what one of those costs.
| What happens | Assumption | Cost |
|---|---|---|
| Floor time lost | 2 fitters stopped or moved to other work for 4 hours, at a $55 loaded hourly rate | $440 |
| Expedite | Hot-shot delivery and a small-quantity premium on one profile | $350 |
| Office time | Planner and buyer re-sequencing and re-ordering, 3 hours at $60 | $180 |
| Catch-up overtime | 6 hours to pull the delivery date back, at $55 plus a 50% premium | $495 |
| One incident | $1,465 |
And over a year:
| What happens | Assumption | Cost per year |
|---|---|---|
| Shortage incidents | 3 a month, fewer than one a week across 10 to 15 open jobs | $52,740 |
| Over-buying | 2% of material spend bought and never used or reconciled | $24,000 |
| Total | $76,740 |
That is about $77,000 a year, close to 8% of the shop’s gross margin if it runs at 25% ($1 million). It sits inside the 5 to 15% range we hear in sales calls, and it leaves out the costs that are harder to price: a late-delivery penalty, or a client who does not come back.
The incident rate moves the total more than the cost of each incident does. In this example, cutting shortages from three a month to one and a half saves about $26,000 a year, which is what live material allocation is for.
Run it with your own numbers
BOM error cost calculator
Pre-filled with the 25-person shop above. Change any number to match your shop.
One incident
$1,465
Incidents per year
$52,740
Over-buying per year
$24,000
Total per year
$76,740
Share of gross margin
7.7%
Illustrative only: the defaults are assumptions, not benchmarks.
These figures are an illustration, not a benchmark. To cost a whole job rather than BOM errors, use our free job cost calculator.
What good BOM management looks like
Flip the four mistakes over and you get a short checklist for a healthy shop:
- One BOM travels from quote to shop floor. It is never rebuilt.
- Material is reconciled live, with an over/short flag against every job.
- Allocation is visible across all open jobs, so two jobs never share the same steel by accident.
- The BOM is the traceability record and the cost record, not a filed document.
- Revisions reach the floor automatically, before the wrong parts are cut.
EZIIL is the right tool for this if you are a project-based custom steel fabricator with roughly 15 to 150 people, and you are coming off Excel or out of a tool that was never specifically built for steel fabrication. If you are a high-volume repeat-product manufacturer, a standard MRP system may fit you better.
For the shops we do fit, the BOM is a module that sits on top of the Starter base product, so you can begin with scheduling and shop-floor tracking and add BOM management when your team is ready. Pricing is for the whole team, not per seat, and it starts at EUR 120 (about USD 140) per month. You can see the full breakdown on the pricing page, and the bigger picture in our guide to BOM management for small steel fabricators.
Quick BOM Health Check for Steel Fabrication Shops
Here are ten quick yes/no questions that map to the four mistakes above. If you answer “no” to more than two, your BOM process is probably leaking margin.
- Does the BOM that won the job become the BOM the shop floor works from, without re-typing?
- Can you tell the difference between your engineering BOM and your manufacturing BOM?
- When purchasing buys against a job, do you get an over/short flag automatically?
- Can you import a BOM from your CAD or detailing tool without rebuilding it by hand?
- Can you see right now what steel is reserved across every open job?
- If two jobs need the same material, are you warned before the rack is empty?
- When a revision changes, does the shop floor see it before parts are cut?
- Is your EN 1090 or AISC traceability a by-product of the BOM, or rebuilt from paper?
- Do you know a job’s actual material cost before it ships, not after?
- Does last job’s actual consumption make your next quote more accurate?
faq
What are the most common BOM mistakes in steel fabrication? The four that cost the most are: treating the estimate BOM and the production BOM as one document, so the shop floor rebuilds it from scratch; buying against jobs with no over/short exception report; letting two jobs reserve the same material because the BOM is not live; and treating the BOM as a filed document instead of the live traceability and cost record. All four happen in the gap between the quote and the shop floor, and all four are fixable without replacing your whole software stack.
How much do BOM errors cost a fab shop? In our sales calls with small custom fabricators, the leak from poor BOM management tends to run between 5 and 15% of margin on project-based work. Take a worked example: a 25-person shop with $4 million in revenue has three BOM-driven shortages a month at about $1,465 each and over-buys 2% of its steel. It loses about $77,000 a year, close to 8% of a 25% gross margin. It shows up as material waste (often 10 to 20%), expedite fees on shortages caught mid-build, cash tied up in overbought steel, late-delivery penalties, and quotes that never improve because nobody compares the estimate against actual consumption.
What is the difference between an engineering BOM (EBOM) and a manufacturing BOM (MBOM)? The engineering BOM describes what the product is, as designed, often straight out of CAD. The manufacturing BOM describes how you actually make it: parts, profiles, cut lengths, sub-assemblies, consumables, and the sequence of operations. Steel fab shops get into trouble when they try to run production off the engineering BOM, because it was never built to drive purchasing or the shop floor.
How do I stop two jobs from using the same material? Commit the material to a job before anyone cuts, and make that commitment visible to every other job. In EZIIL, steel moves from free stock into a specific job’s production warehouse with a warehouse movement. From then on it shows against that job and no longer counts as free for the others. The Inventory Overview turns an article red when stock no longer covers the combined need of all open jobs, so the clash shows up before the rack is empty. Because the movement is an office step, the yard still marks the steel with the job or PO number.
Can I manage a BOM in Excel, and when does it break? For a one to five person shop, Excel plus a CAD-side BOM export is genuinely fine. It starts breaking around the point where you are running several jobs in parallel: a spreadsheet cannot reconcile bought versus needed versus reserved in real time, it has no revision control to the floor, and it cannot give you live cost or traceability. For a deeper look, see our BOM management guide.
What is the best BOM software for small custom steel fabricators? The right tool depends on what you build, but for project-based custom steel fabricators with 15 to 150 people, you want a fabrication-specific platform that carries one BOM from quote to floor, imports from your CAD tools, reconciles material in real time, and builds EN 1090 or AISC traceability into the record. EZIIL is built for exactly this segment. For a full comparison of options, see our roundup of the best BOM management software for small fab shops.
Does BOM software help with EN 1090 or AISC compliance? Yes, when the BOM is the live record rather than a filed document. EN 1090 requires material traceability from supplier to installed structure, and the AISC Certified Fabricator program expects material identification maintained through every process step. If heat numbers, mill certificates, and revisions are attached to the live BOM, the audit trail is a by-product of running the job instead of a separate paperwork exercise.
How does fixing BOM management improve production scheduling? Material allocation and capacity are the same question. When the BOM is live and tied to the schedule, the system knows what steel each job has reserved, so it can show real capacity instead of a guess, warn you before two jobs collide, and reflect a revision or quantity change in the schedule the moment it happens. Shops that close this gap typically see fewer downstream slips and more reliable delivery dates.
EZIIL is fabrication management software built for project-based custom steel fabricators. Take a free product tour and see it in action.