**The Big Picture With A Tolerance Stack-Up:**

One of the often underappreciated details in mechanical design is a tolerance “stack-up” analysis. For those that are unfamiliar with mechanical design it’s important to understand a few basics:

- Professionally manufactured and/or prototyped parts are fabricated to pre-determined tolerances. When you ask for a part to be 1 inch long, the reality is that it’s not ever exactly 1 inch long. It’s close, and it can get closer (more exact) the more you’re willing to pay, but it’s never exactly 1 inch long. And every part you order is going to be slightly different than the previous one. The deviation from “exact” or “nominal” values depends on how “tight” your tolerance is (i.e. how precise do you need/want the part to be?).
- Tighter tolerances are generally more expensive to produce as they require better machinery and more attention from the machine operator.

**Specifying Tolerances:**

Tolerances are normally specified on the part’s or prototype’s engineering drawing. Typically this is done via the significant digits on the drawing. Parts that are shown with dimensions that have two zeros after the decimal point (e.g. 3.47 inches) are typically cut to a tolerance of 0.01 inches. This means that the finished part will have dimensions that actually fall somewhere between 3.46 and 3.48 inches. If the same part was shown on the drawing with dimensions of 3.470 inches then a tolerance of 0.005 (five thousandths of an inch) would typically apply (unless otherwise specified). The finished part in this case would have dimensions between 3.465 and 3.475.

When it comes to mating parts (fitting pieces together), tolerances are extremely important. Consider a machine that is made by joining together several different pieces, each with their own tolerances. If all of the parts are produced at the low (or small) end of the tolerance window, will the machine still fit together? Conversely, if all of the parts are produced at the high (or large) end of the tolerance window, will the machine still fit together? This is particularly important when it comes to pairing holes and fasteners that mate multiple parts together. Let’s take a look at an example. Here are two cylindrical parts joined by a set screw:

The set screw, when screwed into the external cylinder, fits into a channel that is cut out of the internal cylinder. This allows the external cylinder to rotate about the internal cylinder while simultaneously preventing lateral motion (separation of the two cylindrical pieces). The set screw is designed to fasten the two parts together, prevent lateral movement but also allow rotational movement of one cylinder about the other. To make sure the parts all fit together properly the following tolerances must be considered:

- The diameter of the set screw itself (assumed for this example to be 0.1000)
- The width of the channel on the internal cylinder (shown as nominal value 0.12)
- The diameter (or radius) of the set screw’s hole on the external cylinder (assumed for this example to be 0.1000)
- The distance between the center of the hole on the external cylinder and the edge of the external cylinder (shown below as nominal value 0.50)
- The distance between the center of the internal cylinder channel and the edge of internal cylinder (shown as nominal value 1.50)

When designing in 3D CAD software, one typically inputs the nominal dimensions. That is, you specify exactly what dimensions you want and the parts all line up perfectly in the Computer Aided Design (CAD) software. Take a look at the dimensions we specified for our example:

In real life, however, the parts are never exactly perfect. Additionally, the closer to perfect you need them the more expensive they will be to produce. So let’s specify a few different tolerances for a few of the critical dimensions we outlined above and see how this might affect our design. For simplicity, we’re going to assume that the set screw and the external cylinder hole are cut to near-exact (highly precise, 0.1000) dimensions such that variability in their size is not a factor. We’re also going to assume that the internal cylinder is of fixed length**.** Reference the following table for a summary of potential outcomes based on the specified tolerances:

Part |
Critical Dimension |
Nominal Value (inches) |
Possible Values (High//Low) With 0.01” Tolerance |
Possible Values (High//Low) With 0.005” Tolerance |
Possible Values (High//Low) With 0.001” Tolerance |

Set Screw |
Diameter |
0.1000 |
N/A (0.1000) |
N/A (0.1000) |
N/A (0.1000) |

External Cylinder Hole |
Diameter |
0.1000 |
N/A (0.1000) |
N/A (0.1000) |
N/A (0.1000) |

Internal Cylinder Channel |
Width |
0.12 |
0.13 // 0.11 |
0.125 // 0.115 |
0.121 // 0.119 |

Center of Hole to Edge of Part on External Cylinder |
Length |
0.25 |
0.26 // 0.24 |
0.255 // 0.245 |
0.251 // 0.249 |

Center of Internal Cylinder Channel to Edge of Part on Internal Cylinder |
Length |
1.50 |
1.51 // 1.49 |
1.505 // 1.495 |
1.501 // 1.499 |

Now let’s start combining worst-case tolerances to see if we can find any fit issues with our different mating parts. What’s the worst case?

Worst case fit would involve offsetting the channel on the internal cylinder in one direction (e.g. the high tolerance side for the part, 0.13 inches from part edge to channel center) while offsetting the hole location on the external cylinder in the other direction (e.g. the low tolerance side for the part, 0.24 inches from part edge to hole center). If the manufactured part is made to a 0.01” specification, will the set screw still fit in the channel without contacting the wall? The answer is “no.” In this case the alignment of the hole and the channel is now 0.02 inches offset from its nominal location. This is because the set screw is 0.10 inches wide and the channel is 0.12 inches and we assume the normal location of the screw is in the middle of the channel (0.01 inches on each side of it). Moving the hole an extra 0.02 inches in one direction means the set screw will now longer fit in the channel which means the functionality of our device is compromised. Add to that worst case manufacturing for the width of the channel itself. If the 0.12 inch wide channel is machined to 0.11 inches (the low tolerance side for the part) then this further compounds the issue. Taking all three of these worst case values under consideration it is clear that the set screw will be 0.015 inches too far in one direction and will therefore not fit in the channel.

**So how do you account for tolerance stack up in design and engineering?**

The answer is that you need to tighten up the tolerances you request from the machine shop and/or change the nominal values in your design to allow more flexibility for expected variability in the machined parts. We ran the same analysis at tolerances of 0.005 and 0.001 respectively (without changing the design).

- In the first case the part misses by 0.0025 inches (just barely).
- In the second case the part fits even in the worst case. The worst case has the alignment shifting 0.0025 which is less than the 0.01 buffer that is built into the design.

It’s important to note that 0.001 (1/1000th of an inch) is an extremely tight tolerance for most applications - particularly for prototypes. If you’re building a mechanism that needs to be highly precise this might make more sense. For most other applications it will probably be overkill. With that in mind, we might want to change our design a little bit to allow for an 0.005” tolerance to work even in the worst case scenario. We generally find that 0.005” is a really reasonable tolerance for *most* critical dimensions in *many* prototypes while 0.01” is a reasonable tolerance for non-critical dimensions (those that don’t mate closely with other parts). Be forewarned, however, that every project is different and the right tolerance really depends on the particular project. If you’re looking for help, you came to the right place. Contact Us today for a free quote on your prototype project.