9 min read

Does text-to-CAD understand tolerances?

Tolerances require GD&T knowledge, fit specifications, and manufacturing process awareness. Text-to-CAD tools produce nominal geometry and call it a day.

Quick answer

No. Text-to-CAD tools generate nominal geometry without tolerances, GD&T callouts, or fit specifications. The generated models have no tolerance information, no datum references, and no understanding of manufacturing process capabilities. Tolerance specification remains entirely manual work that requires engineering knowledge AI tools don't have.

Text-to-CAD tools do not understand tolerances. They generate nominal geometry, a 10mm hole is exactly 10.000mm in the model, with no tolerance band, no fit class, no surface finish callout, and no datum reference. The model has dimensions. It has no engineering intent about precision. I learned to stop expecting this after the third time I opened a STEP file from Zoo.dev, measured a bore that was supposed to accept a bearing, and found it at the nominal diameter with no fit specification. A bearing bore without an H7 tolerance is just a round hole with ambitions.

This isn't a bug that will get patched. It's a fundamental gap between what text-to-CAD produces (shapes) and what manufacturing requires (specifications). The gap is worth understanding properly, because tolerances are where CAD models stop being geometry and start being engineering.

What tolerances actually are#

For anyone outside manufacturing, tolerances sound like a technicality. They're not. They're the language that tells a machine shop how precisely to make each feature.

A 10mm hole means nothing to a machinist without a tolerance. Does it need to be 10.000mm +/- 0.1mm? That's a loose hole, probably a clearance hole for a bolt, drilled and done. Does it need to be 10.000mm +0.015/-0.000mm? That's an H7 tolerance, a bearing bore, which needs to be reamed or bored to a specific finish. The difference between those two holes is the difference between a 30-second drilling operation and a multi-step process with inspection.

Dimensional tolerances specify how far a dimension can vary from nominal. Geometric tolerances (GD&T) specify how much a feature can deviate in form, orientation, and position. A hole can be the right diameter but in the wrong position. It can be the right diameter and the right position but out of round. GD&T captures all of these. It's a formal language defined by ASME Y14.5 (in the US) or ISO GPS standards (internationally), and it's how engineers communicate manufacturing precision.

The tolerance system exists because no manufacturing process is perfect. A CNC mill can hold +/- 0.025mm on a good day with proper tooling. A desktop 3D printer might hold +/- 0.2mm on simple features. Die casting holds +/- 0.1mm to 0.5mm depending on the size and complexity. Every process has a capability range, and tolerances must sit within what the chosen process can achieve. Specifying a tolerance tighter than the process can hold means expensive operations, rejected parts, or both.

What text-to-CAD actually outputs#

Every text-to-CAD tool I've tested outputs geometry with nominal dimensions and nothing else. Here's what's missing.

No dimensional tolerances. A hole in the model is 10.000mm. Whether it's a clearance hole (needs to be 10.5mm for M10 clearance), a location fit (10.015 to 10.000mm, H7), or a press fit (9.985 to 9.972mm, P7) is nowhere in the data. The STEP file contains a cylindrical surface at exactly 10mm. That's it.

No geometric tolerances. There's no flatness callout on mating surfaces. No perpendicularity requirement on a bore relative to a face. No position tolerance on a bolt pattern. No concentricity between a bore and an outer diameter. None of the GD&T symbols that a manufacturing engineer reads to understand what matters on the part.

No datum references. GD&T requires datums: reference features that the part's tolerances are measured from. Datum A might be the mounting face. Datum B might be a locating bore. Datum C might be a slot. The datum scheme defines how the part is fixtured for inspection and how all other features are controlled relative to the functional references. Text-to-CAD models have no datum scheme because they have no GD&T.

No surface finish specifications. The model surfaces are mathematically perfect. In reality, every manufactured surface has roughness. Ra 0.8 for a bearing surface. Ra 3.2 for a general machined face. Ra 12.5 for a rough cut. These specifications affect function, cost, and manufacturing method. They're absent from AI-generated models.

No fit specifications. When a shaft goes into a hole, the fit class determines whether they slide freely (clearance fit), require gentle pressure (transition fit), or need to be pressed together (interference fit). Fit specifications depend on tolerance grades on both the shaft and the hole. Text-to-CAD generates a shaft and a hole at nominal. Whether they fit together and how is undefined.

The gap between nominal and manufacturable#

The text-to-CAD dimensional accuracy question is about whether the AI hits the dimensions you asked for. The tolerance question is different: even if the nominal dimensions are perfect, the model still isn't manufacturing-ready because it carries no information about how precisely those dimensions need to be held.

Consider a simple bracket with two 6mm mounting holes and a 12mm bore for a pin. The STEP file from a text-to-CAD tool gives you three cylindrical features at their nominal diameters. For manufacturing, you need:

The mounting holes specified as 6.6mm clearance for M6 bolts, with a position tolerance of 0.25mm relative to the datum scheme, because the bolt pattern needs to align with the mating part.

The pin bore specified as 12mm H7 (12.000 to 12.018mm) with a surface finish of Ra 1.6 and a perpendicularity tolerance of 0.02mm relative to the mounting face, because the pin needs to fit properly and the mechanism needs to move smoothly.

