MMB — A New Term in the ASME Y14.5 Standard

If you are a regular user of GD&T, you probably know that the ASME standard was recently revised (for details, see the blog entry below dated March 28, 2009).   In today’s column, I’d like to introduce you to one of the changes.

The term “maximum material condition” or MMC has been around for a long time. This concept is invoked when the circled M symbol is placed in a feature control frame.  Well, a new item for the 2009 standard is something very similar, called “maximum material boundary,” or MMB.   Yet it is invoked using the same circled M symbol.

The reason this was introduced was to eliminate confusion when the M symbol is modifying a datum that has its own geometric tolerance. Consider the following example:

The position tolerance references datum feature B with the M symbol.  But here’s the key: think about the size of a gage pin that would be inserted into the center hole (it should be attached to a flat plate that simulates datum A).  It would not really be simulating the MMC of 22.0; instead, it would be 21.8 in order to accommodate the perpendicularity tolerance of 0.2.  Thus the confusion — people would say “MMC” when discussing the datum, but had to understand that it wasn’t really the true MMC that would be simulated.

So the new standard uses the term “maximum material boundary” to differentiate it from the true “maximum material condition.”  The picture above would not change, but in talking to someone you would say “the position tolerance of the OD is 0.4 at its MMC, relative to datum A and datum B at MMB.”

I suppose if there were no perpendicularity tolerance on the center hole, then you could interchangeably say “MMB” or “MMC,” since they would be the same (22.0).  And by the way, the other choices of LMC or RFS on a datum reference also have their counterparts of “LMB” and “RMB” in the new standard.


  1. I found this to be very informative. As a product instructor for CMM’s and Vision products it is imperative that we have a good working grasp of these conceps.

    Jacob Grant

  2. Great explanation. Thank you. Even after reading the standard 3 times I did not understand this topic quite as clearly as I do now.


  3. This is same basic concept as virtual condition rolled up into the MMC Concept when it applies to a datum feature of size modified with th M.

  4. That’s right, John. In fact, a certain automaker that I do a lot of GD&T work with used to have their own modifier which was a circled V. This could be used after a feature-of-size datum to indicate virtual condition. But it got to be too confusing because the national standard had M as meaning virtual condition.

    So it’s really just semantics…

  5. I was reading your post and thank you for that, I am still confused, in your example the drawing is showing in the FCF for the TOP the datum B as a secondary datum so the MMB will be 21.8 and it would be 22.0 only if the drawing changes the datum B to be the primary datum. is that correct?

    • Yes, that is true. Because both callouts have datum A as the primary datum, we include the perpendicularity number of 0.2 when calculating the MMB. But if the position tolerance of the outside diameter only referenced B(M), then 22.0 would be the MMB.

  6. For the same part can you please provide me the minimum and maximum edge distance calculation

    • For the picture shown (a washer) the maximum wall thickness between the inner diameter (ID) and outer diameter (OD) is 16.7 mm.
      This can be calculated a couple of ways, but here’s one way of showing the factors — first, the maximum:

      +27.4 (biggest OD radius)
      -11.0 (smallest ID radius)
      +0.2 (OD’s stated pos tol in one direction)
      +0.1 (datum shift due to ID at smallest size)

      That adds up to 16.7. Notice that I include the datum shift because of the MMB modifier on the position tolerance. However, I do not include any bonus tolerance coming from the MMC modifier on the position tol. This is because bonus only occurs when the size dims are different than maximum material.

      Conversely, the minimum answer is 14.7 mm:

      +27.0 (smallest OD radius)
      -11.3 (biggest ID radius)
      -0.2 (OD’s stated pos tol in one direction)
      -0.4 (OD’s bonus tol when made at smallest size)
      -0.4 (datum shift due to ID at largest size)

      The total is 14.7. Notice that this includes both bonus and shift. (If you’re familiar with stack-ups using a spreadsheet like the one we have in the Free Downloads, then I could also show it to you in that format.)

      • Thank you,

        considering the diameter 22.0-22.6 is an external feature of size

        can you please provide me the minimum and maximum edge distance

  7. im confused on how the datum shift values of 0.1 and 0.4 were calculated?

    • Think about a mating fixture or gage which this part will drop onto.
      When the actual datum feature (the center hole) on this part is made at its smallest size, there is still the opportunity for the part to “shift” on the fixture because of the perpendicularity tolerance. That perpendicularity tolerance of diameter 0.2 becomes a radial shift of 0.1 in the stack-up that is shown above.

      On the other hand, when the actual datum feature is made at its largest size, there is a lot more opportunity for the part to “shift,” because there is the perpendicularity amount of diameter 0.2 along with the growth in size, which is diameter 0.6. So the total shift is diameter 0.8, which becomes 0.4 for the radial stack shown above.

      • The datum shift explanation makes sense; thank you.

        My next question is for bonus tolerances.
        For max wall thickness
        OD= LMC……….Bonus tolerance= LMC – MMC= 54.8 – 54.0 = 0.8 dia…….0.4 radial
        datum B= MMC…….Bonus tolerance= 0 (size is at MMC)
        For min wall thickness
        OD = MMC…….Bonus tolerance= 0 (size is at MMC)
        datum B = LMC…….Bonus tolerance= LMC- MMC= 22.6- 22.0 = 0.6 dia………0.3 radial

        Why was bonus tolerance of 0.4 for the OD added into the stackup for the max wall thickness?
        Why wasnt bonus tolerance of 0.3 for datum B added into the stackup for min wall thickness?

      • Here is how i calculated my tolerance stack up John.
        Let me know if there are any errors in my analysis.

        Radius-OD@LMC= 54.8/2=R27.4
        Radius-OD@MMC= 54.0/2=R27.0
        Radius-ID@LMC= 22.6/2=R11.3
        Radius-ID@MMC= 22.0/2=R11.0
        Position tolerance of OD-two sides= 0.4
        Position tolerance of OD- one side = 0.4/2 = R0.2
        bonus tolerance-OD @ MMC = 54.0 – 54.0 = 0 (R0.0)
        bonus tolerance-OD @ LMC = 54.8 – 54.0 = 0.8 (R0.4)
        bonus tolerance-ID @ MMC= 22.0 – 22.0 = 0 (R0.0)
        bonus tolerance-ID@ LMC= 22.6 – 22.0 = 0.6 (R0.3)
        datum shift(ID @ MMC)= bonus tolerance (ID @ MMC) + perpendicularity =0+0.2 = 0.2 (R0.1)
        datum shift(ID @ LMC)= bonus tolerance (ID @ LMC) + perpendicularity =0.6+0.2 = 0.8 (R0.4)
        Min wall thickness = (Radius-OD@LMC) -(Radius-ID@MMC) + (Position tolerance of OD- one side) + (bonus tolerance-OD @ LMC) +(bonus tolerance-ID @ MMC) +(datum shift(ID @ MMC)= 27.4 -11.0 +0.2 + 0.4 + 0.3 + 0.1 = 17.4
        Max wall thickness = (Radius-OD@MMC) -(Radius-ID@LMC) + (Position tolerance of OD- one side) + (bonus tolerance-OD @ MMC) +(bonus tolerance-ID @ LMC) +(datum shift(ID @ LMC)= 27.0 -11.3 -0.2 – 0.0 -0.0 – 0.4 = 15.1

      • Assuming: OD= external feature of size ID= internal feature of size
        For the max wall thickness: OD= largest diameter=external fos=MMC… bonus not allowed
        ID= smallest diameter=internal fos=MMC… bonus not allowed

        Max wall thickness = (Radius-OD@MMC) -(Radius-ID@MMC) + (Position tolerance of OD- one side) + (bonus tolerance-OD @MMC) +(bonus tolerance-ID @ MMC) +(datum shift(ID @ MMC)= R27.4 -R11.0 +R0.2 + R0.0 + R0.0 + R0.1 = R16.7

        For the min wall thickness: OD= smallest diameter=external fos=LMC… bonus allowed
        ID= largest diameter=internal fos= LMC… bonus allowed

        Min wall thickness = (Radius-OD@LMC) -(Radius-ID@LMC) – (Position tolerance of OD- one side) – (bonus tolerance-OD @ LMC) -(bonus tolerance-ID @ LMC) -(datum shift(ID @ LMC)= R27.0 -R11.3 -R0.2 – R0.4 -R0.3 – R0.4 = R14.4

        (Q) Why was the bonus tolerance of ID @ LMC= R0.3 not used in your min wall thickness stackup?
        is it because the datum shift of ID@ LMC already has bonus tolerance of ID @ LMC accounted for thus making it redudant to have both the (datum shift & bonus tolerance) for ID in the stackup

  8. Max wall thickness = (Radius-OD@LMC) -(Radius-ID@MMC) + (Position tolerance of OD- one side) + (bonus tolerance-OD @ LMC) +(bonus tolerance-ID @ MMC) +(datum shift(ID @ MMC)= 27.4 -11.0 +0.2 + 0.4 + 0.3 + 0.1 = 17.4
    Min wall thickness = (Radius-OD@MMC) -(Radius-ID@LMC) – (Position tolerance of OD- one side) – (bonus tolerance-OD @ MMC) -(bonus tolerance-ID @ LMC) -(datum shift(ID @ LMC)= 27.0 -11.3 -0.2 – 0.0 -0.0 – 0.4 = 15.1

    • No– the max wall thickness occurs when the OD and ID are both at MMC. (Recall that the definition of MMC is “maximum material condition,” which equates to maximum wall thickness.)
      See my comment of March 13, 2016 for the calculation.
      No bonus tolerance is included when calculating the max wall. But the bonus, and the shift, are included in the min wall calculation.

  9. You are right MMC’s do not need Bonus tolerances. That was a typo on my part.
    My real question is
    (Q)Is Bonus tolerance of Datum B @ LMC (R0.3) considered redundant and not included separately in the min wall thickness stack up because Datum Shift of Datum B @ LMC (R0.4) already takes into account accounted Bonus tolerance of Datum B @ LMC (R0.3)?
    Including Bonus tolerance of Datum B @ LMC (R0.3) on top of Datum Shift of Datum B @ LMC (R0.4):

    Min wall thickness =R27.0 Radius of OD @ LMC -R11.3 Radius of Datum B @ LMC
    -R0.2 Position tolerance of OD-One-sided
    -R0.4 Bonus tolerance of OD @ LMC
    -R0.3 Bonus tolerance of Datum B @ LMC
    -R0.4 Datum Shift of Datum B @ LMC

    Not Including Bonus tolerance of Datum B @ LMC (R0.3) separately and only including Datum Shift of Datum B @ LMC (R0.4) because it already takes bonus tolerance of Datum B @ LMC (R0.3) into account:
    Min wall thickness =R27.0 Radius of OD @ LMC -R11.3 Radius of Datum B @ LMC
    -R0.2 Position tolerance of OD-One-sided
    -R0.4 Bonus tolerance of OD @ LMC
    -R0.4 Datum Shift of Datum B @ LMC

  10. For your first question:
    “Is Bonus tolerance of Datum B @ LMC (R0.3) considered redundant and not included separately in the min wall thickness stack up because Datum Shift of Datum B @ LMC (R0.4) already takes into account accounted Bonus tolerance of Datum B @ LMC (R0.3)?”
    The answer is is yes. What I called shift tolerance is just datum B’s total variation, consisting of the size tolerance (R0.3) and the geometric tolerance (R0.1). So it was already rolled into the calculation.

    For your two calculations:
    The R0.4 datum shift of Datum B @ LMC in the first calculation is incorrect; that 0.4 seems to come from the the R0.3 size of datum B and the R0.1 perpendicularity of datum B. But you already included the R0.3 in the previous line.
    The second calculation is the correct one — Answer = 14.7 min.

    also pl explain LMB

    • Without the perpendicularity callout, there would still have to be some orientation control between the hole and the face of the part — otherwise it’s an incomplete drawing. In the Y14.5 standard, the pertinent paragraphs would be 1.4 (b), (c), and (i), as well as 4.9(b). So let’s presume that, without the perpendicularity tolerance, there is a title block general tolerance of ±1º. Then you’d have to do the trig to figure out what that 1º tilt becomes in linear terms, and factor that into the MMB.

      And for LMB, things would be turned around in the opposite way; if you have the standard, see paragraph 4.11.7. The “simulator” for the center hole would be 22.8, and any deviation from that number by the actual hole would cause a datum shift on the position tolerance of the outside diameter. (Think about that for a minute and you’ll see why LMB is almost never used — it’s not practical!)

      • I came across this comment because I was searching for a similar example. I was confused by your reply because I took it as if the perpendicularity tolerance was no longer applied to datum feature B. Maybe I can rephrase the initial question. If the perpendicularity tolerance was still there, but not specified at MMC (the tolerance would be RFS), then what would be the applicable MMB for datum feature B in reference to the position tolerance? Or is this not even an appropriate use of the MMB modifier because a fixed size datum feature simulator can’t be created?

        • If the MMC modifier were removed from the perpendicularity tolerance, the the MMB value used in the position tolerance would still be 21.8, and there would still be what we call datum shift for position. However, you would not have bonus tolerance for the hole when it’s measured. So I would say it’s a little strange to do that because we’d be saying that there’s allowable slop around that center hole when gaging the OD’s position, but no slop available when gaging the perpendicularity of the hole itself.
          It’s not a problem in theory, but kind of unusual in a practical sense.

  12. If there is no MMB modifier on datum B in a feature control frame, What is the maximum and minimum wall thickness?

    • This can be answered by reading my reply to Praveen (above, dated March 13, 2016), with one simple change: If there is no MMB modifier on the datum, then there would be no datum shift. So you’d delete the lines labeled “datum shift due to ID…”

      The results would be a maximum of 16.6 and a minimum of 15.1.

  13. I do not understand whether the idea of MMB is newly introduced or is it that, only the word MMB has been coined / included newly in the 2009 edition, because when I review the ASME Y14.5 – 1994 GDT document, we will still find the encircled M applied to datums in the FCF

    • Hi Aravinda — While the term of MMB was new in 2009, you are correct that the idea has been around for much longer than that. Prior to 2009, that modifier, when applied to a datum reference, was simply called MMC. However, it wasn’t truly MMC (as the article above explains) so it was somewhat misleading.
      Prior to 2009 (such as the examples you found in the 1994 edition), that circled M on a datum would be understood as the “virtual condition” of the given datum.

  14. Hello John. I came here looking for answers but still not totally clear.

    I will try to make it simple. So the MMB called out after a datum feature should be considered only a datum shift allowance?

    Recently, I have a friend of mine, telling me that the MMB shall be added as a bonus to the TP tolerance called out. The only tolerance modifier should be the circled M after the TP tolerance, which Will be considerd only a MMC, right?


    • Hi Julian,
      The MMB modifier signifies that the given GD&T callout is to be measured relative to a “datum reference frame” which consists of the given datum simulated at its maximum material boundary. So essentially it signifies that a datum shift may be allowed.

      However, I will disagree with your friend because that datum shift is not added to the bonus tolerance (which is signified by an MMC modifier after the tolerance number).
      The reason: a bonus tolerance allows the actual tolerance zone to grow in size, but datum shift does not allow the tolerance zone to grow; it merely allows the tolerance zone to shift or scoot relative to the physical datum feature.

      Having said that, there is one simple drawing in our training, similar to the drawing above, where we do “pile up” the bonus and shift to calculate the radial offset from one center line to another coaxial center line. But that’s a very simplistic example to introduce the idea of compounded errors, and I’m always careful to explain that in most situations you can’t simply add bonus and shift together.

      Another way to approach the question: consider that the datum which has the MMB modifier might only act in a certain degree of freedom (d.o.f.). So any extra shift only acts in that d.o.f. whereas bonus might be multidirectional. Thus, to add shift and bonus together would be a confusion of directions or d.o.f.

      • Hey John.

        Thanks for your quick reply. It has been very helpful.
        Now Im pretty sure that we were doing it right.

        Its a great website, and great job in here. I will continue to comeback from time to time.


Submit a Comment

Your email address will not be published. Required fields are marked *