Sumivo · Manufacturing

Material Yield Calculator

Calculate good-output yield and non-good units from total input; non-good units may include rework or scrap.

01 / inputs

units
units

02 / result

MATERIAL YIELD

90%

Yield
90%
Non-good units
10

Calculation trace

  1. 90 ÷ 100 × 100 = 90
    90 %
    Material yield
  2. 100 - 90 = 10
    10 units
    Non-good units

Maintained by Jack Shi

§

How it works

Good-output yield = good units ÷ input units × 100. Non-good units = input − good; they can include rework, scrap or unclassified units. This is first-pass yield only when the good count consists of units accepted on their first pass.

Assumptions & limits

  • Good units are a subset of input units.
  • Counts units, not cost or weight.

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: Good units: 90 units; Input units: 100 units

    Result: Yield: 90 %; Non-good units: 10 units (expected Yield: 90 %; Non-good units: 10 units) ✓

  • Inputs: Good units: 50 units; Input units: 50 units

    Result: Yield: 100 %; Non-good units: 0 units (expected Yield: 100 %; Non-good units: 0 units) ✓

  • Inputs: Good units: 80 units; Input units: 100 units

    Result: Yield: 80 %; Non-good units: 20 units (expected Yield: 80 %; Non-good units: 20 units) ✓

How these runs were checked

Method: material-yield@1.0.1. 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: Yield: 90 %; Non-good units: 10 units. Expected: Yield: 90 %; Non-good units: 10 units. Expectation: packages/calculator-core/tests/material-yield.test.ts
  • boundary: . Absolute tolerance: 1e-10. Text and booleans match exactly. Full-precision result: Yield: 100 %; Non-good units: 0 units. Expected: Yield: 100 %; Non-good units: 0 units. Expectation: packages/calculator-core/tests/material-yield.test.ts
  • sensitivity: . Absolute tolerance: 0. Text and booleans match exactly. Full-precision result: Yield: 80 %; Non-good units: 20 units. Expected: Yield: 80 %; Non-good units: 20 units. Expectation: Hand arithmetic: 80/100 × 100 = 80%; 100 − 80 = 20 non-good units.

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.

§

FAQ

How does yield relate to scrap rate?
Yield and the non-good share sum to 100%. A 92% yield leaves 8% non-good units; those units are not necessarily scrap. Scrap requires a separate classification.
§

Related calculators

§

SOURCES