Sumivo · Manufacturing
Scrap Rate Calculator
Calculate scrap percentage and the remaining non-scrap unit count.
01 / inputs
02 / result
SCRAP RATE
5%
- Scrap rate
- 5%
- Non-scrap units
- 95
Calculation trace
- (5 ÷ 100) × 100 = 5%5 %Scrap rate
- 100 − 5 = 9595 unitsNon-scrap units
Maintained by Jack Shi
How it works
Calculate the percentage of produced units classified as scrap and the remaining non-scrap count. Scrap rate (%) = scrap units ÷ total units × 100. Non-scrap units = total units − scrap units. The denominator is all produced units, including scrap, not only the remaining units.
Assumptions & limits
- Enter whole-unit counts: total units must be from 1 to 9,007,199,254,740,991, and scrap units from 0 to total units. These are safe-integer limits of this implementation. Fractional, negative, empty and non-finite values are rejected.
- Both counts must describe the same batch or reporting period and the same unit type. Count a unit once in the total and, if it is scrap, once in the scrap subset.
- The result is based on unit counts, not scrap weight, material value or financial loss. This tool has no rework, inspection or first-pass outcome fields. Its remaining count is only total minus scrap.
Verified runs
Synthetic examples executed at build revision 24533ff on . Cards round decimal results to 6 significant figures; matching uses full precision and the tolerance below. Matches cover the displayed fields, not every possible input or clinical or engineering validation.
Inputs: Scrap units: 18 units; Total units: 600 units
Result: Scrap rate: 3 %; Non-scrap units: 582 units (expected Scrap rate: 3 %; Non-scrap units: 582 units) ✓
Inputs: Scrap units: 0 units; Total units: 600 units
Result: Scrap rate: 0 %; Non-scrap units: 600 units (expected Scrap rate: 0 %; Non-scrap units: 600 units) ✓
Inputs: Scrap units: 5 units; Total units: 100 units
Result: Scrap rate: 5 %; Non-scrap units: 95 units (expected Scrap rate: 5 %; Non-scrap units: 95 units) ✓
How these runs were checked
Method: scrap-rate@1.0.0. Expectations come from the listed test fixtures or hand arithmetic; they are not copied from these executions. Omitted optional inputs use the method defaults. Run dates record execution, not expert review or fresh measurements.
Download all verified runs (JSON) — full inputs, returned values, expectations, timestamps and buildRevision.
- normal: . Absolute tolerance: 1e-10. Text and booleans match exactly. Full-precision result: Scrap rate: 3 %; Non-scrap units: 582 units. Expected: Scrap rate: 3 %; Non-scrap units: 582 units. Expectation: packages/calculator-core/tests/scrap-rate.test.ts
- boundary: . Absolute tolerance: 1e-10. Text and booleans match exactly. Full-precision result: Scrap rate: 0 %; Non-scrap units: 600 units. Expected: Scrap rate: 0 %; Non-scrap units: 600 units. Expectation: packages/calculator-core/tests/scrap-rate.test.ts
- sensitivity: . Absolute tolerance: 1e-10. Text and booleans match exactly. Full-precision result: Scrap rate: 5 %; Non-scrap units: 95 units. Expected: Scrap rate: 5 %; Non-scrap units: 95 units. Expectation: packages/calculator-core/tests/scrap-rate.test.ts
Reproduce from the source checkout with pnpm --filter @sumivo/web gen:verified-runs. A rebuild changes execution times; the revision identifies its Git starting point, including any uncommitted changes made for that build.
Synthetic example
18 scrap units among 600 total units in one batch.
- Use all 600 produced units as the denominator: 18 ÷ 600 = 0.03.
- Convert to a percentage: 0.03 × 100 = 3%.
- Subtract the scrap count: 600 − 18 = 582 non-scrap units.
3% scrap rate and 582 non-scrap units.
Boundary case
Scrap 0 and total 0 are rejected because there is no denominator. Scrap 0 with total 600 is valid and gives 0% scrap and 600 non-scrap units. Scrap 601 with total 600 is rejected because the subset exceeds the total; all 600 units being scrap is valid and gives 100%.
How to read the result
The example means 3% of the counted batch was marked as scrap. The other 97% is the arithmetic non-scrap share; this calculator cannot call it first-pass yield or prove it passed inspection because no such outcomes are entered. Confirm that the total includes scrap before comparing rates across batches. A unit-based percentage alone does not calculate a cost.
Sources and what they support
- Scrap rate is scrap units divided by total produced units. Multiplying by 100, subtracting the scrap count and taking the complementary percentage are arithmetic derived from that ratio. Lean & Environment Toolkit, Chapter 3 (process metrics)
Whole-count limits and the non-scrap output describe this implementation. The synthetic batch is not a quality benchmark. No first-pass yield, acceptance status or cost is inferred from these two inputs.
FAQ
- Should I enter only good units in Total units?
- No. Enter all produced units, including the scrap subset. The calculator subtracts scrap to produce the remaining count.
Related calculators
SOURCES
- U.S. Environmental Protection AgencyLean & Environment Toolkit, Chapter 3 (process metrics) ↗
Scrap rate = scrap units ÷ total units produced
Accessed 2026-09-02