Manufacturing Engineering Calculator

Process Capability (Cp/Cpk) Calculator

Calculate statistical capability indices (Cp, Cpk) to evaluate how well a manufacturing process performs relative to its defined specification limits.

Process Distribution

Normal distribution relative to specification limits

μ (Mean)LSLUSLProcess Shift visualization

Input Parameters

Enter your statistical process data.

Maximum acceptable limit.

Minimum acceptable limit.

Average value of the measured data.

Process standard deviation.

Industry standard is typically 1.33 or 1.67.

Quality Tip

A process with a high Cp but low Cpk is capable but not centered. Adjusting the machine offset (mean shift) is usually easier than reducing variance.

Process Capability Index (Cpk)

0.667

Cp (Potential)

1.111

Cpl (Lower)

1.556

Cpu (Upper)

0.667

NOT CAPABLE — Process fails to meet the target

Calculated Cpk is 0.667 compared with the target limit of 1.33.

Governing Formulas

Cp = (USL - LSL) / 6σCpk = min( (USL - μ) / 3σ , (μ - LSL) / 3σ )
USLunits

Upper Specification Limit

LSLunits

Lower Specification Limit

μ (Mean)units

Average of the sample data

σ (StdDev)units

Process standard deviation

Calculation Assumptions

  • Data is normally distributed
  • Process is strictly stable/in-control
  • Representative sample size (n > 30)
  • Independent observations

Quality Control Code

Reuse the SPC calculation in your own data analysis workflow.

Python
def process_capability(usl, lsl, mean, std_dev):
    """
    Calculate Process Capability Indices (Cp, Cpk).
    """
    if std_dev <= 0:
        raise ValueError("Standard deviation must be > 0")
    if lsl >= usl:
        raise ValueError("USL must be greater than LSL")

    cp = (usl - lsl) / (6 * std_dev)
    cpu = (usl - mean) / (3 * std_dev)
    cpl = (mean - lsl) / (3 * std_dev)
    cpk = min(cpu, cpl)
    
    return cp, cpk, cpu, cpl

# Example Parameters
USL = 10.5
LSL = 9.5
Mean = 10.2
StdDev = 0.15

cp, cpk, cpu, cpl = process_capability(USL, LSL, Mean, StdDev)

print(f"Cp: {cp:.3f} | Cpk: {cpk:.3f}")
MATLAB
function [Cp, Cpk] = process_capability(USL, LSL, Mean, StdDev)
    % Calculate Process Capability Indices
    
    if StdDev <= 0
        error('Standard deviation must be > 0');
    end
    if LSL >= USL
        error('USL must be greater than LSL');
    end

    Cp = (USL - LSL) / (6 * StdDev);
    Cpu = (USL - Mean) / (3 * StdDev);
    Cpl = (Mean - LSL) / (3 * StdDev);
    Cpk = min(Cpu, Cpl);
end

% Example Parameters
USL = 10.5;
LSL = 9.5;
Mean = 10.2;
StdDev = 0.15;

[Cp, Cpk] = process_capability(USL, LSL, Mean, StdDev);
fprintf('Cp: %.3f | Cpk: %.3f\n', Cp, Cpk);
Excel Formula (Cpk)
=MIN((USL-Mean)/(3*StdDev), (Mean-LSL)/(3*StdDev))

Example Calculation

Consider a CNC turned shaft with a diameter specification of 10.0 ± 0.5 mm (USL = 10.5, LSL = 9.5). If the production sample yields a mean of 10.2 mm and a standard deviation of 0.15 mm:

Cpu = (10.5 - 10.2) / (3 × 0.15) = 0.667
Cpl = (10.2 - 9.5) / (3 × 0.15) = 1.556
Cpk = min(0.667, 1.556) = 0.667

Result: The Cpk is 0.667, which is far below the standard 1.33 target. The process is significantly shifted towards the upper limit (USL).

Technical Explanation: Process Capability (SPC)

Process capability compares the output of an in-control process to the specification limits by using capability indices. The two most common indices are Cp and Cpk, fundamentally rooted in Statistical Process Control (SPC).

Cp (Potential Capability)

Cp measures the "spread" of the data relative to the allowable tolerance. It is calculated by dividing the specification width (USL - LSL) by the process width (6σ). A Cp greater than 1 means the process variation is theoretically small enough to fit within the limits. However, it does not care where the mean is.

Cpk (Actual Capability)

Cpk answers the critical question: "Is the process actually producing good parts?" It accounts for the process mean (μ). It evaluates the distance from the mean to the closest specification limit, relative to 3 standard deviations (half the process spread).

How to interpret Cpk values

  • Cpk < 1.0: The process is incapable. Scrap or rework is actively occurring.
  • Cpk = 1.0: The process is barely capable. Exactly 99.73% of parts are within spec (3 Sigma). Any shift will cause defects.
  • Cpk = 1.33: The standard acceptable minimum for most industries (4 Sigma).
  • Cpk = 2.0: World-class quality (Six Sigma). Defect rate is theoretically 3.4 per million opportunities.

Real-World Engineering Cases

Tool Wear in High-Volume CNC Machining

A high-volume supplier of automotive transmission shafts maintained a Cp of 1.80, proving their modern lathes were highly precise. However, the quality manager neglected tool wear offsets. Over a single shift, the mean diameter drifted drastically towards the Upper Spec Limit (USL).

Engineering Lesson

The batch resulted in a Cpk of 0.85 despite the excellent Cp. Precise machines (low standard deviation) still require strict offset monitoring (centering the mean) to maintain high Cpk.

Injection Molding Cavity Variations

A plastic injection molding process was set up with the mean perfectly centered between limits (Cp = Cpk). However, due to uneven cooling lines in a multi-cavity mold, the standard deviation across parts was massive.

Engineering Lesson

Both Cp and Cpk dropped below 1.0. When Cp is poor, adjusting the machine parameters (the mean) will not save you. You must fix the fundamental process variation (in this case, thermal management) to reduce standard deviation.

Frequently Asked Questions

What is the difference between Cp and Cpk?

Cp measures the potential capability of a process if it were perfectly centered. Cpk measures the actual capability, taking into account where the process mean is currently located.

What is considered a good Cpk value?

In most manufacturing, a Cpk of 1.33 is the minimum standard. For aerospace or critical safety systems, a Cpk of 1.67 or 2.00 (Six Sigma) is heavily preferred.

Why is my Cpk lower than my Cp?

This happens when your process is off-center (process shift). The variation is tight, but the average value is sitting too close to one of the specification limits.

Can Cpk be negative?

Yes. If the process mean falls entirely outside of the specification limits, the Cpk value will be negative, indicating a severely non-conforming process.

Calculations provided by this tool are for educational and preliminary quality control purposes. Always ensure your data sample is statistically significant (typically n > 30), normally distributed, and strictly in-control before relying on capability indices for production decisions.