Proprietary software by Ionio

Built for discrete manufacturing

A worked assembly · APR 27, 2026 · 9 MIN READ

How to quote an assembly when the BOM has 3 levels

COST ROLLS UPWARDASSEMBLYSUBASSY ASUBASSY BHOUSINGSHAFTFRAMEBOUGHT
Cost rolls up. So does everything that went wrong underneath it.

The package is a pump assembly. Top level has 6 children, 2 of those are subassemblies with children of their own, and 1 of those children is a machined housing with 3 purchased items pressed into it. Three levels, 21 line items, one price expected by Thursday.

The arithmetic is not hard. What makes assembly estimating go wrong is that errors at the bottom arrive at the top magnified, and nobody looks down there twice. Every figure below is illustrative and one assembly carries through. Each part underneath still prices the way a machined part does.

Reading a 3 level bill of materials before pricing it

Start by getting the structure right, because a wrong structure produces a confidently wrong number. Level 3 items are made or bought parts with no children. Level 2 are subassemblies built from level 3. Level 1 is what ships.

The bill of materials on the print usually gives you level 1 and sometimes level 2, and the rest lives in the models or in a separate document. Where the drawing and the model disagree about quantity, the drawing wins for quoting purposes and the disagreement goes on the quote as a question.

Quantities multiply down the tree and this is where the first errors appear. If the top assembly uses 2 of a subassembly, and that subassembly uses 4 of a bracket, the job needs 8 brackets per unit. On a 21 line bill with quantities of 2 and 3 scattered through it, a single missed multiplier moves the price by more than any rate argument will.

Rolling child costs up the tree

Price from the bottom and roll upward, because a level 2 cost is meaningless until its children are priced. For each level 3 item, produce a made cost or a bought cost. For each level 2, sum the children, then add its own assembly labour, its own scrap and its own inspection.

The housing at level 3 is a machined part and prices like one, using the same build-up a machined part quote uses. The frame at level 3 is a fabrication and prices like a weldment. Neither of those is an assembly problem, they are just parts that happen to sit underneath one.

What makes it an assembly problem is everything added at each join. Assembly labour, fasteners and consumables nobody lists, functional test, and the inspection that happens at that level rather than at the parts.

Price the leaves, then climb.

The discipline that saves time later is keeping each level’s own cost separate from its rolled-up children cost. When the customer asks why the subassembly is $84, being able to say $61 is its parts and $23 is what we do to them is a different conversation from quoting a single number.

Where scrap compounds and why 2 percent is not 2 percent

A yield loss at the bottom of the tree is paid for by everything above it. Scrap a level 3 housing after machining and you lost a housing. Scrap the level 2 subassembly it went into and you lost the housing, the 2 other children, and the labour that joined them.

Work it through on the assembly. If each of the 3 levels runs at 98 percent yield, the cumulative yield is not 98 percent. It is 0.98 cubed, which is 94.1 percent, so 5.9 percent of the material and labour entering the bottom never ships.

UNITS SURVIVINGASSEMBLY LEVEL98%LEVEL 396.0%LEVEL 294.1%LEVEL 1WHAT SHIPS
Three levels at 98 percent is 94.1 percent, and the loss is weighted to the top.

The weighting matters more than the percentage. A unit scrapped at level 3 costs the value at level 3. A unit scrapped at final test costs everything, including 2 purchased components you cannot recover and the assembly labour across all 3 levels.

That is why a flat scrap percentage applied to the finished price is the wrong instrument. Yield belongs at each level, applied to the cost that exists at that level, the same way scrap and yield belong per operation on a single part rather than as one figure at the bottom.

The loss is weighted upward.

There is a second compounding effect that is easier to miss. If a level 3 part scraps at 2 percent, you have to start more than you need, which means buying more material, running more machine hours and inspecting more pieces at every stage below the loss. The yield number is not only a cost adder, it is a quantity multiplier on everything underneath.

Purchased components and the risk that comes with them

Bought items look like the easy lines and they carry the schedule risk. On the assembly, 3 purchased items sit at level 3 and 2 more at level 1. Each has a price, a minimum order quantity, and a lead time.

The price is the least interesting of the 3. A minimum order of 500 on a part you need 120 of means either carrying 380 or paying a break price, and that decision belongs in the quote rather than in purchasing 4 months later.

Lead time is where assemblies actually fail. A 16 week casting inside a 10 week program is a schedule problem the estimator can see and the customer cannot, and it is the kind of thing a triage read of the package should surface on day 1 rather than after the award.

Price validity is worth stating too. If a purchased component quote is good for 30 days and your assembly quote is good for 90, you have taken a 60 day position on somebody else’s price without being paid for it.

Assembly labour, takt and the line that gets guessed

Assembly labour is the line most often estimated by feel, and it is measurable. Break it into operations the way you would break a routing on a machined part. Press 3 bushes, torque 8 fasteners to spec, fit the seal, install the shaft, close the housing, run the test.

Each of those has a time. Torquing 8 fasteners to a specified value with a calibrated tool and recording the result is not the same operation as running 8 screws in, and if the print calls for recorded torque then it is inspection as well as assembly.

Takt time matters once volume is real. An assembly built one at a time on a bench by a skilled fitter costs differently from the same assembly built at a station with parts presented in order, and the crossover is a volume question. Quote the method you will actually use at the volume you were given.

The consumables hide here too. Loctite, grease, gaskets, gloves and the bag the thing ships in are individually trivial and collectively a line. Roll them into an assembly consumables figure per unit rather than pretending they are free.

Nobody weighs the grease.

Rework belongs in this section rather than in scrap. An assembly that fails test and can be opened, corrected and retested is not scrap, it is a second pass through part of the labour, and on a first program that rate is higher than anybody plans for.

Test, inspection and packaging at the top

A functional test is an operation with a cycle time, a fixture and a failure rate. If the pump has to run for 4 minutes against a pressure curve, that is 4 minutes of station time per unit plus setup, and a unit that fails is rework or scrap at the most expensive point in the tree.

The first article on an assembly is heavier than on a part, because every level has to be demonstrated and the report covers characteristics from all 3. Quote it as its own line with its own hours.

Packaging is the last line and the one customers change after award. A part that ships in a returnable rack costs differently from one in a carton with a foam insert, and if the customer has a packaging specification it is worth finding it before quoting rather than after.

Stack the assembly up and the parts are typically 60 to 70 percent of the cost, with assembly labour, test, inspection and packaging carrying the rest. Anyone quoting only the parts is quoting two thirds of a number.

Put your own volumes against these numbers, or watch it price a part of yours.