Atelier d'Usinage Joly Concept Machine Shop
Atelier d'Usinage Joly Concept Machine Shop

ISO Tolerance Calculator

ISO Metric Tolerance Zone Builder
Basic Size Deviation Grade
Shaft Hole
Units: mm in
max. Precision:
3 4 5
version 0.92
Tolerance List
Size Size Range Clear

The calculations are based on the British standard Metric ISO Limits and Fits.

All internal calculations are done in metric millimeters to a precision of up to half a micron (0.0005mm). All dimensions displayed as inches are converted from the metric values.

NOTE: Not all combination of Size/Deviation/Grade return valid results.
Warning!: The "in" (Inches) display setting is there for convenience only. Using a low max. Precision setting combined with an inch display may result in loss of accuracy and dimensions that do not represent accurate tolerances. The "max. Precision: 3" setting is the lowest precision required that is sufficient to accurately display all the tolerances in metric millimeters.
Basic Size:

The basic size or nominal size is the dimension to which the selected deviation and grade combination will be applied. The size will affect the allowance/tolerance that will be applied. In general, the larger the size of the feature the greater the allowance (Grade) size will relatively be.

The size must be entered as a metric millimeter value and be between 0mm and 500mm.

Fundamental Deviation:

Determines if the tolerance is applied to a hole (internal) or shaft (external) feature type. The feature type does not only apply to Holes or Shafts. You can think of them as being Internal (Holes) or External (Shaft) features. For example: a keyway.

The deviation determines if the feature will be oversized, undersized or allow for a symmetrical deviation. It also determined the range or size of the tolerance zone.

Shaft/Hole: (radio control)

Select which type of deviation selection control will be active. Shaft (external) tolerances are lower case and Hole (Internal) deviation are upper case.

Grade: (International Tolerance Grade)

The International Tolerance Grade (IT Grade) determines the maximum difference between the components relative to the Basic Size. In general, The smaller the grade the smaller the zone and vise versa.


Displays the a formatted version of the user inputs as well as the lower deviation and upper deviation between parentheses. The basic size is always displayed in metric millimeters, the deviations are displayed as per the selected "Unit type" and "max. Precision" settings. Please "Warning!" note at the top of this document.


Displays the Minimum / Nominal / Maximum size of the feature in millimeters or inches after the allowable deviation have been applied to the Basic Size.


This area displays information if special cases or exceptions were applied and if combination of Size/Deviation/Grade return invalid results.

NOTE: Not all combination of Size/Deviation/Grade return valid results.
Special cases:

Some exceptions are mentioned in the specification as followed...

1- Some Grades are not applicable to sizes below 1mm.
2- Some Deviations are not applicable to sizes below 1mm.
3- Special case for M6 from 250mm to 315mm tolerance.
4- Some internal Grade values must be rounded down to a precision of 3 decimal metric millimeter precision.
Units (mm/in):
Select between millimeters and inches the unit of measure the results will be displayed. All internal calculations are done using metric millimeters. All units converted to inches will have a suffix of ("). See "Warning!" at the beginning of this document for rounding issues when displaying inch values.
max Precision:
This is the setting that determines how many digits after the decimal point the results will be displayed. See "Warning!" at the beginning of this document for rounding issues when displaying inch values.
1- All unnecessary trailing zeros to the right after the decimal point are removed.
2- Inch decimal numbers are rounded using conventional rounding rules: last digit (0-4) rounded down, (5-9) rounded up.
Add to list: (button)

Copy the displayed "result" and "(Min/Nom/Max)" to the "Tolerance List box". using the selected "Units" and "max. Precision".

Tolerance List: (Box)

there are no limits to the number of entries that can be added to the list. Individual entries can be removed by clicking the "C" button to the right of each list entry. All entries may be removed using the "Clear all entries" button.

NOTE: The values added to the "Tolerance List" box are not saved in a persistent fashion. Navigating away from or refreshing the page will discard ALL the values added to the list.
Author NOTE:

Not all possible combinations of Size, Deviation and Grade were tested. I have manually verified around 2000 combinations while debugging and testing this web application. Comparing results to existing charts and calculating random possibilities. Unfortunately I cannot guaranty that all possible combinations will return correct results. During the testing phase I have found errors in official documents, books and charts and rechecked and tried, to the best of my abilities, to confirm or question the validity of values calculated and listed in reference documentations. I figure that at this point, only time and repeated usage will tell if the application is as accurate as I hope it is. If you question the validity of or find any erroneous results please contact me... . Thank you.

NOTE: An issue was reported about the tolerance grades: “01”, “0” and “1” reporting back the same values. It was traced back to a string parsing error. The error would have resulted in the tolerances for the grades “0” and “1” to be the same as “01”, smaller than necessary. Thank you Mr. J. McKibben for your input.

A minor issue in the text has also been corrected.

- Martin

Updated: 25 January 2020

Privacy policy |  Disclaimer |
Copyright © 2011-2024 Joly Concept
Québec Canada