Skip to content
Quality & Process Control

What Is Cpk (Process Capability Index)

Cpk measures whether your process produces units within spec limits, accounting for centering. Learn the formula, thresholds, and how TofuPilot tracks it.

JJulien Buteau
beginner5 min readMarch 20, 2026

Cpk is the process capability index. It tells you whether your manufacturing process can consistently produce units within specification limits, accounting for how centered the process mean is between those limits. A Cpk of 1.33 or higher is the standard minimum for production processes.

The Formula

Cpk takes the worse of two ratios: the distance from the process mean to each spec limit, divided by 3 times the process standard deviation.

Cpk = min((USL - X̄) / 3σ, (X̄ - LSL) / 3σ)

Where:

  • USL is the upper specification limit
  • LSL is the lower specification limit
  • X̄ is the process mean
  • σ is the sample standard deviation (n-1 divisor)

The "min" is what makes Cpk useful. It always reports the worst side. If your process drifts toward one limit, Cpk drops even if the other side has plenty of room.

What Cpk Values Mean

CpkInterpretationApprox. Defect Rate
< 0.67Poor. Significant portion of units out of spec.> 45,500 ppm
0.67Process spread equals spec width on the worst side.~45,500 ppm
1.0Barely capable. The 3σ edge touches the spec limit.~2,700 ppm
1.33Standard minimum for production. 25% buffer for drift.~63 ppm
1.67Good. Required for safety-critical parameters.~0.6 ppm
2.0Excellent. Process uses half the spec window or less.~0.002 ppm

Most automotive (IATF 16949) and aerospace (AS9100) standards require Cpk >= 1.33 for production parameters. Safety-critical dimensions typically need 1.67.

Cpk vs Cp

Cp measures potential capability (how much of the spec window your variation uses) but ignores centering. Cpk accounts for centering.

When Cp equals Cpk, the process is perfectly centered. When Cpk is much lower than Cp, the process mean has drifted off-center. Fix the centering (a calibration issue) and Cpk rises to match Cp.

Cpk vs Ppk

Cpk uses the sample standard deviation (n-1 divisor), which reflects short-term variation. Ppk uses the overall standard deviation (n divisor), which captures long-term variation across batches, shifts, and operators.

If Ppk is much lower than Cpk, something is changing between production runs that your short-term samples don't capture. Investigate batch-to-batch variation, operator differences, or environmental shifts.

How TofuPilot Calculates Cpk

Define measurements with upper and lower limits in your test code. TofuPilot computes Cpk automatically from the accumulated production data.

test_with_limits.py
import openhtf as htf
from openhtf.util import units
from tofupilot.openhtf import TofuPilot

@htf.measures(
    htf.Measurement("output_voltage")
        .in_range(minimum=2.45, maximum=2.55)
        .with_units(units.VOLT),
    htf.Measurement("leakage_current")
        .in_range(maximum=0.001)
        .with_units(units.AMPERE),
)
def validate_output(test):
    test.measurements.output_voltage = 2.501
    test.measurements.leakage_current = 0.00042

def main():
    test = htf.Test(validate_output)
    with TofuPilot(test):
        test.execute(test_start=lambda: "UNIT-0042")

if __name__ == "__main__":
    main()

Open the Process Control page for your procedure, select a measurement, and switch to the Capability tab. TofuPilot shows Cpk alongside Cp, Cpl, and Cpu, with hover tooltips for each formula.

The Cpk trend chart tracks daily Cpk over time so you can see whether capability is improving or degrading. Reference lines at 0.67, 1.0, and 1.33 make it easy to spot when the process crosses a threshold.

Common Pitfalls

Not enough data. Cpk from 10 units is unreliable. Wait for 30+ data points before making process decisions.

One-sided specs. When you only set a maximum (like leakage current), TofuPilot computes a one-sided capability index (Cpu only). That's correct. You can't calculate a two-sided Cpk without both limits.

Mixing populations. Calculating Cpk across data from two stations with different calibrations inflates σ and underestimates capability. Filter by station first.

More Guides

Put this guide into practice