# How to Factor Bonus Tolerance into a Tolerance Stack

For engineers who regularly perform tolerance stacks, handling regular dimensions is pretty straightforward. And even when GD&T is involved, there is usually not much difficulty, until one encounters the MMC modifier. How can the effect of this “M” symbol be accounted for?

First, a primer on what the effect of the MMC modifier is. Suppose the example shown below is applied to a pin:

The “M” symbol tells us that the given position tolerance of 0.5 applies if the pin is made at its maximum size of 11.8 mm. But if the pin is made at any size less than that, then the position tolerance gets a corresponding “bonus” tolerance. Thus, each part that is made gets its own customized geometric tolerance.  (Example: a pin made at 11.5 gets a position tolerance of 0.8, and a pin made at the smallest size of 11.2 gets a position tolerance of 1.1 mm.) The advantage to this system is that some parts that are made will get more positional tolerance, while still ensuring that those pins will assemble with the mating parts.

With two-column tolerance stack calculations, then, we must be careful.  Without the “M” symbol, we would simply add a line item in our stack to account for the 0.5 mm position error (which is actually 0.25 in each column). With the “M” symbol, that line should still be added, but then another line should also be included for the bonus portion. Then the key is to realize that sometimes the bonus amount is applied to both columns, and other times it only occurs in one column. Here is an example where the bonus is in both columns, because the pin’s size is not a factor; the stack is directed to the axis of the pin:

If the stack were leading to the edge of the pin, then the size of the pin gets factored into the stack, and one column would have zero and the other would get the 0.3 bonus.

The complete methodology for this spreadsheet method is covered in our 2-day class on Tolerance Stacks. We teach this approach for the bonus tolerance, “shift tolerance,” as well as the correct handling of all geometric tolerancing symbols.