Guide
When should a dimension get a unilateral tolerance instead of a bilateral tolerance or limit dimensions?
A unilateral tolerance is a plus-and-minus tolerance in which the dimension is allowed to vary in one direction only from the stated size, so one of the two deviations is zero. A bilateral tolerance lets the size vary in both directions, by equal or unequal amounts, and limit dimensioning skips the nominal altogether and states the largest and smallest acceptable size. All three can describe exactly the same acceptable part; what changes is how clearly the drawing shows intent to the machinist, the inspector and the next engineer. As a rule, use unilateral when function cares about one direction only, equal bilateral when the target is the center, and limits when the two sizes are what gets gauged.
By Saola Manufacturing engineering team · Published · Updated
This guide covers the four direct tolerance formats in ASME Y14.5 and the ISO system, when each one is the better choice, how fit codes such as H7 and g6 map onto them, how the shop floor reads them, and what to state on the drawing and RFQ. The standards' rules are paraphrased, not quoted; the callout examples are illustrations, not values copied from a standard.
On this page
What is a unilateral tolerance, and how is it different from bilateral and limit dimensioning?
The difference is only in how the limits are written, not in how much variation is allowed. A unilateral tolerance has one zero deviation, an equal bilateral tolerance is symmetric about nominal, an unequal bilateral tolerance is lopsided about nominal, and a limit dimension states the two limits outright.
ASME Y14.5 recognizes limit dimensioning and plus-and-minus tolerancing as direct ways to tolerance a size, alongside general tolerance notes and title-block defaults. Plus-and-minus tolerancing then splits into unilateral and bilateral. Take a bore whose acceptable range runs from 25.000 to 25.021. Written as a unilateral tolerance it is 25 +0.021/0; as an equal bilateral tolerance it is 25.0105 plus or minus 0.0105 (written with the ± sign on the drawing); as a limit dimension it is 25.021 over 25.000; and as an ISO fit code it is 25 H7. Same part, same gauge, four different-looking callouts.
Because the formats are interchangeable on paper, the choice should be made for the reader. Ask which number the machinist will aim at, which number the inspector will compare against, and which number a design engineer will use in a tolerance stack. The best format is the one that makes all three of those readings obvious without arithmetic.
How is each tolerance format written on an inch and a metric drawing?
ASME Y14.5 sets slightly different writing rules for inch and millimeter drawings, mainly about decimal places and how a zero deviation is shown. The table puts the same kind of feature in each format side by side.
On inch drawings the dimension and its tolerance carry the same number of decimal places, and a zero deviation is written with its sign and the full number of zeros. On millimeter drawings a zero deviation is shown as a single 0 without a sign, and the two deviations of a bilateral tolerance carry the same number of decimal places. A limit dimension is written with the high limit above the low limit, or on one line with the low limit first.
| Format | Metric example | Inch example | Where the zone sits | Typical use |
|---|---|---|---|---|
| Unilateral | 25 +0.021/0 | .500 +.005/−.000 | Entirely on one side of nominal, touching it | Fits, minimum walls, stock left for a later operation |
| Equal bilateral | 40 plus or minus 0.1 | 1.500 plus or minus .005 | Centered on nominal | Lengths, hole locations, non-mating sizes |
| Unequal bilateral | 40 +0.2/−0.1 | 1.500 +.008/−.002 | Straddles nominal, off-center | Nominal kept at a catalog or legacy size with a skewed window |
| Limit dimension | 25.021 / 25.000 | .505 / .500 | Stated directly; nominal not shown | Critical fits, inspection-driven drawings |
| ISO fit code (hole) | 25 H7 = 25.000 to 25.021 | Inch fits use ASME B4.1 classes | Unilateral for H holes and h shafts | Hole-basis fits with standard tooling |
| ISO fit code (shaft) | 25 g6 = 24.980 to 24.993 | Not applicable | Wholly below nominal, zero not included | Running and sliding clearance fits |
When is a unilateral tolerance the right choice?
Use a unilateral tolerance when the function only cares about one direction, so the nominal is a hard boundary the part may approach but must never cross. Fits, minimum material, clearances and stock left for a later operation are the classic cases.
A bore that must always accept a pin or bushing of a given size is a natural unilateral dimension: the nominal is the minimum and all the tolerance goes on the large side. The same logic covers a slot that must clear a key, a wall that must not fall below a strength minimum, a depth that must at least accept a full thread, a turned diameter left oversize for a later grinding pass, and a diameter cut undersize to leave room for a coating build-up. In each case the nominal on the drawing is the number the designer actually calculated, and the tolerance shows the only acceptable direction of error.
Unilateral tolerancing also matches the ISO fit system. Per ISO 286-1, an H hole has a lower deviation of zero and an h shaft has an upper deviation of zero, so every hole-basis or shaft-basis fit starts from a unilateral feature. Writing a fit as 25 +0.021/0 instead of a centered tolerance keeps the link to the fit table visible.
The trap is the machinist’s target. With a unilateral tolerance the nominal sits on the edge of the zone, so a program written to nominal produces parts on the limit, and any tool wear or thermal drift pushes them out. Shops normally aim at the middle of the zone; if your CAD model is built at nominal and the supplier machines from the model, say on the RFQ that the drawing tolerance governs and the model is nominal.
When should you use an equal or an unequal bilateral tolerance?
Equal bilateral is the right default for any dimension where the target is the center and error either way costs the same, which covers most lengths, steps and hole locations. Unequal bilateral is a special case and usually a sign that the nominal should be changed.
An equal bilateral tolerance tells everybody the same thing at once: aim at the number shown, and the window is symmetric. That is why general tolerance blocks are written that way. The linear deviations in ISO 2768-1 are all symmetric plus and minus values, and most title-block defaults follow the same pattern. A symmetric callout is also the form a tolerance stack uses, so the designer can add mean dimensions and half-tolerances directly.
Unequal bilateral tolerances, such as 40 +0.2/−0.1, are legitimate but expensive to read. The center of the zone is not on the drawing; someone has to work out that it is 40.05 and that the window is 0.3 wide. They tend to appear when a part is being kept at a round or catalog nominal for documentation reasons, or when an earlier revision was widened on one side only. If neither reason applies, restate the dimension as 40.05 plus or minus 0.15 or as limits. The working rule is simple: if the nominal is not the size anyone is aiming for, do not show it as if it were.
Watch for one more variant. A callout such as 25 +0.015/+0.002 has both deviations on the plus side, so nominal is not in the zone at all. It is still plus-and-minus tolerancing, but limit dimensions say it more honestly.
When are limit dimensions better than plus-and-minus tolerancing?
Use limit dimensions when the two acceptable sizes are what matters and nobody should have to add or subtract to find them. Tight fits, press fits, gauge sizes and features that will be checked with fixed limit gauges are the usual candidates.
Limit dimensioning removes the arithmetic step where inspection mistakes happen. A go/no-go plug gauge is built to the two limits, a first-article report records upper and lower limits for every characteristic, and a ballooned drawing is easier to audit when the balloon points straight at the numbers the report uses. For an interference fit where the window is a few hundredths of a millimeter, writing the limits directly is the clearest way to stop a supplier from rounding the wrong way.
The cost is that limit dimensions hide the design intent. A reviewer sees 25.021 over 25.000 and cannot tell whether it came from an H7 fit, a bearing catalog or a guess. Many drawings solve this by pairing the two: 25 H7 with the limits in parentheses, or the limits with the fit code as a reference. Both are clear, provided one of them is marked as the governing value.
Limit dimensions also make the inspection rule easy to apply. Under ASME Y14.5, all limits are absolute and are read as if they continued with zeros, so a limit of 25.021 means 25.0210 and a measured 25.0212 is out. Rounding a measurement into tolerance is not permitted, whatever format the dimension uses.
How do fit codes such as H7/g6 map onto these formats?
An ISO fit code is a compressed way of writing a limit pair, and the letter sets where the zone sits relative to nominal. H and h zones are unilateral, JS and js zones are equal bilateral, and many other letters give zones that do not include nominal at all.
In the ISO system the letter identifies the fundamental deviation and the number is the tolerance grade, so 25 g6 is a zone wholly below 25 and 25 k6 is a zone wholly above it. Per ISO 286-2, the JS (hole) and js (shaft) zones are symmetric about nominal, which makes them the only equal bilateral fit codes; letters such as J, K, M and N can straddle nominal unequally, depending on grade and size. A hole-basis drawing therefore pairs a unilateral hole with a shaft that is usually offset, which is why fit callouts mix formats on the same assembly.
For buyers sending drawings to an overseas shop, the safest practice is to give the code and the computed limits together. The supplier can check one against the other in the drawing review, and an error in either shows up before tooling, not at incoming inspection. The fits guide lists the common hole-basis pairs; inch drawings use the RC, LC, LT, LN and FN classes of ASME B4.1, and metric drawings that reference the American standard use ASME B4.2, which follows the ISO system.
How do machinists and inspectors read each format?
Machinists convert every format to a target in the middle of the zone, and inspectors convert every format to two limits. The format that needs the least conversion for both groups is the one least likely to be misread.
For the machinist, equal bilateral needs no work: the nominal is the target. Unilateral and unequal bilateral tolerances need a mean size worked out and entered as a tool offset or a CAM adjustment; limit dimensions need the two limits averaged. On a turned part with dozens of diameters this adds up, and every conversion is a chance to slip a digit. The most common real error is a unilateral tolerance on a feature modeled at nominal, cut to the model, and found sitting on the limit.
For the inspector, limit dimensions need no work, and every plus-and-minus format needs the limits calculated before measuring. A good inspection plan writes those limits into the report once, at first article, so nobody redoes the arithmetic on every lot. The report should also note the measuring method for each characteristic, because a two-point caliper reading and an envelope check with a ring gauge can disagree on the same diameter; that is a size-definition question, not a format question, and it belongs in the drawing notes.
For stack-ups, analysts convert every dimension to its mean value with an equal bilateral tolerance before adding them. A drawing that already uses equal bilateral tolerances on the stacked dimensions makes that analysis easy to check, which is a quiet argument for using them on chain dimensions even where a fit elsewhere is unilateral.
What should the drawing and RFQ say about tolerance format?
Pick a format per dimension for the reader, state which standard governs the drawing, and say whether the CAD model or the drawing wins. Then let the supplier’s drawing review catch anything ambiguous before tooling.
- Governing standard. Note ASME Y14.5 (with edition) or the ISO GPS chain, so the zero-sign and decimal-place conventions, and the rule that limits are absolute, are not in dispute. The Y14.5 versus ISO GPS guide covers the differences.
- Fits. Give the fit code and the computed limits, and mark which one governs.
- One-sided features. Use a unilateral tolerance where function is one-sided, and keep the nominal at the boundary the designer calculated.
- Unequal bilateral callouts. Review each one; restate it as a centered tolerance or as limits unless the nominal has to stay for a reason.
- Model versus drawing. If a CAD model is supplied, say whether it is built at nominal or at mean size, and that the drawing tolerances govern.
- Inspection. Mark the characteristics that are critical, so the first-article and lot records focus on them.
At Saola, the drawing review step reads every tolerance, callout and note, and the buyer receives a marked-up copy of their own drawing, which is where an ambiguous unequal bilateral callout or a fit code without limits gets flagged. The first piece off new tooling is measured against every toleranced dimension, and a dimensional record ships with each lot, as described on the quality page. On CNC turning, threads are checked with go/no-go gauges; on CNC milling the capability page lists what the shop holds on bores and GD&T. ISO 9001 is in progress, not yet held. To check how your tolerance formats read on the floor, send the drawing through the quote form, and see the RFQ guide for the rest of the package.
Frequently asked
Is a unilateral tolerance tighter than a bilateral one?
No. Tightness is the width of the zone, not its position. A unilateral tolerance of +0.02/0 and an equal bilateral tolerance of plus or minus 0.01 allow exactly the same amount of variation; they only put the window in different places relative to nominal.
Why does a metric drawing show 0 without a sign but an inch drawing shows −.000?
Those are the separate writing conventions that ASME Y14.5 gives for millimeter and inch dimensions. On inch drawings the zero deviation carries its sign and the same number of decimal places as the other deviation; on millimeter drawings a single 0 is shown. Both mean the same thing.
Can a supplier round a measurement to see if it is in tolerance?
Not under ASME Y14.5, which treats every limit as absolute and as if it continued with zeros. If a measured value is beyond the limit at the resolution of the instrument, it is out, whichever tolerance format the drawing uses. Agree the measuring method for critical features before first article.
Should I convert every dimension to limit dimensions?
Usually not. Limits are clearest for fits and gauged features, but equal bilateral tolerances are easier to read for lengths and locations and are what tolerance stacks use. Most good drawings mix formats deliberately and keep each feature in the format that matches its function.
Does the tolerance format change the cost of a part?
The format does not, but the width of the zone does, and an unclear format can lead to parts made against the wrong target. The tight tolerance cost guide explains where the cost of a narrow zone comes from.
Sources
- ASME Y14.5-2018, Dimensioning and Tolerancing, ASME, 2018 (reaffirmed 2024), accessed October 2026
- ISO 286-1:2010, Geometrical product specifications (GPS) — ISO code system for tolerances on linear sizes — Part 1: Basis of tolerances, deviations and fits, ISO, 2010
- ISO 286-2:2010, Geometrical product specifications (GPS) — ISO code system for tolerances on linear sizes — Part 2: Tables of standard tolerance classes and limit deviations for holes and shafts, ISO, 2010
- ISO 2768-1:1989, General tolerances — Part 1: Tolerances for linear and angular dimensions without individual tolerance indications, ISO, 1989
- ASME B4.2, Preferred Metric Limits and Fits, ASME, 1978 (reaffirmed 2020)