Almost every problem a plant has with material — the shortage that stops a line, the over-issue nobody can explain, the job that costed twice what it should — traces back to one document being wrong or missing: the Bill of Materials. It is the least glamorous object in a production system and the most load-bearing. Get the BOM right and requisitions, costing, routing and traceability all fall into place. Get it wrong and every downstream number inherits the error. This guide walks through what a BOM actually is, how a Bill of Resources sits alongside it, and the handful of ideas — qty-per, structure, release, revision, costing — that separate a bill you can run production on from a parts list in a spreadsheet.
We will use one running example throughout: a simple welded cantilever bracket assembly, the kind of part a fabrication or engineering job shop makes by the hundred. It has a machined pin, a welded frame, some bought-in fasteners and a coat of paint. Nothing exotic — which is exactly why it shows the mechanics clearly. If you want the wider category context first, our pillar guide on what production management software is sets the scene; this article zooms into the engineering definition that everything else draws on.
People say "BOM" loosely to mean the whole recipe. Strictly, the Bill of Materials is what a product is made of, and the Bill of Resources is what it takes to make it. Together with a process or route sheet they form the released definition a work order explodes into a requisition and a routing. This guide keeps the two straight.
1. What a Bill of Materials actually is
A Bill of Materials is a structured list of the components that go into one unit of a product. At its simplest it is a parent item at the top and a set of child items beneath it, and for each child two numbers that do most of the work: the quantity-per and the scrap or yield allowance.
Take the welded frame that forms the body of our bracket. Its single-level BOM might read like this:
| # | Child item | Qty-per | Scrap |
|---|---|---|---|
1 | MS plate 6 mm — cut blank Sheared and bent base plate | 2 nos | 5% |
2 | MS square tube 40×40 Cut to 320 mm lengths | 1.28 m | 8% |
3 | Welding wire (consumable) MIG wire, charged per assembly | 0.06 kg | — |
Quantity-per answers the question the store keeper actually asks: for one frame, how much of this do I need? Two plates, 1.28 metres of tube, 60 grams of wire. When a work order for 100 frames is opened, the system multiplies each qty-per by 100 and produces the requisition — 200 plates, 128 metres of tube, 6 kg of wire — without anyone doing the arithmetic by hand. That single multiplication is the entire point of a BOM: it turns "make 100 of these" into "reserve and issue exactly this material."
Scrap is the honesty adjustment. Shearing a plate wastes an edge; cutting tube leaves an unusable off-cut; a percentage of blanks fail before they ever reach the weld fixture. If the BOM only carries the theoretical quantity, every requisition is systematically short, the line runs out, and someone raises an urgent top-up issue that never gets reconciled. A scrap or yield allowance builds the real-world loss into the requisition so the material planned matches the material consumed. It is a small field with an outsized effect on whether your stock figures ever agree with reality.
This is why a BOM is not a static parts catalogue — it is the engine behind requisition accuracy. Material issue, WIP consumption and finished-goods yield all reconcile back to it. If you want to see where the requisition it produces gets consumed on the floor, that happens in material issue & WIP.
2. Single-level vs multi-level (structural) BOM
The frame BOM above is single-level: one parent, a flat list of children. Real products are rarely that shallow. Our finished bracket assembly is built from the welded frame, a machined pivot pin, four bolts and a powder coat — and the frame is itself built from plate and tube. That nesting is what makes a BOM multi-level, or structural.
The vocabulary manufacturers use for the tiers is worth pinning down, because the whole structure hangs on it:
- FG — finished good. The sellable end item. Here, the complete cantilever bracket assembly that ships to the customer.
- SFG — semi-finished good / sub-assembly. An item that is manufactured in-house and then consumed by a higher assembly rather than sold on its own. The welded frame is an SFG: it is made, inspected, and then fed into final assembly.
- RM — raw material. The bought-in inputs at the bottom of the tree — plate, tube, bar stock, fasteners, paint.
Read from the top down, a multi-level BOM is an indented explosion: the full tree of everything a product contains, tier by tier.
Read top-down it is an explosion — everything the product contains. Read bottom-up it is where-used — every parent a given component feeds.
Reading the same tree from the bottom up gives you the other half of its value: where-used. Point at the MS plate and ask "which items consume this?" and the where-used view answers — the welded frame, and through it the bracket assembly, plus any other product that shares the same plate. This is not a curiosity. When a raw material goes short, when a supplier discontinues a grade, or when you are about to change a component, where-used tells you the full blast radius before you act, instead of discovering it when the third assembly down the line fails to build.
Multi-level structure also drives how work flows. Each level with its own manufacturing steps becomes its own work order: you raise a work order to build a batch of welded frames (SFG), transfer them to stock, then raise a second work order for the final assembly that consumes them. The BOM is what tells the system these two jobs are related — that the frame is not a purchase but an in-house make. Our work order management guide follows that hand-off from released BOM through to finished goods.
3. BOM vs Bill of Resources — made-of vs takes-to-make
A BOM tells you what a product is made of. It says nothing about the machines, the labour, the tooling or the operations needed to turn that material into the product. That is the job of the Bill of Resources (BOR) — the second half of the engineering definition, and the one buyers most often overlook.
Where the BOM lists child materials with a qty-per, the BOR lists the resources each level consumes: which work centre, which operation, how long, with which tool or fixture. For the welded frame, the two bills sit side by side like this:
| Welded frame (SFG) | Bill of Materials — made of | Bill of Resources — takes to make |
|---|---|---|
| Line 1 | MS plate 6 mm × 2, +5% scrap | Shearing — shear machine, 0.4 min/pc |
| Line 2 | MS square tube 40×40 × 1.28 m | Bending — press brake + bend tool |
| Line 3 | MIG welding wire × 0.06 kg | Welding — weld station, fixture, welder labour |
| Line 4 | — | Inspection — in-process check gate |
Keeping them as two bills against the same parent is what lets a single work order explode two ways at once. From the BOM the system builds the material requisition — reserve the plate, tube and wire. From the BOR it builds the route or process sheet — shear, bend, weld, inspect, each on its work centre with a standard time. One release, two outputs, no re-keying. The route side is covered in detail on our process & route sheets page.
The BOM and the BOR share one parent. A work order explodes the material side into a requisition and the resource side into a routing in a single step.
The BOR is also where make-or-buy lives in practice. The machined pivot pin could be turned in-house on a CNC lathe — in which case it carries its own BOM (bar stock) and BOR (turning, an operation standard time) — or bought finished from a supplier, in which case it is simply an RM line on the assembly BOM with no resources of its own. The bill records which decision you made, and the costing that follows respects it.
4. Order-specific BOMs — when the standard product bends
Everything so far describes the master BOM: the standard, catalogue definition of how a product is normally built. For make-to-stock production that is usually enough — every unit of the bracket is the same, so one master BOM serves them all. Make-to-order and development work break that assumption constantly.
A customer orders the bracket but wants it in stainless instead of mild steel, with an extra gusset and a different bolt spec. If you edit the master BOM, you have just changed the standard product for everyone else who orders it. If you don't, the job carries the wrong recipe. The resolution is the order-specific BOM: a Bill of Materials raised against a particular customer order — an order acceptance, or OA — that deviates from the master only where this job requires it.
So two eras of BOM coexist, deliberately:
| Aspect | Master BOM | Order-specific BOM |
|---|---|---|
| Defines | The standard product, for all orders | What this one order will actually consume |
| Raised against | The item / product catalogue | A customer order (OA) or development OA |
| Changes affect | Every future job for that item | Only the job it belongs to |
| Typical use | Make-to-stock, repeat production | Make-to-order, customer variants, NPD |
The order BOM can start as a copy of the master and then carry its edits — the stainless substitution, the extra gusset — so the estimator and the shop floor both work from the exact recipe this customer is paying for, while the master stays clean for the next standard job. Development jobs work the same way: a new-product OA carries its own evolving BOM until the design settles and, if it becomes a catalogue item, is promoted to a master. Job shops and fabricators live in this mode, which is why per-order BOMs and process sheets are central to fabrication & job shop software.
5. Release and revision control — why status matters
A BOM that anyone can quietly edit is a liability. If an estimator tweaks a qty-per while a work order is mid-build against the old figure, the requisition and the reality diverge and nobody knows which version was right. Production-grade BOMs solve this with two disciplines: release and engineering change.
Draft to released
A new BOM is born in a draft status. In draft it can be built, reviewed and corrected freely — it is a work in progress and the floor cannot touch it. Only when it is deliberately released does it become an active definition a work order is allowed to draw on. That single gate is what stops half-finished or unreviewed recipes from reaching the line. In practice a BOM header carries a status that moves from draft to released, and a work order simply refuses to explode a bill that has not crossed that line.
Engineering change (ECN)
Released does not mean frozen forever — products change. When a change is needed to a released bill or process, you don't overwrite it in place; you raise an engineering change (ECN) against it. The ECN captures what is changing and why, goes through review and approval, and is then released in its own right so the revised BOM or process becomes the active definition from that point on. Crucially, the superseded revision is retained as history: you can always answer "which version of the bill did we build that batch to?" long after the change.
For any plant working to ISO 9001 or IATF 16949, this is the machinery behind change traceability — the auditor's question "show me that this part was built to the approved revision" has a clean answer instead of a shrug. The release-and-change discipline is the difference between a BOM you can certify against and a document that quietly drifts.
6. BOM costing — from recipe to a costed estimate
Because the BOM and BOR together capture both the material and the effort in a product, they also carry everything needed to cost it — before a single unit is made. BOM costing rolls two streams together:
- Material cost comes from the BOM positions — each child's qty-per (grossed up for scrap) multiplied by its unit rate, summed up the tree from RM through SFG to FG.
- Resource / process cost comes from the BOR and the process sheet — each operation's standard time multiplied by the work-centre or labour rate, again rolled up level by level.
Add them and you have an estimated unit cost built from the actual recipe rather than a guess. For the bracket, the roll-up runs bottom-up: cost the welded frame (its plate, tube, wire, plus shearing, bending and welding time), treat that costed frame as an input to the assembly, add the pin, the bolts, the paint and the assembly labour, and the total lands as the FG cost. Change a supplier rate or an operation time and the estimate re-rolls without re-keying.
This is what makes the BOM a commercial document, not just an engineering one. The costed estimate feeds quotation — you can price an order knowing your real cost — and later feeds job-order costing and margin analysis, where the planned cost from the BOM is compared against what the job actually consumed and how much it rejected. The make-or-buy decision from section 3 shows up here too: the system can cost the pin as a make (bar stock plus turning) and as a buy (supplier price) and let you compare. All of this is only trustworthy if the BOM underneath is released and current — which is why costing and revision control are two sides of the same coin.
One released BOM and BOR — every requisition, route and cost draws from it.
In Fast Production the Bill of Materials and Bill of Resources live together as one structure — a BOM header, its material positions and its resource lines — released as a single engineering definition. A work order explodes it into a requisition and a route in one step, and rolls material plus process cost into an estimate. Change control runs through ECN, and superseded revisions stay traceable.
7. Grouping, status and reporting
Once you hold hundreds or thousands of BOMs, the value shifts from any single bill to being able to see across all of them. A few reporting ideas do most of the day-to-day work:
- The full indented explosion, tier by tier
- Every child, qty-per and scrap in one view
- The reference a planner and buyer share
- Given a component, every parent that uses it
- Impact analysis before a change or substitution
- Shortage blast-radius at a glance
- Which BOMs are live for production
- Which are still in draft, waiting on release
- A pending-BOM dashboard that flags gaps
- Bills organised by product family or line
- Master vs order BOMs kept distinct
- Faster to find, review and maintain
The released-versus-pending view is the one plant heads come back to. A BOM stuck in draft is an invisible blocker — planning cannot open a work order against it, so a job silently waits on an engineering release nobody flagged. A pending-BOM dashboard turns that hidden dependency into a visible queue. Grouping, meanwhile, is simply hygiene: with master and order-specific bills, sub-assemblies and finished goods all in one library, a BOM group keeps the right bills findable instead of buried.
8. How Fast Production Software implements BOM and BOR
Fast Production Software is the shop-floor manufacturing-execution product of the Fast Suite, built in Pune by Improsys under the Fast Technology brand. It treats the engineering definition as the foundation the rest of the floor stands on, and implements each idea in this guide with real, named screens:
| Concept | How Fast Production Software does it |
|---|---|
| Master & structural BOM | Multi-level BOMs carry child-material lines with quantity-per and scrap, nesting FG → SFG → RM, with the full indented explosion available as a BOM-level report. See BOM & Bill of Resources. |
| Bill of Resources | A resource line set — machines, labour, tools and operations — sits against each level and ties to a resource master, so the same work order that raises a requisition also builds the route sheet. |
| Order-specific BOM | BOMs can be raised against a customer order (OA) or development OA, so a make-to-order job carries its own bill separate from the master — the two eras coexist without conflict. |
| Release control | A BOM is not usable by production until it is released — draft moves to released status, and only released bills can be exploded by a work order. |
| ECN | Engineering changes are raised against a released BOM or process, reviewed and released so the revised definition becomes active, with superseded revisions retained as history. |
| BOM costing | Material cost from the BOM positions and resource/process cost from the BOR and process sheet roll up into an estimated unit cost that feeds quotation and job-order costing. |
| Reporting & status | BOM-level, item-wise/where-used and released-vs-pending views, with BOM grouping — plus Dhruv AI for plain-English questions over your production data. |
Underneath, the structure is exactly the three-part object this guide describes — a BOM header, its material positions and its resource lines — held together so a single release drives the requisition, the route and the cost. It is the same model running at scale in deployments such as Solidus Hi-Tech and Micro India, where thousands of BOM and resource lines sit behind everyday work orders. If you are weighing the wider category, our guide to what a manufacturing execution system is puts the BOM in the context of the full released-BOM-to-finished-goods lifecycle, and the rejection and rework guide shows what happens when reality departs from the bill.
9. Frequently asked questions
See your own BOM and BOR walked live
A 30-minute demo — your product structure, your route, your costing rolled up on screen. No generic slideshow.
