Scrap and Rework Cost Estimation: Price for Expected Yield
September 13, 2026
Still quoting parts like this by hand? Try QuoteBuddy free — from drawing to quote in minutesFree for 30 days · Unlimited quotes · No credit card required
Every shop scraps parts. The first piece off a new setup, the bore that went a hundredth over on the final pass, the casting that opened up porosity after three hours of machining were already invested in it. Yet most quotes are built as if yield were perfect: cost per part, times quantity, margin on top, send. Estimating scrap and rework cost means admitting in the quote what the shop floor already knows — that shipping fifty good parts costs more than fifty times the cost of one — and pricing for the parts you will actually start, not just the parts you will invoice.
The arithmetic is short: price on expected yield, so cost per good part = cost per attempt ÷ (1 − scrap rate). The discipline is in the rate. This guide walks through the expected-yield formula and exactly which costs it applies to, the places scrap hides on a real job — setup pieces, first articles, tight tolerances, castings — the rework-or-scrap decision, and how to calibrate your allowances from recorded actuals instead of shop folklore, including the materials where getting this wrong costs real money.
The expected-yield formula: cost ÷ (1 − scrap rate)
Start with the honest version of the question: if the process scraps six parts in every hundred, how many do you have to start in order to ship fifty? Not fifty. Fifty divided by 0.94 is 53.2 — and since a machine cuts whole parts, that means 54 blanks. The customer pays for fifty; the other four are part of the cost of the fifty, exactly like the endmills the job consumes.
There are two equivalent ways to load this into a quote. Either inflate the variable cost per part — material, machine time, per-part tooling — by dividing it by the yield: cost per good part = cost per attempt ÷ (1 − scrap rate). Or inflate the started quantity: quote the material and machine time for 54 blanks against an invoice line of 50. The first is cleaner in a spreadsheet; the second is what actually happens on the floor. On small batches, round the blanks up — 53.2 parts do not exist; in the hundreds, the continuous formula is accurate enough.
Two boundaries matter. The division applies to variable cost only — setup does not multiply with scrap, because you set up once whether you cut 50 blanks or 54. And it stacks with, but is not the same as, the margin formula: first yield-load the cost, then apply price = cost ÷ (1 − margin), as covered in margin vs markup. Two divisions with the same shape: one pays for the parts that die, the other pays for the business.
Where scrap hides: setup pieces, first articles, tolerances, castings
A scrap allowance is a percentage that applies to every part in the run. But a lot of what shops call scrap is not a percentage at all — it is a fixed count of parts consumed at specific points, and modelling it as a percentage gets both the small batch and the large batch wrong.
Setup pieces are the clearest case. Proving a new setup consumes material by design: the first part off a fresh program gets measured and the offsets corrected, and you cannot promise that part survives. One to three sacrificial blanks on a new CNC job is a normal planning assumption — a fixed count added to the setup block, not a percentage: huge on a batch of 5, invisible on a batch of 500, which is exactly how it behaves in reality.
First articles are consumed by inspection rather than by the machine. A full dimensional report ties up a part (and CMM hours); destructive checks — weld macro sections, plating adhesion tests, hardness surveys that mark the part — consume it outright. If the order calls for FAIR or PPAP-style documentation, the parts and the inspection time both belong in the quote, priced the way inspection and QA cost always should be: as an explicit block, not a hope.
Tight tolerances are the percentage kind of scrap. Every process has a capability band; a callout near the edge of that band turns a fraction of output into scrap no matter how good the operator is. A bore at ±0.1 mm effectively never fails; the same bore at ±0.01 mm on a machine that holds ±0.008 on a good day fails often enough to price. The tolerance-to-cost relationship is largely a scrap-rate relationship — the last decimal place is expensive because of the parts it kills.
Castings and forgings hide scrap inside the blank. Porosity, inclusions, and hard spots do not announce themselves at goods-in; they appear mid-machining, after your hours are already invested. The foundry typically replaces the defective blank — but nobody replaces your three hours of roughing. Machined-casting work deserves a visibly higher allowance for exactly this reason.
Typical scrap allowances: 2026 calibration points
These are starting ranges for job-shop quoting, meant to be calibrated against your own scrap log — not copied forever. If your recorded actuals for a part family sit outside these bands, your actuals win.
| Situation | Typical allowance |
|---|---|
| Repeat job, proven process, open tolerances | 1–2% |
| New job, conventional tolerances, steel or aluminium | 2–4% |
| Tight tolerances (≤ ±0.01 mm, fine finish callouts) | 4–8% |
| Titanium, Inconel, thin walls, deep pockets | 5–10% |
| Machined castings or forgings (porosity risk) | 5–15% |
| Setup pieces on a new CNC job | 1–3 pieces, fixed |
| First article with destructive or CMM-intensive checks | 1–2 pieces, fixed |
Notice the structure: percentages rise with process difficulty and material unforgiveness, and the fixed counts sit at the bottom because they are not percentages at all. A new, tight-tolerance titanium job legitimately carries both — a 6–8% allowance plus two setup blanks — and neither is padding. Padding is a number nobody can defend; these point at the scrap log.
Worked example: fifty titanium brackets at a 6% allowance
A Ti-6Al-4V bracket, batch of 50, new job. Cycle time 45 minutes on a machining centre at a burdened €95/h, so €71.25 of machine time per attempt; the titanium blank costs €38. Setup and programming are 3 hours — €285 — and because the job is new, plan two setup blanks: €76 of material added to the setup block. Tolerances and material justify a 6% scrap allowance.
The naive quote ignores yield: €71.25 + €38 = €109.25 per part, plus €285 ÷ 50 = €5.70 of setup, for €114.95. At a 30% target margin, price = €114.95 ÷ 0.70 = €164.21 per part.
The yield-loaded quote starts from how many blanks the job really consumes. Fifty good parts at 94% yield means 50 ÷ 0.94 = 53.2 → 54 attempts. Variable cost: 54 × €109.25 = €5,899.50. Setup block: €285 + €76 of setup blanks = €361. Total €6,260.50 for fifty good parts = €125.21 each, and the same 30% margin gives a price of €178.87.
The gap looks small — €14.66 a part — until you run the naive price against the real cost. Invoice 50 × €164.21 = €8,210.50, spend €6,260.50, and the margin you actually earned is 23.7%, not the 30% you thought you quoted. Six points gone with no bad decision visible anywhere: every number in the naive quote was correct. The only thing missing was the four parts in the scrap bin and the two on the setup table — which is how scrap eats margin: silently, on every job that ignores it.
Rework or scrap: the decision is arithmetic, not pride
When a part comes off nonconforming, the floor decision — fix it or bin it — is a cost comparison, and the first rule is to ignore sunk cost. The €110 already inside the part is gone whichever way you decide; the comparison is between two forward-looking numbers only.
Cost to rework = rework hours × rate, plus re-inspection, plus the expected cost of the rework failing. A bore left 0.02 mm undersize is 20 minutes on the right machine plus a re-measure: perhaps €38 all-in, with a high success probability. Cost to remake = material plus machine time to bring a new part to the same point in the routing: €109 for the bracket above. Rework wins comfortably — which is why undersize bores get reworked everywhere, and why the opposite error (oversize, no material left to remove) goes straight to the bin.
The arithmetic has non-negotiable boundaries. Some sectors do not let you decide alone: aerospace and medical work routes nonconformances through customer or MRB approval, and unauthorized "repair" is how shops lose approvals. Some process states close the door — a part discovered wrong after hardening may be unfixable at any price, and a coated part needs stripping and recoating before any metal moves. And on low success probabilities, weight the comparison by the chance of the rework failing — a failed rework consumed hours and still ends in a remake. In the quote, rework appears the same way scrap does — as part of the calibrated allowance for that family — because at quoting time you cannot know which nonconformances will be fixable.
Calibrate from actuals: scrap codes, not folklore
Everything above depends on one number per part family: the scrap rate. Shops that guess it use a single company-wide figure, defended with anecdotes. Shops that know it record every scrapped part with an operation and a cause — setup, operator, tooling, material defect, tolerance bust — and roll the log up monthly by family, at a recording cost of minutes per incident.
The log does two jobs. It replaces the debate about what the allowance "should" be with a lookup, family by family: proven aluminium brackets at 1.4%, new tight-bore stainless work at 6.2%, machined castings at 9%. And it points at the causes worth fixing — if half the scrap in a family is coded to one operation, that operation is a process problem wearing a pricing disguise. Feeding recorded actuals back into quoting rates is the same feedback loop that drives quoting accuracy generally: quotes get better when the numbers inside them are measured, not remembered.
Mind the asymmetry while calibrating: too high loses jobs visibly — you get outbid and know it — while too low loses money invisibly, one under-margined job at a time. When the log is thin, err slightly high on new work and let the actuals pull the number down.
Where scrap bites hardest: titanium, Inconel, and late operations
A 5% scrap rate is not one problem — it is a different-sized problem depending on what a scrapped attempt costs. On a mild-steel bracket with €20 of material and €40 of machine time, 5% is €3 a part: real, worth pricing, survivable if missed. On titanium work, the blank alone can run €100–300 and the cycle is slow, so each attempt carries €250–600; the same 5% is now €12–30 a part, and an uncalibrated guess is a visible hole in the job. Inconel and the superalloys are worse again: expensive blanks, punishing cycle times, work-hardening behaviour that raises the scrap probability at exactly the moment each attempt costs the most.
The second multiplier is position in the routing. A part scrapped at the first roughing operation costs a blank and an hour. The same part scrapped at final grinding carries every upstream operation — machining, heat treatment, plating — inside it, and all of that value goes into the bin together. This is why the tightest tolerance in the routing sitting on the last operation is the most expensive place it can be, and why a per-family allowance should weight late-operation risk: 3% scrap at the final op can cost more euros than 8% at the first.
FAQ: scrap and rework in quotes
What is a typical scrap allowance percentage? For repeat work on a proven process, 1–2%. New jobs at conventional tolerances run 2–4%; tight tolerances push 4–8%; titanium, superalloys, and machined castings justify 5–15%. Setup pieces and destructive first articles are priced separately as fixed counts, not folded into the percentage. Treat all of these as calibration starting points and let your recorded scrap log override them family by family.
How should I price setup pieces? As a fixed count of blanks — usually one to three on a new CNC job — added to the setup block: their material cost, plus the prove-out time you already carry in setup hours. Amortize the block over the batch like any other setup cost. Do not model them as a percentage; two setup pieces are the same two pieces whether the batch is 5 or 500, and a percentage gets both ends wrong.
When should I rework a part instead of scrapping it? Ignore what the part already cost — that is sunk either way. Compare the forward costs: rework hours at your rate plus re-inspection plus the risk of the rework failing, against material and machine time to remake the part up to the failed operation. Rework wins on cheap fixes with high success odds (undersize bores); remake wins when material is gone, the part is hardened or coated, or the sector requires customer or MRB approval you will not get.
Does the customer pay for scrap? Yes — inside the yield-loaded unit price, not as a visible "scrap" line on the quote. Expected process loss is a normal cost of making good parts, exactly like tool wear. The exception that must be negotiated explicitly is customer-supplied material: agree an attrition allowance up front — how many blanks above the order quantity they provide — so a normal setup loss does not become a commercial argument.
How do I know what my real scrap rate is? Record every scrapped part with the operation and a cause code — setup, tooling, operator, material defect, tolerance — and roll the log up monthly by part family. Within a quarter you have defensible per-family rates instead of a shop-wide guess, and the log doubles as a map of which operations deserve process attention.
From drawing to a quote that expects reality
The scrap allowance is only as good as the reading that triggers it. The callouts that drive scrap — the ±0.01 bore, the fine surface finish on the last operation, the material spec that says the blank costs €200, the casting note — are all on the drawing, and under deadline pressure they are exactly what a hurried take-off skims past. Miss the tolerance and you quote the 2% job at 2% when it was a 7% job all along.
QuoteBuddy reads the technical drawing and surfaces what the estimator needs to see: material and blank implications from the title block, the tolerance and finish callouts that separate proven-process work from scrap-prone work, and the operations the part implies. The deterministic cost engine then applies your rules — per-family scrap allowances, setup pieces on new jobs, your rates and margins — the same way on every quote, so the yield math happens every time instead of only when someone remembers. The AI does the reading; your calibration does the pricing.
Start a 30-day trial and run a few real drawings through it — including the job you suspect has been quietly eating margin. Compare the yield-loaded number against what you would have quoted by feel, and check where the scrap bin has been invoicing you instead of your customer.