{"id":2272,"date":"2026-09-14T16:29:58","date_gmt":"2026-09-14T08:29:58","guid":{"rendered":"https:\/\/www.jccncmachining.com\/?p=2272"},"modified":"2026-09-12T09:23:56","modified_gmt":"2026-09-12T01:23:56","slug":"why-good-parts-still-fail-together-cnc-tolerance-stack-up","status":"publish","type":"post","link":"https:\/\/www.jccncmachining.com\/ja\/blog\/why-good-parts-still-fail-together-cnc-tolerance-stack-up\/","title":{"rendered":"Why Good Parts Still Fail Together: CNC Tolerance Stack-Up"},"content":{"rendered":"<article class=\"blog-post\">\n<p class=\"lead\" style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\"><strong>CNC tolerance stack-up analysis for assemblies<\/strong> explains why several individually acceptable parts can still create a tight, loose, misaligned, or nonfunctional assembly. The analysis follows a functional dimension chain from one locating surface to the final interface, then compares worst-case and statistical variation before the drawing is released. It is an assembly-planning exercise, not simply a request for tighter tolerances on every CNC feature.<\/p>\n<section class=\"key-takeaways\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">The Assembly-Level Answer<\/h2>\n<p><img decoding=\"async\" width=\"1024\" height=\"576\" loading=\"lazy\" src=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2-1024x576.webp\" alt=\"Assembly tolerance condition\" class=\"size-large wp-image-2297 aligncenter\" \/>\n<ul style=\"font-size: 15px; line-height: 1.82;\" srcset=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2-1024x576.webp 1024w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2-300x169.webp 300w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2-768x432.webp 768w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2-1536x864.webp 1536w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2-18x10.webp 18w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2-800x450.webp 800w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-1-2.webp 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>\n<li>Start with the gap, alignment, travel, or preload that must work.<\/li>\n<li>Include every dimension and geometric relationship that influences that requirement.<\/li>\n<li>Use worst-case analysis for guaranteed limits and statistical analysis only when variation assumptions are defensible.<\/li>\n<li>Reserve tight controls for the contributors that actually dominate the functional risk.<\/li>\n<\/ul>\n<\/section>\n<nav class=\"table-of-contents\" aria-label=\"Table of contents\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">A Practical Stack-Up Workflow<\/h2>\n<ol style=\"font-size: 15px; line-height: 1.82;\">\n<li><a href=\"#function\">Define the assembly result<\/a><\/li>\n<li><a href=\"#chain\">Build the dimensional chain<\/a><\/li>\n<li><a href=\"#methods\">Choose an analysis method<\/a><\/li>\n<li><a href=\"#geometry\">Include geometric variation<\/a><\/li>\n<li><a href=\"#action\">Turn the result into drawing action<\/a><\/li>\n<li><a href=\"#verify\">Verify the assembled condition<\/a><\/li>\n<li><a href=\"#faq\">Tolerance stack-up FAQs<\/a><\/li>\n<\/ol>\n<\/nav>\n<section id=\"function\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">Define the assembly result<\/h2>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">A stack-up needs a measurable output. Examples include a minimum clearance for a moving slide, a maximum gap around a cover, a hole-to-pin alignment window, a bearing preload range, or the travel remaining after two stops meet. &#8220;The parts must fit&#8221; is not specific enough to build a useful chain.<\/p>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">Write the requirement as a limit or range, identify the inspection or functional test, and state the assembly condition. Temperature, lubrication, gasket compression, coating, fastener torque, and the order of assembly can change the result.<\/p>\n<\/section>\n<section id=\"chain\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">Build the dimensional chain<\/h2>\n<p><img decoding=\"async\" width=\"1024\" height=\"576\" loading=\"lazy\" src=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2-1024x576.webp\" alt=\"Dimensional tolerance chain\" class=\"size-large wp-image-2298 aligncenter\" \/>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\" srcset=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2-1024x576.webp 1024w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2-300x169.webp 300w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2-768x432.webp 768w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2-1536x864.webp 1536w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2-18x10.webp 18w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2-800x450.webp 800w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-2-2.webp 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>Trace the shortest closed loop between the reference feature and the functional output. Mark each contributor as increasing or decreasing the result. Do not include dimensions that cannot physically change the output, and do not omit offsets created by a datum, washer, shoulder, spacer, or mating face.<\/p>\n<table style=\"width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.82; margin: 24px 0;\">\n<thead>\n<tr>\n<th style=\"border: 1px solid #ccc; padding: 10px; text-align: left;\">Contributor<\/th>\n<th style=\"border: 1px solid #ccc; padding: 10px; text-align: left;\">Assembly effect<\/th>\n<th style=\"border: 1px solid #ccc; padding: 10px; text-align: left;\">Review point<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Part thickness<\/td>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">May reduce or increase a clearance<\/td>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Is the dimension measured from the functional datum?<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Hole or pin location<\/td>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Controls alignment and insertion margin<\/td>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Does orientation belong in the chain too?<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Spacer or coating<\/td>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Changes final stack height<\/td>\n<td style=\"border: 1px solid #ccc; padding: 10px;\">Which process state is the controlled state?<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/section>\n<section id=\"methods\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">Choose an analysis method<\/h2>\n<p><img decoding=\"async\" width=\"1024\" height=\"576\" loading=\"lazy\" src=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2-1024x576.webp\" alt=\"Tolerance analysis workflow\" class=\"size-large wp-image-2299 aligncenter\" \/>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\" srcset=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2-1024x576.webp 1024w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2-300x169.webp 300w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2-768x432.webp 768w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2-1536x864.webp 1536w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2-18x10.webp 18w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2-800x450.webp 800w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-3-2.webp 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><strong>Worst-case analysis<\/strong> adds the full permitted contribution in the unfavorable direction. It is conservative and useful when every assembly must meet a guaranteed boundary, especially for safety, interference, travel, or clearance limits.<\/p>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\"><strong>Statistical analysis<\/strong> estimates the distribution of the assembly result from process variation. RSS or Monte Carlo methods can reduce unnecessary tightening, but only if the distributions, centering, independence, sample size, and production controls are realistic. Statistical yield is not a substitute for a hard minimum or maximum when one failure can damage the product.<\/p>\n<\/section>\n<section id=\"geometry\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">Include geometric variation<\/h2>\n<p><img decoding=\"async\" width=\"1024\" height=\"576\" loading=\"lazy\" src=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2-1024x576.webp\" alt=\"Geometric variation inspection\" class=\"size-large wp-image-2300 aligncenter\" \/>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\" srcset=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2-1024x576.webp 1024w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2-300x169.webp 300w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2-768x432.webp 768w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2-1536x864.webp 1536w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2-18x10.webp 18w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2-800x450.webp 800w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-4-2.webp 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>A one-dimensional chain can miss a tilted face, offset hole axis, runout, flatness error, or profile deviation. If a pin must enter a hole, position and perpendicularity may matter more than the nominal hole diameter. If two faces seal, flatness, surface texture, burrs, and assembly force may affect the result together.<\/p>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">Use the datum reference frame that the assembly actually uses. The site&#8217;s <a href=\"https:\/\/www.jccncmachining.com\/ja\/blog\/cnc-machining-tolerances\/\">CNC machining tolerances guide<\/a> provides the single-part tolerance context; this analysis extends it to relationships between parts.<\/p>\n<\/section>\n<section id=\"action\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">Turn the result into drawing action<\/h2>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">Do not automatically tighten every contributor. Rank the chain by sensitivity and manufacturing risk. A dominant hole location may need a position control, while a nonfunctional outside edge can keep its general tolerance. A stack-up may also show that changing a datum, adding an adjustment feature, splitting a tolerance, or changing the assembly sequence is more effective than demanding tighter machining.<\/p>\n<ol style=\"font-size: 15px; line-height: 1.82;\">\n<li>Identify the largest contributors to the output range.<\/li>\n<li>Check whether the drawing controls the correct size, location, orientation, or form characteristic.<\/li>\n<li>Review whether coating, heat treatment, deburring, and assembly add variation.<\/li>\n<li>Recalculate after each design change and record the accepted assumptions.<\/li>\n<\/ol>\n<\/section>\n<section id=\"verify\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">Verify the assembled condition<\/h2>\n<p><img decoding=\"async\" width=\"1024\" height=\"576\" loading=\"lazy\" src=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2-1024x576.webp\" alt=\"Assembly function test\" class=\"size-large wp-image-2301 aligncenter\" \/>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\" srcset=\"https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2-1024x576.webp 1024w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2-300x169.webp 300w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2-768x432.webp 768w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2-1536x864.webp 1536w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2-18x10.webp 18w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2-800x450.webp 800w, https:\/\/www.jccncmachining.com\/wp-content\/uploads\/2026\/09\/h2-5-2.webp 1600w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/>The final check should connect component inspection with the actual assembly outcome. Measure critical parts using the same datums, then perform the relevant fit, movement, sealing, alignment, or preload check. A report of individual dimensions cannot prove a functional result that was never defined.<\/p>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">For a complex assembly, align the measurement plan with the supplier&#8217;s <a href=\"https:\/\/www.jccncmachining.com\/ja\/about\/quality\/\">quality and inspection process<\/a>. Keep the stack-up assumptions with the revision so future changes to material, finish, or supplier process can be evaluated consistently.<\/p>\n<\/section>\n<section id=\"faq\">\n<h2 style=\"font-size: 26px; line-height: 1.25; margin-top: 46.8px; margin-bottom: 18.2px;\">Tolerance stack-up FAQs<\/h2>\n<h3 style=\"font-size: 20px; line-height: 1.25; margin-top: 36px; margin-bottom: 14px;\">When is worst-case analysis necessary?<\/h3>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">Use it when the assembly must meet a guaranteed boundary across the specified component limits or when a single failure has unacceptable consequences. It is conservative, but it makes the acceptance condition easy to explain.<\/p>\n<h3 style=\"font-size: 20px; line-height: 1.25; margin-top: 36px; margin-bottom: 14px;\">Can tighter CNC tolerances solve every stack-up problem?<\/h3>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">No. A datum change, feature relocation, adjustment allowance, improved assembly sequence, or control of position and orientation may reduce risk more effectively than tighter size limits.<\/p>\n<h3 style=\"font-size: 20px; line-height: 1.25; margin-top: 36px; margin-bottom: 14px;\">Should coatings be included?<\/h3>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">Yes, when the coating changes a mating size, gap, friction, sealing surface, or locating condition. State the controlled state and include coating variation in the relevant chain.<\/p>\n<h3 style=\"font-size: 20px; line-height: 1.25; margin-top: 36px; margin-bottom: 14px;\">What is the most common stack-up mistake?<\/h3>\n<p style=\"font-size: 15px; line-height: 1.82; margin-bottom: 16.5px; text-align: left;\">The most common mistake is analyzing nominal linear dimensions while ignoring datum transfer, feature orientation, surface condition, or the actual assembly sequence.<\/p>\n<\/section>\n<\/article>","protected":false},"excerpt":{"rendered":"<p>CNC tolerance stack-up analysis for assemblies explains why several individually acceptable parts can still create a tight, loose, misaligned, or nonfunctional assembly. The analysis follows a functional dimension chain from one locating surface to the final interface, then compares worst-case and statistical variation before the drawing is released. It is an assembly-planning exercise, not simply a request for tighter tolerances on every CNC feature. The Assembly-Level Answer Start with the gap, alignment, travel, or preload that must work. Include every dimension and geometric relationship that influences that requirement. Use worst-case analysis for guaranteed limits and statistical analysis only when variation assumptions are defensible. Reserve tight controls for the contributors that [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2302,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2272","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/posts\/2272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/comments?post=2272"}],"version-history":[{"count":8,"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/posts\/2272\/revisions"}],"predecessor-version":[{"id":2303,"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/posts\/2272\/revisions\/2303"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/media\/2302"}],"wp:attachment":[{"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/media?parent=2272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/categories?post=2272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jccncmachining.com\/ja\/wp-json\/wp\/v2\/tags?post=2272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}