How to Calculate Scrap Rate Percentage

Scrap Rate Calculator .src-container { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; max-width: 800px; margin: 0 auto; padding: 20px; background: #f9f9f9; border: 1px solid #e0e0e0; border-radius: 8px; } .src-calculator-box { background: #ffffff; padding: 30px; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); margin-bottom: 40px; } .src-title { text-align: center; color: #2c3e50; margin-bottom: 25px; font-size: 24px; font-weight: 700; } .src-input-group { margin-bottom: 20px; } .src-label { display: block; margin-bottom: 8px; font-weight: 600; color: #34495e; } .src-input { width: 100%; padding: 12px; border: 1px solid #bdc3c7; border-radius: 4px; font-size: 16px; box-sizing: border-box; transition: border-color 0.3s; } .src-input:focus { border-color: #3498db; outline: none; } .src-btn { width: 100%; padding: 15px; background-color: #2980b9; color: white; border: none; border-radius: 4px; font-size: 18px; font-weight: bold; cursor: pointer; transition: background-color 0.3s; } .src-btn:hover { background-color: #1a5276; } .src-result { margin-top: 25px; padding: 20px; background-color: #f0f7fb; border-left: 5px solid #3498db; display: none; } .src-result h3 { margin-top: 0; color: #2c3e50; } .src-metric { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid #dcdcdc; } .src-metric:last-child { border-bottom: none; } .src-value { font-weight: bold; color: #2980b9; } .src-article { background: #fff; padding: 30px; border-radius: 8px; border: 1px solid #e0e0e0; color: #333; line-height: 1.6; } .src-article h2 { color: #2c3e50; margin-top: 30px; font-size: 20px; border-bottom: 2px solid #ecf0f1; padding-bottom: 10px; } .src-article p { margin-bottom: 15px; } .src-article ul { margin-bottom: 15px; padding-left: 20px; } .src-error { color: #c0392b; font-weight: bold; margin-top: 10px; display: none; text-align: center; } @media (max-width: 600px) { .src-calculator-box, .src-article { padding: 15px; } }

Manufacturing Scrap Rate Calculator

Calculation Results

Scrap Rate Percentage:
Yield Rate (Good Parts):
Total Good Parts:
Estimated Financial Loss:

How to Calculate Scrap Rate Percentage

Calculating scrap rate is a fundamental practice in manufacturing quality control. It measures the efficiency of a production process by quantifying the percentage of materials or parts that fail to meet quality standards and must be discarded or reworked. A high scrap rate indicates inefficiencies, equipment issues, or raw material problems, directly impacting the bottom line.

The Scrap Rate Formula

The formula to calculate scrap rate is straightforward. It is the ratio of defective parts to the total number of parts produced, expressed as a percentage:

Scrap Rate = (Total Scrap Parts ÷ Total Parts Produced) × 100

For example, if a factory produces 5,000 widgets and 200 are rejected during quality control, the calculation would be: (200 ÷ 5,000) × 100 = 4%.

Why Monitoring Scrap Rate is Critical

  • Cost Reduction: Every scrapped part represents wasted raw materials, energy, and labor.
  • Process Improvement: Tracking this metric helps identify specific shifts, machines, or materials causing defects.
  • Yield Optimization: The inverse of scrap rate is the yield rate (the percentage of good parts). Improving yield directly increases saleable inventory without increasing production volume.

Scrap Rate vs. Yield Rate

While scrap rate focuses on waste, First Pass Yield (FPY) focuses on success. They are inversely related. If your scrap rate is 3.5%, your yield rate is 96.5%. Most Lean Manufacturing and Six Sigma initiatives aim to reduce scrap rates to near zero (or 3.4 defects per million opportunities in Six Sigma).

Calculating the Cost of Scrap

To understand the financial impact, you must multiply the number of scrapped units by the cost per unit. This calculator includes a field for "Cost Per Part" to help you estimate the total financial loss associated with the current defect rate. Note that this often underestimates the true cost, as it may not include disposal fees or the opportunity cost of lost machine time.

function calculateScrapRate() { // 1. Get input values var totalProductionInput = document.getElementById('totalProduction').value; var scrapPartsInput = document.getElementById('scrapParts').value; var unitCostInput = document.getElementById('unitCost').value; // 2. Parse values to numbers var totalProduction = parseFloat(totalProductionInput); var scrapParts = parseFloat(scrapPartsInput); var unitCost = parseFloat(unitCostInput); // Elements for output var resultBox = document.getElementById('srcResult'); var errorBox = document.getElementById('srcError'); var displayScrapRate = document.getElementById('resScrapRate'); var displayYieldRate = document.getElementById('resYieldRate'); var displayGoodParts = document.getElementById('resGoodParts'); var displayTotalLoss = document.getElementById('resTotalLoss'); // 3. Reset error and result errorBox.style.display = 'none'; resultBox.style.display = 'none'; // 4. Validation if (isNaN(totalProduction) || isNaN(scrapParts)) { errorBox.textContent = "Please enter valid numbers for production and scrap counts."; errorBox.style.display = 'block'; return; } if (totalProduction <= 0) { errorBox.textContent = "Total parts produced must be greater than zero."; errorBox.style.display = 'block'; return; } if (scrapParts totalProduction) { errorBox.textContent = "Scrap parts cannot exceed total production."; errorBox.style.display = 'block'; return; } // 5. Calculation Logic var scrapRate = (scrapParts / totalProduction) * 100; var yieldRate = 100 – scrapRate; var goodParts = totalProduction – scrapParts; var totalLoss = 0; var lossText = "N/A"; if (!isNaN(unitCost) && unitCost > 0) { totalLoss = scrapParts * unitCost; lossText = "$" + totalLoss.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}); } // 6. Update UI displayScrapRate.textContent = scrapRate.toFixed(2) + "%"; displayYieldRate.textContent = yieldRate.toFixed(2) + "%"; displayGoodParts.textContent = goodParts.toLocaleString(); displayTotalLoss.textContent = lossText; // Show result resultBox.style.display = 'block'; }

Leave a Comment