Cpk and PPM from Tolerance Stack-Ups: Predicting Assembly Yield

Your RSS analysis predicts assembly variation. But stakeholders want to know: "How many will fail?" This guide shows how to convert stack-up results into Cpk, PPM defect rates, and yield percentages that manufacturing and quality teams can act on.

Cpk

Process capability index. How centered and capable is the assembly?

PPM

Parts per million defective. How many assemblies fail spec?

Yield

Percentage of good assemblies. What's the pass rate?

From RSS to Cpk: The Connection

RSS analysis gives you a ±3σ tolerance range for the assembly. If your process is centered on nominal and follows a normal distribution, this range contains 99.73% of assemblies. But that's only useful if your spec limits (LSL/USL) match that range exactly.

Cpk tells you how your predicted variation compares to your actual specification limits. It answers: "Do we have margin, or are we at the edge?"

Key Formulas

Assembly Standard Deviation (σ)

From RSS analysis:

σassembly = RSS Tolerance ÷ 3

RSS tolerance is the ±3σ range, so divide by 3 to get one standard deviation.

Process Capability (Cp)

Potential capability (assumes centered process):

Cp = (USL − LSL) ÷ (6σ)

Compares the spec width to the process width (±3σ = 6σ total).

Process Capability Index (Cpk)

Actual capability (accounts for centering):

Cpk = min(Cpu, Cpl)

Cpu = (USL − mean) ÷ (3σ)
Cpl = (mean − LSL) ÷ (3σ)

Takes the smaller of upper and lower capability. A shifted mean reduces Cpk.

PPM Defective

From Cpk to defect rate:

Z-score = 3 × Cpk

PPM = (1 − Φ(Z) + Φ(−Z)) × 1,000,000

Where Φ is the standard normal CDF. For one-sided specs, use only the relevant tail.

Cpk Reference Table

Common Cpk values and their meaning for assembly yield:

CpkZ-scorePPM (two-sided)Yield %Interpretation
0.672.045,50095.45%Poor — high fallout
1.003.02,70099.73%Marginal — ±3σ = spec
1.334.06399.994%Good — industry standard
1.675.00.5799.99994%Excellent
2.006.00.00299.9999998%Six Sigma

Worked Example

Your RSS analysis shows:

  • Nominal gap: 2.50 mm
  • RSS tolerance: ±0.30 mm (so RSS range is 2.20 to 2.80 mm)
  • Spec limits: LSL = 2.00 mm, USL = 3.00 mm

Step 1: Calculate Assembly σ

σ = 0.30 ÷ 3 = 0.10 mm

Step 2: Calculate Cp

Cp = (3.00 − 2.00) ÷ (6 × 0.10)

Cp = 1.00 ÷ 0.60 = 1.67

Step 3: Calculate Cpk

Cpu = (3.00 − 2.50) ÷ (3 × 0.10) = 0.50 ÷ 0.30 = 1.67

Cpl = (2.50 − 2.00) ÷ (3 × 0.10) = 0.50 ÷ 0.30 = 1.67

Cpk = min(1.67, 1.67) = 1.67

Cp = Cpk because the process is centered (nominal is midway between LSL and USL).

Step 4: Calculate PPM and Yield

Z = 3 × 1.67 = 5.0

PPM ≈ 0.57 (from Z-table or calculator)

Yield = 99.99994%

Expect about 1 defect per 2 million assemblies.

✓ Result: Cpk 1.67 — Excellent

The assembly has good margin. Even with ±3σ variation, defects are negligible. The spec limits are 67% wider than the RSS range.

What If Cpk Is Too Low?

If your stack-up analysis shows Cpk < 1.33 (the typical industry minimum), you have options:

Tighten Component Tolerances

Reduce variation on the top contributors. Use sensitivity analysis to identify which dimensions matter most. A 50% tighter tolerance on a 30% contributor has more impact than tightening a 5% contributor.

Widen Specification Limits

If functional requirements allow, relaxing LSL/USL is often cheaper than tightening tolerances. A gap that works at 2.0–3.0 mm might also work at 1.8–3.2 mm.

Improve Process Capability

If suppliers can actually hold tighter than the tolerance band (higher Cpk on inputs), the assembly Cpk improves. Request Cpk data from suppliers — many hold ±3σ within 50–70% of tolerance.

Accept Inspection/Scrap

For low-volume or non-critical assemblies, it may be acceptable to inspect 100% and scrap failures. Calculate the cost: PPM × unit cost × production volume.

Centered vs. Shifted Processes

Cp assumes the process is perfectly centered. Real processes drift. Cpk accounts for this:

ScenarioCpCpkImplication
Centered on nominal1.331.33Full capability realized
Shifted 1σ toward USL1.331.00Lost margin on upper side
Shifted 2σ toward USL1.330.67High defect rate likely

If your assembly stack-up isn't centered between LSL and USL, use the actual nominal when calculating Cpk, not the midpoint of the spec range.

Calculate Cpk and PPM Automatically

TolReport computes assembly Cpk, PPM, and yield directly from your stack-up. Set LSL/USL and see process capability metrics instantly.

Using Measured Process Data

The default RSS assumption is that each dimension's tolerance equals its ±3σ range (Cpk = 1.0). This is conservative but often unrealistic—suppliers frequently hold tighter than their tolerance bands.

Why Measured Data Matters

When you have actual process capability data (Cpk or σ from SPC) for individual dimensions, use it. Measured data gives more accurate predictions than deriving σ from drawing tolerances alone.

Three Ways to Specify Process Capability

  1. Default (Cpk = 1.0): Drawing tolerance = ±3σ. Conservative assumption when no process data is available.
  2. Per-dimension Cpk: If you know a supplier holds Cpk = 1.33 on a feature, enter it. The analysis uses σ = tolerance ÷ (3 × Cpk).
  3. Direct σ: If you have measured σ from SPC data, enter it directly. This overrides the Cpk-based calculation entirely.

In TolReport, you can set Cpk or σ for each dimension individually. When measured σ is entered, it takes precedence over the Cpk assumption. The results, PDF report, and assumptions panel show which dimensions use measured data vs. tolerance-derived values.

Example: Mixed Capability Inputs

A three-part stack with different data availability:

  • Housing bore: ±0.10 mm, measured σ = 0.025 mm (from SPC) → σ = 0.025
  • Bearing OD: ±0.05 mm, supplier reports Cpk = 1.5 → σ = 0.05 ÷ (3 × 1.5) = 0.011
  • Washer: ±0.03 mm, no data available (use default Cpk = 1.0) → σ = 0.03 ÷ 3 = 0.010

Assembly σ = √(0.025² + 0.011² + 0.010²) = 0.029 mm vs. 0.038 mm with default Cpk = 1.0 for all.

Common Mistakes

Using Worst-Case Tolerance for σ

Cpk formulas assume RSS (statistical) tolerance, not worst-case. If you use WC tolerance ÷ 3, you'll drastically overestimate σ and underestimate Cpk.

Ignoring Input Cpk / Not Using Measured σ

RSS assumes all input tolerances represent ±3σ (Cpk = 1.0). If suppliers actually hold Cpk = 1.33, your assembly variation is 25% smaller than RSS predicts. Enter per-dimension Cpk or measured σ for accurate results—this is especially important for Monte Carlo simulations.

Confusing Cp with Cpk

Cp is the potential capability if perfectly centered. Cpk is actual capability with current centering. Always report Cpk for real-world predictions.

Summary: From Stack-Up to Yield

  1. Run RSS analysis — Get RSS tolerance (±3σ range)
  2. Calculate σ — Divide RSS tolerance by 3
  3. Set spec limits — Define LSL and USL from functional requirements
  4. Calculate Cpk — min((USL−mean)/3σ, (mean−LSL)/3σ)
  5. Look up PPM — From Cpk using Z-score conversion
  6. Report yield — (1 − PPM/1,000,000) × 100%

Target Cpk ≥ 1.33 for production. Cpk ≥ 1.67 for critical assemblies. If Cpk < 1.0, expect measurable fallout.