In a previous blog, I have covered process stability, which is the first part of assessing the current (or baseline) performance of the process, typically involving control charts. The biggest mistake people make when examining process stability using control charts is to confuse control limits and specification limits. Specification limits have nothing to do with statistical control, and control limits have nothing to do with specification limits!

The measure that relates process performance to specification is process capability.

What is Process Capability?

Process Capability is an assessment of how the process is performing with respect to a desired outcome. It could be described as allowed variation divided by actual variation. It could also be expressed as Voice of the Customer divided by Voice of the Process. In concept terms, it is the specification divided by the range of the process, where range is expressed as maximum value minus minimum value.

As we know, process range is not the best way to describe variation, but it is a starting point if you are trying to explain it to someone! So, let’s start by saying process capability will be good if range is less than the specification, and poor if range is greater than the specification.

When we calculate capability we actually use standard deviation (σ or s depending on whether the data is from a sample or population) and not range. We know that for a normal distribution 99.7% of all items produced will fall within ±3σ, so, if instead of using the process range we use ±3σ we will get a better statistical estimate of our process capability.

The basic formula for process capability is therefore:

Capability=spec / 6σ

Where spec = USL-LSL (upper spec limit – lower spec limit)

We can see from this that a capability value of 1 means that 99.7% of our process output will be within specification, and 0.3% outside specification. If capability is less than one then more than 0.3% will be outside specification

The Process Capability Index Cp

If we consider a car trying to park in a city, then we can think about the parking bay width being equivalent to the spec. Let us assume that the city council will fine anyone that parks over the lines in the bays! If the car park bay is 3 metres wide and our car is 2 metres wide, then we will need to park within ½ meter of the centre line each time we park. This can be considered to be the specification. To reduce the risk of a fine to a minimum we need to park our car consistently within ½ meter of the centreline.

Assume we are great at parking and that we can park within ± ½ meter of the centreline more than 99.9% of the time! Doing this will produce a good process capability value of greater than one and means we are unlikely to get fined!

However, let’s now assume that we are not that great at parking. To be more precise we are consistent, but when we park we are on average ¼ meter to the left of where we want to be, this means that we will sometimes overlap the line on the left hand side. We will get fined! But, our capability value will not have changed.

This capability value is called Cp , and it does not consider how close we are to the specification limits, only our variation in relation to the limits. The formula for Cp is:

Cp = USL - LSL / 6s


The Process Capability Ratio CpK

The process capability index CpK however does consider where our process is performing in relation to our specification. The concept of CpK is that we split our distribution into two halves at the mean value, and consider each part separately, comparing each to the width of the specification in that part. We then take the lowest of the two to be our CpK value.

CpK = min(CpKU, CpKL)


For our parking example, if we consider our parking is ¼ meter to the left then we have a spec width of 0.25 metres on the left side, and 0.75 on the right. Now, our actual parking variation is still the same at 1 metre, and the spec overall has not changed, but we now have two numbers to calculate: CpK U and CpKL. Note that 3s is used instead of 6s.

CpKL = x̄ - LSL / 3s       CpKU = USL - x̄ / 3s

If we take each side,

CpKU =.75/.5

CpKL =.25/.5

We take the lowest of these as our CpK value. CpKL is the lower at 0.5 so our CpK value is 0.5.

So now we have two indices, Cp and CpK.

Dynamic Mean Behaviour

Over an extended period we expect to see more variation than just considering short term data. If we track someone’s parking and work out the mean and standard deviation position for a week we will see a certain amount of variation. If we repeat the exercise a week later then we may find that the standard deviation is about the same, but the mean has moved slightly. If we repeat again in another week, we will find again that standard deviation is about the same, but the mean has moved again.

This is called dynamic mean behaviour and the result is that over time we find there is more variation than we are expecting if we just consider short term variation. Motorola found that this variation equated to about 1.5 times the standard deviation.

There are therefore two other indices, Pp and PpK. These two indices also compare process variation with process specification, but using long term data rather than short term samples. In simple terms, Pp and PpK are long term estimates of capability. They are calculated in the same was as Cp and CpK as shown below:

Pp = USL – LSL / 6σ

To be more precise however, the difference between Cp and Pp is in the way that the standard deviation is calculated, for Cp, standard deviation is calculated using an estimate based on short term sub groups, and for Pp the data is assumed to be representative of the whole population and so the standard deviation used is taken from continuous data collected over a period of time.

The way the indices are calculated is in other respects the same.

Summary of Capability Metrics

The table below shows a summary of Cp, CpK, Pp and PpK and which each one relates to.

Cp = USL - LSL / 6s

CPK = min(CPKU, CPKL)    CpKL = x̄ - LSL / 3s     CpK= USL - x̄ / 3s

For CP Values, s is calculated from sub group data using the formula: s = R /d2. Where R is the average of the sub group ranges, and d2 is a constant dependant on sub group size.

P= USL – LSL / 6σ

PpK = min(PPKU, PPKL)     PPKL = x̄ - LSL / 3σ   PPKU = USL - x̄ / 3σ

For PP Values, σ is calculated from continuous data using the formula: