Maximum material condition (MMC) in GD&T
Open the MMC Bonus Tolerance CalculatorThe maximum material condition modifier — the circled M after a position tolerance — is the most economically important symbol in GD&T, and the most misread. It says: the stated tolerance applies when the feature contains the most material (smallest hole, largest pin), and grows as the feature departs from that condition. The growth is the bonus tolerance:
In shop shorthand, GD&T MMC means the drawing is tying a geometric tolerance to a size limit. The material condition modifier does not change the feature's size tolerance; it changes how much geometric error is allowed as the measured hole or pin moves away from its maximum material size.
bonus = |actual size − MMC size| total tolerance = stated + bonus
Why is that legitimate? Because for a clearance hole, function is assembly. A bigger hole clears a fastener that sits further off position. The drawing is not being generous — it is encoding the physics of fit.
MMC example — clearance hole at maximum material
This MMC example uses a hole dimensioned Ø10.0–10.4 with position Ø0.2 at MMC. The MMC size is Ø10.0 (smallest hole = most material). The shop produces it at Ø10.3:
bonus = 10.3 − 10.0 = 0.3 → total = 0.2 + 0.3 = Ø0.5
A measured position error of Ø0.42 — which would scrap the part under an RFS callout — passes comfortably here. Run the same numbers in the MMC bonus tolerance calculator, which takes the measured X/Y deviations and actual size together; the base diametral position math lives in the true position calculator.
MMC virtual condition — the gauge that never changes
MMC virtual condition is the fixed worst-case boundary produced by the size limit and the stated geometric tolerance. Stated-plus-bonus sounds variable, but it produces one fixed boundary. For a hole:
VC = MMC − stated tolerance = 10.0 − 0.2 = Ø9.8
No matter how the size and position trade off, the hole's inner boundary never encroaches inside a Ø9.8 envelope at true position. That is exactly a functional gauge: a Ø9.8 pin at the theoretical location. Part fits gauge → part assembles. This is why MMC callouts make inspection cheap — a hard gauge can accept parts without a CMM, and every part the gauge accepts genuinely works.
The three modifiers side by side
- MMC (circled M): tolerance grows with departure from max material. Use for clearance fits — bolt patterns, cover plates. Cheapest parts, gaugeable.
- RFS (no modifier, the default): stated tolerance applies at any produced size. Use when location itself is the function — dowels, bearing bores, sealing lands.
- LMC (circled L): the mirror image — tolerance grows from the least material condition. Used to protect minimum wall thickness or minimum edge distance (e.g., a cored hole near a casting wall).
Common mistakes
- Taking the bonus from the wrong end. The bonus comes from the feature's departure from MMC — for a pin, that means being made smaller, not larger.
- Applying size bonus to a datum modifier. An M on the datum reference (datum shift) is a different mechanism: it allows the pattern to float as a group, not each hole individually.
- Using MMC on functional locators. A dowel hole at MMC invites parts that rattle precisely where you needed registration.
- Forgetting it is diametral. Position tolerance zones here are cylinders; combine X and Y deviation as 2·√(ΔX² + ΔY²) before comparing — the calculator does this for you.
For the broader system, the what is true position guide covers the base concept, the composite position calculator handles two-tier pattern controls, and the GD&T symbols chart is the one-page reference.
Frequently asked questions
What does the MMC modifier on a position tolerance mean?
The circled M after the tolerance value ties the stated position tolerance to the feature at its maximum material condition — the smallest hole or the largest pin. As the produced feature departs from MMC (a hole grows, a pin shrinks), the position tolerance grows by exactly that departure. The stated value is the minimum you ever get, not the maximum.
How do I calculate bonus tolerance?
Bonus = |actual mating size − MMC size|. For a hole with MMC Ø10.0 produced at Ø10.3, the bonus is 0.3. Total allowed position tolerance = stated tolerance + bonus; with Ø0.2 stated, the hole may be out of position by up to Ø0.5.
What is virtual condition?
The fixed worst-case boundary the feature can never violate: for a hole, VC = MMC size − stated position tolerance (Ø10.0 − Ø0.2 = Ø9.8); for a pin, VC = MMC + tolerance. It is the size of the functional gauge pin or hole — any part that fits the gauge assembles, which is the entire logic of MMC.
When should I NOT use the MMC modifier?
When the feature locates something functionally rather than just clearing a fastener — dowel holes, bearing bores, sealing faces. There, looseness from a bigger hole does not help function, so position is controlled RFS (regardless of feature size), which is the default when no modifier appears.
Ready to run the numbers?
Open the MMC Bonus Tolerance Calculator