The mounting face specified as a primary datum with a flatness tolerance of 0.05mm, because the bracket seats against a machined surface and needs full contact.

That's a simple bracket. Three features, maybe a dozen tolerance callouts. None of that information exists in the AI-generated model. All of it needs to be added by a human who understands the function of each feature, the manufacturing process, and the inspection method.

Why AI can't learn tolerances from training data#

This is the part where people say "but won't the AI learn this eventually?" Maybe. But the obstacles are structural, not just a matter of more training data.

Tolerances live in drawings, not in 3D models. The STEP files and native CAD files that text-to-CAD models train on contain geometry. Tolerances are typically specified on 2D engineering drawings, in separate drawing files that reference the 3D model but contain the annotation layer. The training data for geometry and the training data for tolerances are in different file formats, often in different systems, and rarely linked in a way that's useful for machine learning.

Tolerances depend on function, not geometry. Two identical-looking holes can have wildly different tolerances depending on whether one is a bearing bore and the other is a clearance hole. The tolerance isn't determined by the shape. It's determined by what the shape does in the assembly, which requires understanding the part's function in context. A text prompt that says "12mm hole" contains no functional intent. Is it a press fit for a dowel pin? A clearance hole for a bolt? A bearing bore? The tolerance depends on the answer, and the prompt rarely provides it.

Tolerance specification requires process knowledge. An engineer choosing tolerances considers the manufacturing process capability, the inspection method, the cost impact of tighter tolerances, and the functional requirements of the mating parts. A surface that seals against an O-ring needs different roughness than a surface that's hidden inside the assembly. This is judgment based on experience, and it's exactly the kind of knowledge that doesn't encode well in CAD geometry training data.

The text-to-CAD limitations cover this at a higher level. Tolerances are one specific instance of the broader pattern: text-to-CAD produces geometry without engineering metadata, and for manufacturing, the metadata is often more important than the shape.

What this means for your workflow#

If you're using text-to-CAD to generate parts for manufacturing, here's the practical impact.

Every AI-generated model needs a tolerance review. Open the model in your CAD tool. Identify every feature that has a functional requirement (mating surfaces, bearing bores, bolt holes, seal grooves, alignment features). Add the appropriate tolerances based on the part's function and your manufacturing process. This is engineering work, and it takes longer than generating the geometry.

Simple parts with loose requirements are less affected. A bracket that mounts with clearance bolts and has no precision interfaces? The general tolerances on the drawing (something like ISO 2768-m) might be sufficient, and you can add those as a note without individual feature callouts. For parts where nothing needs to be tight, the tolerance gap is a minor inconvenience.

Precision parts are where the gap becomes expensive. If the part has bearing bores, seal grooves, press fits, location pins, or any feature where the tolerance drives the function, the AI-generated geometry is only a starting shape. The tolerance specification, which determines whether the part actually works, is 100% human work.

The text-to-CAD guide recommends using AI generation for concept and early prototyping, then rebuilding in proper CAD for production. The tolerance issue is one of the biggest reasons for that recommendation. A concept prototype printed on an FDM printer doesn't need GD&T. A production part going to a machine shop does. The transition from AI-generated geometry to production-ready model is where the tolerance work happens, and it happens entirely by hand.

The drawing connection#

Tolerances and engineering drawings are inseparable. The tolerance information lives on the drawing, applied to the 3D model through annotation planes, leader lines, feature control frames, and dimension callouts. Without a drawing, there's nowhere for the tolerances to live in a communicable format.

Text-to-CAD doesn't generate drawings either, and I cover that in a separate post. But the connection matters here: even if a future text-to-CAD tool could generate tolerances and embed them in the 3D model as PMI (Product Manufacturing Information), the manufacturing world still largely runs on 2D drawings. The tolerance data needs to end up on a drawing eventually, and that drawing is created by an engineer, not an AI.

The honest assessment#

Tolerances are one of those topics where the gap between "a shape on screen" and "a specification for manufacturing" is starkest. Text-to-CAD gives you shapes. Manufacturing needs specifications. The distance between the two is measured in engineering hours, and no amount of prompt writing reduces it.

I don't expect this to change soon. Tolerances require functional understanding that current AI architectures don't have and that current training data doesn't encode. The most likely near-term improvement is AI tools that suggest tolerances based on detected feature types (it looks like a bearing bore, here's a typical tolerance for that), but even that requires the AI to correctly identify the feature's function, which circles back to the same problem.

For now, tolerances are your job. The AI gives you the shape. You give it the meaning. And if that sounds like most of the engineering work is still on you, you're right. A CAD model without tolerances is like a recipe without temperatures. It tells you what to make. It doesn't tell you how carefully to make it. That's the part where the coffee goes cold and the engineering actually happens, and it's the part the AI hasn't touched.

Newsletter

Get new TexoCAD thoughts in your inbox

New articles, product updates, and practical ideas on Text-to-CAD, AI CAD, and CAD workflows.

No spam. Unsubscribe anytime.