{"id":143,"date":"2026-09-07T01:01:21","date_gmt":"2026-09-07T05:01:21","guid":{"rendered":"https:\/\/passcontractorexam.com\/articles\/?p=143"},"modified":"2026-10-27T00:59:22","modified_gmt":"2026-10-27T04:59:22","slug":"nascla-accredited-examination-commercial-general-building-contractor","status":"publish","type":"post","link":"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/","title":{"rendered":"NASCLA Commercial Building Contractor Exam: What Is on It"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>The NASCLA accredited examination for commercial general building contractors is one open book test of 115 questions in 330 minutes, and 81 correct answers pass. Nearly half of it is contract and project administration rather than trade work, which is the part almost no course brochure mentions.<\/strong><\/p>\n\n\n\n<div class=\"msq-audio\" data-article=\"nascla-accredited-examination-commercial-general-building-contractor\" data-minutes=\"17\">\n<style>.msq-audio{margin:1.25em 0 1.75em;padding:16px 18px;background:#F3F1EC;border:1px solid #D9D3C7;border-radius:12px}\n.msq-audio-lead{margin:0 0 8px;font-size:.95em}.msq-audio audio{width:100%;margin:0 0 12px;display:block}\n.msq-toc-title{margin:0 0 6px;font-weight:700}.msq-toc ol{margin:0;padding:0;list-style:none}\n.msq-toc li{display:flex;gap:10px;align-items:center;padding:6px 6px;border-bottom:1px solid #D9D3C7;border-radius:8px}\n.msq-toc li:last-child{border-bottom:0}.msq-toc li.is-active{background:#fff}\n.msq-toc-play{flex:0 0 auto;width:30px;height:30px;border-radius:50%;border:0;background:#24405E;color:#fff;font:inherit;font-size:.72em;line-height:30px;padding:0;cursor:pointer}\n.msq-toc-play.is-playing{background:#C4540E}\n.msq-toc-time{flex:0 0 auto;min-width:3.1em;font-variant-numeric:tabular-nums;color:#4C5561;font-size:.9em}\n.msq-toc a{color:#1B1F24;text-decoration:none;line-height:1.35}.msq-toc li.is-active a{font-weight:700;color:#24405E}\n.msq-audio-note{margin:10px 0 0;font-size:.82em;color:#4C5561}\nh2.wp-block-heading[id]{scroll-margin-top:24px}\n.msq-hplay{display:inline-block;vertical-align:middle;width:26px;height:26px;margin:0 0 0 10px;border-radius:50%;border:0;background:#24405E;cursor:pointer;padding:0;position:relative;top:-2px}\n.msq-hplay::before{content:'\u25b6\ufe0e';display:block;color:#fff;font-size:11px;line-height:26px;text-align:center}\n.msq-hplay.is-playing{background:#C4540E}.msq-hplay.is-playing::before{content:'\u2016';font-size:13px;font-weight:700}\n.msq-bar{position:fixed;left:0;right:0;bottom:0;z-index:9000;display:flex;align-items:center;gap:10px;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:#FFFFFF;border-top:1px solid #D9D3C7;box-shadow:0 -4px 16px rgba(0,0,0,.08);font-size:.92em;color:#1B1F24;transition:transform .2s ease}\n.msq-bar.is-hidden{transform:translateY(130%)}\n.msq-bar-play{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;background:#24405E;color:#fff;font:inherit;font-weight:700;padding:8px 14px 8px 12px;cursor:pointer;white-space:nowrap}\n.msq-bar-play.is-playing{background:#C4540E}\n.msq-bar-icon::before{content:'\u25b6\ufe0e';font-size:12px}.msq-bar-play.is-playing .msq-bar-icon::before{content:'\u2016';font-size:14px;font-weight:700}\n.msq-bar-chapter{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n.msq-bar-time{flex:0 0 auto;font-variant-numeric:tabular-nums;color:#4C5561;font-size:.9em}\n.msq-bar-rate,.msq-bar-close{flex:0 0 auto;border:1px solid #D9D3C7;background:#fff;color:#1B1F24;font:inherit;font-size:.85em;line-height:1;border-radius:8px;padding:7px 9px;cursor:pointer}\n.msq-bar-close::before{content:'\u2715'}\n.msq-bar.msq-bar-pill{left:auto;right:14px;bottom:14px;padding:6px;padding-bottom:6px;border:1px solid #D9D3C7;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.15)}\n.msq-bar.msq-bar-pill .msq-bar-chapter,.msq-bar.msq-bar-pill .msq-bar-time,.msq-bar.msq-bar-pill .msq-bar-rate{display:none}\nbody.msq-has-bar{padding-bottom:76px}\n@media (max-width:600px){.msq-bar-time{display:none}.msq-bar{gap:8px;padding-left:10px;padding-right:10px}}\n.msq-s.msq-now{background:#F3F1EC;box-shadow:0 2px 0 #24405E;border-radius:2px}\ntr.msq-now td,tr.msq-now th{background:#F3F1EC;box-shadow:inset 0 -2px 0 #24405E}\n@media (hover:hover){.msq-s,tr[data-i]{cursor:pointer}.msq-s:hover{background:#F3F1EC}}<\/style>\n<script type=\"application\/ld+json\">{\"@context\":\"https:\/\/schema.org\",\"@type\":\"AudioObject\",\"@id\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#audio\",\"name\":\"NASCLA Commercial Building Contractor Exam: What Is on It, read aloud\",\"description\":\"Synthetic voice reading of the article, recorded 27 October 2026.\",\"contentUrl\":\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/10\/nascla-accredited-examination-commercial-general-building-contractor-audio-202610271029.mp3\",\"encodingFormat\":\"audio\/mpeg\",\"duration\":\"PT16M40S\",\"uploadDate\":\"2026-10-27\",\"inLanguage\":\"en-US\",\"isAccessibleForFree\":true,\"mainEntityOfPage\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/\",\"hasPart\":[{\"@type\":\"Clip\",\"name\":\"NASCLA Commercial Building Contractor Exam: What Is on It\",\"startOffset\":0,\"endOffset\":63},{\"@type\":\"Clip\",\"name\":\"What is this exam, and who sits it?\",\"startOffset\":63,\"endOffset\":198,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#what-is-this-exam-and-who-sits-it\"},{\"@type\":\"Clip\",\"name\":\"How many questions, how long, and what score passes?\",\"startOffset\":198,\"endOffset\":252,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#how-many-questions-how-long-and-what-score-passes\"},{\"@type\":\"Clip\",\"name\":\"What is actually on it, section by section?\",\"startOffset\":252,\"endOffset\":383,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#what-is-actually-on-it-section-by-section\"},{\"@type\":\"Clip\",\"name\":\"How much time do you really get per question?\",\"startOffset\":383,\"endOffset\":434,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#how-much-time-do-you-really-get-per-question\"},{\"@type\":\"Clip\",\"name\":\"What can you carry in, and what can you do to the books?\",\"startOffset\":434,\"endOffset\":525,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#what-can-you-carry-in-and-what-can-you-do-to-the-books\"},{\"@type\":\"Clip\",\"name\":\"What does it cost, and how long is an approval good for?\",\"startOffset\":525,\"endOffset\":660,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#what-does-it-cost-and-how-long-is-an-approval-good-for\"},{\"@type\":\"Clip\",\"name\":\"What happens if you fail all three attempts?\",\"startOffset\":660,\"endOffset\":721,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#what-happens-if-you-fail-all-three-attempts\"},{\"@type\":\"Clip\",\"name\":\"What do people who sat it actually report?\",\"startOffset\":721,\"endOffset\":920,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#what-do-people-who-sat-it-actually-report\"},{\"@type\":\"Clip\",\"name\":\"What should this change about how you prepare?\",\"startOffset\":920,\"endOffset\":1000,\"url\":\"https:\/\/passcontractorexam.com\/articles\/nascla-accredited-examination-commercial-general-building-contractor\/#what-should-this-change-about-how-you-prepare\"}],\"contentSize\":\"7.0 MB\"}<\/script>\n<p class=\"msq-audio-lead\"><strong>Listen to this article<\/strong>, about 17 minutes. A synthetic voice reads the article and announces each section title as it begins; tables are read row by row and the questions at the end are left out.<\/p>\n<audio class=\"msq-audio-player\" controls preload=\"metadata\" src=\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/10\/nascla-accredited-examination-commercial-general-building-contractor-audio-202610271029.mp3\"><\/audio>\n<nav class=\"msq-toc\" aria-label=\"In this article\"><p class=\"msq-toc-title\">In this article<\/p>\n<ol>\n<li data-start=\"0.0\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"0.0\" aria-label=\"Play from: NASCLA Commercial Building Contractor Exam: What Is on It\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">0:00<\/span><a href=\"#top\">NASCLA Commercial Building Contractor Exam: What Is on It<\/a><\/li>\n<li data-start=\"63.42\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"63.42\" aria-label=\"Play from: What is this exam, and who sits it?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">1:03<\/span><a href=\"#what-is-this-exam-and-who-sits-it\">What is this exam, and who sits it?<\/a><\/li>\n<li data-start=\"197.68\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"197.68\" aria-label=\"Play from: How many questions, how long, and what score passes?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">3:18<\/span><a href=\"#how-many-questions-how-long-and-what-score-passes\">How many questions, how long, and what score passes?<\/a><\/li>\n<li data-start=\"252.14\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"252.14\" aria-label=\"Play from: What is actually on it, section by section?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">4:12<\/span><a href=\"#what-is-actually-on-it-section-by-section\">What is actually on it, section by section?<\/a><\/li>\n<li data-start=\"383.36\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"383.36\" aria-label=\"Play from: How much time do you really get per question?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">6:23<\/span><a href=\"#how-much-time-do-you-really-get-per-question\">How much time do you really get per question?<\/a><\/li>\n<li data-start=\"433.86\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"433.86\" aria-label=\"Play from: What can you carry in, and what can you do to the books?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">7:14<\/span><a href=\"#what-can-you-carry-in-and-what-can-you-do-to-the-books\">What can you carry in, and what can you do to the books?<\/a><\/li>\n<li data-start=\"525.08\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"525.08\" aria-label=\"Play from: What does it cost, and how long is an approval good for?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">8:45<\/span><a href=\"#what-does-it-cost-and-how-long-is-an-approval-good-for\">What does it cost, and how long is an approval good for?<\/a><\/li>\n<li data-start=\"660.02\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"660.02\" aria-label=\"Play from: What happens if you fail all three attempts?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">11:00<\/span><a href=\"#what-happens-if-you-fail-all-three-attempts\">What happens if you fail all three attempts?<\/a><\/li>\n<li data-start=\"721.08\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"721.08\" aria-label=\"Play from: What do people who sat it actually report?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">12:01<\/span><a href=\"#what-do-people-who-sat-it-actually-report\">What do people who sat it actually report?<\/a><\/li>\n<li data-start=\"919.7\"><button type=\"button\" class=\"msq-toc-play\" data-start=\"919.7\" aria-label=\"Play from: What should this change about how you prepare?\">&#x25B6;&#xFE0E;<\/button><span class=\"msq-toc-time\">15:20<\/span><a href=\"#what-should-this-change-about-how-you-prepare\">What should this change about how you prepare?<\/a><\/li>\n<\/ol><\/nav>\n<p class=\"msq-audio-note\">Recorded 27 October 2026 from the article as published that day. Press a chapter to jump there; the highlighted line is what is playing. A play button sits beside every section heading, and once you scroll past this player a bar at the bottom of the screen keeps the controls in reach. Tap or click any sentence to hear the reading start from there.<\/p>\n<script>var MSQ_SENT = [[0.0,\"h\",\"nasclacommercialbuilding\",48],[4.12,\"p\",\"thenasclaaccreditedexami\",135],[16.08,\"p\",\"nearlyhalfofitiscontract\",111],[23.6,\"p\",\"onthispagewhattheexamrep\",224],[42.84,\"p\",\"thereisareasonitishardto\",55],[46.08,\"p\",\"searchforitandthefirstre\",91],[51.8,\"p\",\"coursesellersarenotneutr\",57],[55.24,\"p\",\"sohereistheexamitselftak\",118],[63.42,\"h\",\"whatisthisexamandwhosits\",26],[66.02,\"p\",\"thenasclaaccreditedexami\",135],[75.58,\"p\",\"youpassitonce\",13],[76.54,\"p\",\"yourscoregoesintothenati\",146],[86.18,\"p\",\"itreplacesthetradeexamon\",26],[88.78,\"p\",\"thebulletinisbluntaboutt\",137],[97.7,\"p\",\"nobodygetslicensedonthis\",33],[100.14,\"p\",\"infloridathatstateproces\",171],[110.82,\"p\",\"thesameholdsfornasclasth\",152],[121.1,\"p\",\"nasclasownlistofparticip\",173],[135.66,\"p\",\"thatcountisunchangedsinc\",142],[145.26,\"p\",\"anasclapassdoesnotreplac\",105],[152.42,\"p\",\"floridastermsarenarrower\",54],[156.9,\"p\",\"nasclasentryfortheflorid\",234],[172.74,\"p\",\"whenwereadthefloridaendo\",180],[187.26,\"p\",\"theformisalsowrittenforp\",154],[197.68,\"h\",\"howmanyquestionshowlonga\",41],[201.52,\"p\",\"thepublishedcontentoutli\",103],[213.04,\"p\",\"thatis704percentsoyoucan\",51],[218.16,\"p\",\"italsostatesincapitalsth\",50],[222.28,\"p\",\"thereisawrinkleinthetimi\",60],[226.0,\"p\",\"thebulletinsaysuptotenun\",142],[235.44,\"p\",\"youcannottellwhichtheyar\",25],[237.12,\"p\",\"youpayfortheminminutesan\",39],[239.92,\"p\",\"theonepieceofgoodnewsisi\",125],[252.14,\"h\",\"whatisactuallyonitsectio\",34],[254.34,\"p\",\"thisisthetablenobodypubl\",29],[255.98,\"p\",\"theitemcountsbelowarethe\",97],[264.34,\"t\",\"procurementandcontractin\",62],[271.14,\"t\",\"generalrequirements\",44],[277.38,\"t\",\"siteconstruction\",41],[284.14,\"t\",\"concrete\",31],[289.78,\"t\",\"metals\",29],[295.22,\"t\",\"mechanicalandplumbingsys\",51],[302.26,\"t\",\"wood\",27],[307.42,\"t\",\"thermalandmoistureprotec\",51],[313.06,\"t\",\"finishes\",31],[317.7,\"t\",\"masonry\",30],[323.02,\"t\",\"doorswindowsandglazing\",45],[328.82,\"t\",\"electricalsystems\",40],[334.7,\"t\",\"total\",31],[339.94,\"p\",\"readthetoptworowsagain\",22],[341.5,\"p\",\"procurementandcontractin\",126],[352.62,\"p\",\"concretemasonrymetalswoo\",66],[360.82,\"p\",\"abuilderwiththirtyyearso\",127],[369.54,\"p\",\"electricalsystemsisthree\",38],[373.98,\"p\",\"ifyouarebudgetingstudyti\",105],[383.36,\"h\",\"howmuchtimedoyoureallyge\",36],[385.8,\"p\",\"workitthroughwiththepubl\",65],[389.52,\"p\",\"330minutesdividedby115sc\",60],[396.92,\"p\",\"addthemaximumtenexperime\",103],[406.08,\"p\",\"take15minutesoffthefront\",84],[411.8,\"p\",\"miss34andyoustillpasssor\",90],[419.16,\"p\",\"thatlastlineistheusefulo\",26],[420.68,\"p\",\"thisisnotanexamyouwinbya\",42],[423.24,\"p\",\"itisanexamyouwinbynotspe\",77],[427.96,\"p\",\"thesamearithmeticdrivest\",80],[433.86,\"h\",\"whatcanyoucarryinandwhat\",42],[437.26,\"p\",\"thebulletinlists24approv\",43],[441.18,\"p\",\"thatisthedefiningfeature\",252],[461.22,\"p\",\"thebooksarenotsuppliedat\",37],[463.46,\"p\",\"youbringthemyoucarrythem\",63],[467.46,\"p\",\"themarkingrulesarestrict\",35],[469.38,\"p\",\"referencesmaybehighlight\",46],[473.38,\"p\",\"theymustbeotherwiseunmar\",76],[479.14,\"p\",\"tabsareallowedonlyifthey\",36],[481.1,\"p\",\"postitnotesarenamedinthe\",143],[490.58,\"p\",\"asilentnonprintingnonpro\",54],[495.1,\"p\",\"thefloridarulesonmarking\",158],[505.38,\"p\",\"onemoretrapthatcostspeop\",35],[508.62,\"p\",\"thebulletinsaysyoumayans\",133],[517.1,\"p\",\"thatisthesameeditiontrap\",112],[525.08,\"h\",\"whatdoesitcostandhowlong\",43],[528.96,\"t\",\"applicationfee\",57],[537.52,\"t\",\"processingtime\",79],[545.12,\"t\",\"approvalvalidity\",82],[552.36,\"t\",\"attemptsinthatyear\",59],[558.68,\"t\",\"statetranscript\",64],[568.08,\"p\",\"theapplicationpageiswher\",91],[573.4,\"p\",\"theexaminationfeeitselfi\",100],[582.12,\"p\",\"prepproviderpagesquote10\",168],[599.44,\"p\",\"whatthejuly2026psibullet\",64],[604.68,\"p\",\"theexamfeeisvalidforoney\",44],[608.72,\"p\",\"youcancancelandrebookwit\",129],[618.68,\"p\",\"avoicemailoranemaildoesn\",46],[622.68,\"p\",\"arrivinglateorwithoutacu\",87],[629.32,\"p\",\"theoneyearclockistheitem\",45],[632.84,\"p\",\"threeattemptssoundsgener\",155],[643.84,\"p\",\"floridasowncertification\",186],[660.02,\"h\",\"whathappensifyoufailallt\",36],[663.02,\"p\",\"youwaitouttheyear\",17],[664.14,\"p\",\"nasclasapplicationpagesa\",208],[679.54,\"p\",\"thepsibulletinputsitthes\",95],[685.14,\"p\",\"thereisnofourthattemptfo\",56],[689.26,\"p\",\"runthedates\",11],[690.42,\"p\",\"approvedon1februaryyousi\",57],[695.46,\"p\",\"theearliestyoucanbeappro\",145],[707.34,\"p\",\"thatisroughlysevenmonths\",45],[710.22,\"p\",\"itisthebestargumentthere\",153],[721.08,\"h\",\"whatdopeoplewhosatitactu\",34],[723.28,\"p\",\"wereadtworgeneralcontrac\",277],[749.6,\"p\",\"fiveaccountsfollow\",18],[751.2,\"p\",\"theyarewhatcandidatesrep\",113],[758.84,\"p\",\"december2025rgeneralcont\",219],[776.64,\"p\",\"theystudiedforthreetofou\",131],[786.72,\"p\",\"severalcommentersquestio\",142],[796.44,\"p\",\"thesamethreaddecember202\",184],[809.8,\"p\",\"june2026rgeneralcontract\",136],[822.84,\"p\",\"onthedaytheyspentabout30\",226],[837.76,\"p\",\"theyalsowarnedagainstpsi\",135],[847.24,\"p\",\"march2026rgeneralcontrac\",203],[861.24,\"p\",\"march2024rconstructionar\",185],[878.28,\"p\",\"wheretheaccountsagreewit\",155],[888.64,\"p\",\"twoofthefivefailedbyamar\",119],[897.28,\"p\",\"wheretheyaddsomethingthe\",55],[901.52,\"p\",\"thecontentoutlinehasnoma\",166],[913.32,\"p\",\"budgetpracticetimeforest\",85],[919.7,\"h\",\"whatshouldthischangeabou\",38],[921.74,\"p\",\"fourthingsfollowdirectly\",85],[928.18,\"p\",\"weightyourpracticetothec\",42],[930.58,\"p\",\"56of115itemssitinprocure\",76],[937.62,\"p\",\"ifhalfyourrevisionisnott\",59],[940.98,\"p\",\"buildaonepageindexofwhic\",75],[948.06,\"p\",\"with24titlesknowingwhere\",64],[953.34,\"p\",\"tabpermanentlyinweekonea\",127],[962.42,\"p\",\"practiseabandoningquesti\",27],[964.22,\"p\",\"missing34isapass\",16],[965.98,\"p\",\"spendingeightminutesonon\",72],[970.94,\"p\",\"confirmwithyourownstatea\",41],[974.06,\"p\",\"nasclasaysitplainlyandac\",70],[979.94,\"p\",\"ifyouarestilldecidingwhe\",171],[990.78,\"p\",\"ifyourworknevercrossesas\",105]];\n(function(){\n  function init(){\n  var root = document.querySelector('.msq-audio'); if (!root) { return; }\n  var audio = root.querySelector('audio'), items = Array.prototype.slice.call(root.querySelectorAll('.msq-toc li'));\n  var starts = items.map(function(li){ return parseFloat(li.getAttribute('data-start')) || 0; });\n  var names = items.map(function(li){ return li.querySelector('a').textContent; });\n  var anchors = items.map(function(li){ var h = li.querySelector('a').getAttribute('href') || ''; return (h.charAt(0) === '#' && h !== '#top') ? document.getElementById(h.slice(1)) : null; });\n  var article = root.getAttribute('data-article') || location.pathname, minutes = root.getAttribute('data-minutes') || '';\n  var marks = {}, started = false, pausedAt = -1, closed = false, ended = false;\n  var RATES = [1, 1.25, 1.5], rate = 1;\n  try { var saved = parseFloat(localStorage.getItem('msq-audio-rate')); if (RATES.indexOf(saved) >= 0) { rate = saved; } } catch (e) {}\n  audio.playbackRate = rate;\n  function track(name, extra){ try { if (typeof gtag === 'function') { var p = { article: article }; for (var k in extra) { p[k] = extra[k]; } gtag('event', name, p); } } catch (e) {} }\n  function current(){ var t = audio.currentTime, idx = 0; for (var i = 0; starts.length > i; i += 1) { if (t + 0.25 >= starts[i]) { idx = i; } } return idx; }\n  function onScreen(){\n    var line = window.innerHeight \/ 3, idx = 0;\n    for (var i = 0; anchors.length > i; i += 1) { var el = anchors[i]; if (el && line >= el.getBoundingClientRect().top) { idx = i; } }\n    return idx;\n  }\n  function fmt(s){ s = Math.max(0, Math.round(s || 0)); var m = Math.floor(s \/ 60), r = s % 60; return m + ':' + (10 > r ? '0' : '') + r; }\n  function play(from, source){\n    if (from !== null) { audio.currentTime = from; }\n    var p = audio.play(); if (p && p.catch) { p.catch(function(){}); }\n    track(from === null ? 'audio_resume' : 'audio_chapter', { chapter: names[current()], start: Math.round(audio.currentTime), source: source });\n  }\n  var hbtns = anchors.map(function(el, i){\n    if (!el) { return null; }\n    var b = document.createElement('button'); b.type = 'button'; b.className = 'msq-hplay'; b.setAttribute('aria-label', 'Play this section: ' + names[i]);\n    b.addEventListener('click', function(){\n      if (!audio.paused && current() === i) { audio.pause(); track('audio_pause', { source: 'heading' }); return; }\n      play(starts[i], 'heading');\n    });\n    el.appendChild(b); return b;\n  });\n  var bar = document.createElement('div'); bar.className = 'msq-bar msq-bar-pill is-hidden'; bar.setAttribute('role', 'region'); bar.setAttribute('aria-label', 'Audio player');\n  var playBtn = document.createElement('button'); playBtn.type = 'button'; playBtn.className = 'msq-bar-play';\n  var icon = document.createElement('span'); icon.className = 'msq-bar-icon'; icon.setAttribute('aria-hidden', 'true');\n  var label = document.createElement('span'); label.className = 'msq-bar-label';\n  playBtn.appendChild(icon); playBtn.appendChild(label);\n  var chap = document.createElement('span'); chap.className = 'msq-bar-chapter';\n  var clock = document.createElement('span'); clock.className = 'msq-bar-time';\n  var rateBtn = document.createElement('button'); rateBtn.type = 'button'; rateBtn.className = 'msq-bar-rate'; rateBtn.setAttribute('aria-label', 'Playback speed');\n  var closeBtn = document.createElement('button'); closeBtn.type = 'button'; closeBtn.className = 'msq-bar-close'; closeBtn.setAttribute('aria-label', 'Close the audio bar');\n  bar.appendChild(playBtn); bar.appendChild(chap); bar.appendChild(clock); bar.appendChild(rateBtn); bar.appendChild(closeBtn);\n  document.body.appendChild(bar);\n  function showRate(){ rateBtn.textContent = (rate === 1 ? '1' : String(rate)) + 'x'; }\n  showRate();\n  rateBtn.addEventListener('click', function(){\n    rate = RATES[(RATES.indexOf(rate) + 1) % RATES.length]; audio.playbackRate = rate; showRate();\n    try { localStorage.setItem('msq-audio-rate', String(rate)); } catch (e) {}\n    track('audio_rate', { rate: rate });\n  });\n  closeBtn.addEventListener('click', function(){\n    closed = true; if (!audio.paused) { audio.pause(); } paint(); track('audio_bar_close', {});\n  });\n  function mode(){\n    if (!audio.paused) { return 'pause'; }\n    if (ended) { return 'again'; }\n    if (!started) { return 'listen'; }\n    return (pausedAt === onScreen()) ? 'resume' : 'section';\n  }\n  playBtn.addEventListener('click', function(){\n    var m = mode();\n    if (m === 'pause') { audio.pause(); track('audio_pause', { source: 'bar' }); return; }\n    if (m === 'again') { ended = false; play(0, 'bar'); return; }\n    if (m === 'resume') { play(null, 'bar'); return; }\n    play(starts[onScreen()], 'bar');\n  });\n  function paint(){\n    var idx = current(), playing = !audio.paused, m = mode();\n    items.forEach(function(li, i){\n      var on = (i === idx) && playing, b = li.querySelector('.msq-toc-play'), a = li.querySelector('a');\n      li.classList.toggle('is-active', on); b.classList.toggle('is-playing', on);\n      b.textContent = on ? '\u2016' : '\u25b6\ufe0e';\n      b.setAttribute('aria-label', (on ? 'Pause: ' : 'Play from: ') + a.textContent);\n    });\n    hbtns.forEach(function(b, i){ if (b) { var on = (i === idx) && playing; b.classList.toggle('is-playing', on); b.setAttribute('aria-label', (on ? 'Pause this section: ' : 'Play this section: ') + names[i]); } });\n    playBtn.classList.toggle('is-playing', playing);\n    label.textContent = m === 'pause' ? 'Pause' : m === 'again' ? 'Play again' : m === 'resume' ? 'Resume' : m === 'section' ? 'Play this section' : 'Listen, ' + minutes + ' min';\n    playBtn.setAttribute('aria-label', label.textContent);\n    chap.textContent = started ? names[(playing || m === 'resume') ? idx : onScreen()] : '';\n    clock.textContent = started ? fmt(audio.currentTime) + ' \/ ' + fmt(audio.duration) : '';\n    bar.classList.toggle('msq-bar-pill', !started);\n    var show = !closed && (started || 0 > root.getBoundingClientRect().bottom);\n    bar.classList.toggle('is-hidden', !show);\n    document.body.classList.toggle('msq-has-bar', show);\n  }\n  root.addEventListener('click', function(e){\n    var b = e.target.closest ? e.target.closest('.msq-toc-play') : null; if (!b) { return; }\n    var li = b.parentNode, s = parseFloat(b.getAttribute('data-start')) || 0;\n    if (!audio.paused && current() === items.indexOf(li)) { audio.pause(); track('audio_pause', { source: 'index' }); return; }\n    play(s, 'index');\n  });\n  audio.addEventListener('play', function(){ ended = false; closed = false; if (!started) { started = true; track('audio_play', { minutes: Math.round((audio.duration || 0) \/ 60) }); } paint(); });\n  audio.addEventListener('pause', function(){ pausedAt = current(); paint(); });\n  audio.addEventListener('timeupdate', function(){\n    paint();\n    if (audio.duration > 0) {\n      var pct = Math.floor(audio.currentTime \/ audio.duration * 100);\n      [25, 50, 75].forEach(function(m){ if (pct >= m && !marks[m]) { marks[m] = true; track('audio_progress', { percent: m }); } });\n    }\n  });\n  audio.addEventListener('ended', function(){ ended = true; track('audio_complete', {}); paint(); });\n  var ticking = false;\n  function onScroll(){ if (ticking) { return; } ticking = true; setTimeout(function(){ ticking = false; paint(); }, 80); }\n  window.addEventListener('scroll', onScroll, { passive: true }); window.addEventListener('resize', onScroll);\n  paint();\n  }\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); }\n})();\n\n(function(){\n  function start(){\n    var root = document.querySelector('.msq-audio'), audio = root ? root.querySelector('audio') : null;\n    var map = (typeof MSQ_SENT !== 'undefined') ? MSQ_SENT : [];\n    if (!root || !audio || !map.length) { return; }\n    var scope = root.closest('main') || root.closest('article') || root.closest('.entry-content') || document.body;\n    var SKIP = '.msq-audio,.msq,.msq-tool,.msq-end,.msq-bar,script,style,noscript,figcaption,#rank-math-faq,.rank-math-block,nav,header,footer';\n    function norm(s){ return s.toLowerCase().replace(\/[^a-z0-9]+\/g, ''); }\n    var nodes = [], stream = '', walker = document.createTreeWalker(scope, NodeFilter.SHOW_TEXT, null), n;\n    while ((n = walker.nextNode())) {\n      var el = n.parentElement; if (!el || el.closest(SKIP)) { continue; }\n      var raw = n.nodeValue, keep = [], norms = '';\n      for (var i = 0; raw.length > i; i += 1) { var c = raw.charAt(i).toLowerCase(); if (\/[a-z0-9]\/.test(c)) { keep.push(i); norms += c; } }\n      if (!norms) { continue; }\n      nodes.push({ node: n, a: stream.length, b: stream.length + norms.length, keep: keep });\n      stream += norms;\n    }\n    var segs = [], cursor = 0, lastRow = null;\n    map.forEach(function(m, idx){\n      var kind = m[1], f = m[2], len = m[3];\n      if (kind === 't') {\n        var rows = scope.querySelectorAll('tr'), after = !lastRow;\n        for (var r = 0; rows.length > r; r += 1) {\n          var tr = rows[r];\n          if (!after) { if (tr === lastRow) { after = true; } continue; }\n          var cell = tr.querySelector('td,th');\n          if (cell && norm(cell.textContent).indexOf(f) === 0) { tr.setAttribute('data-i', idx); lastRow = tr; break; }\n        }\n        return;\n      }\n      var p = stream.indexOf(f, cursor); if (0 > p) { return; }\n      segs.push({ i: idx, a: p, b: Math.min(p + len, stream.length) }); cursor = p + len;\n    });\n    var si = 0;\n    nodes.forEach(function(nd){\n      var frag = document.createDocumentFragment(), raw = nd.node.nodeValue, rawPos = 0, any = false;\n      for (var k = si; segs.length > k; k += 1) {\n        var sg = segs[k]; if (sg.a >= nd.b) { break; } if (nd.a >= sg.b) { continue; }\n        var s = Math.max(sg.a, nd.a), e = Math.min(sg.b, nd.b);\n        var rs = nd.keep[s - nd.a], re2 = nd.keep[e - nd.a - 1] + 1;\n        if (rs > rawPos) { frag.appendChild(document.createTextNode(raw.slice(rawPos, rs))); }\n        var span = document.createElement('span'); span.className = 'msq-s'; span.setAttribute('data-i', sg.i); span.textContent = raw.slice(rs, re2);\n        frag.appendChild(span); rawPos = re2; any = true;\n        if (sg.b > nd.b) { break; }\n      }\n      while (segs.length > si && nd.b >= segs[si].b) { si += 1; }\n      if (!any) { return; }\n      if (raw.length > rawPos) { frag.appendChild(document.createTextNode(raw.slice(rawPos))); }\n      nd.node.parentNode.replaceChild(frag, nd.node);\n    });\n    var starts = map.map(function(m){ return m[0]; }), curIdx = -1, lastUser = 0, timer = null, autoUntil = 0, dragging = false;\n    function idxAt(t){ var lo = 0, hi = starts.length; while (hi > lo + 1) { var mid = (lo + hi) >> 1; if (t + 0.15 >= starts[mid]) { lo = mid; } else { hi = mid; } } return (t + 0.15 >= starts[0]) ? lo : -1; }\n    function setNow(i){\n      if (i === curIdx) { return; }\n      Array.prototype.forEach.call(scope.querySelectorAll('.msq-now'), function(el){ el.classList.remove('msq-now'); });\n      curIdx = i; if (0 > i) { return; }\n      var els = scope.querySelectorAll('[data-i=\"' + i + '\"]'); if (!els.length) { return; }\n      Array.prototype.forEach.call(els, function(el){ el.classList.add('msq-now'); });\n      var r = els[0].getBoundingClientRect(), now = Date.now();\n      if (!dragging && now > lastUser + 2500 && (80 > r.top || r.bottom > window.innerHeight - 140)) {\n        var reduce = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n        autoUntil = now + (reduce ? 400 : 1600);\n        els[0].scrollIntoView({ block: 'center', behavior: reduce ? 'auto' : 'smooth' });\n      }\n    }\n    function tick(){ if (!audio.paused) { setNow(idxAt(audio.currentTime)); } }\n    function userScrolled(){ lastUser = Date.now(); }\n    ['wheel', 'touchmove', 'keydown'].forEach(function(ev){ window.addEventListener(ev, userScrolled, { passive: true }); });\n    window.addEventListener('scroll', function(){ if (Date.now() > autoUntil) { userScrolled(); } }, { passive: true });\n    window.addEventListener('mousedown', function(e){ if (e.clientX >= document.documentElement.clientWidth) { dragging = true; userScrolled(); } }, { passive: true });\n    window.addEventListener('mouseup', function(){ if (dragging) { dragging = false; userScrolled(); } }, { passive: true });\n    audio.addEventListener('play', function(){ if (timer) { clearInterval(timer); } timer = setInterval(tick, 150); tick(); });\n    audio.addEventListener('pause', function(){ if (timer) { clearInterval(timer); timer = null; } });\n    scope.addEventListener('click', function(e){\n      if (e.target.closest('a, button, input, select, textarea, label, summary, .msq, .msq-tool, .msq-end, .msq-audio, .msq-bar')) { return; }\n      var sel = window.getSelection ? String(window.getSelection()) : '';\n      if (sel && sel.trim()) { return; }\n      var el = e.target.closest('[data-i]'); if (!el) { return; }\n      var i = parseInt(el.getAttribute('data-i'), 10); if (isNaN(i)) { return; }\n      if (!audio.paused && i === curIdx) { return; }\n      lastUser = Date.now();\n      audio.currentTime = starts[i];\n      var p = audio.play(); if (p && p.catch) { p.catch(function(){}); }\n      try { if (typeof gtag === 'function') { gtag('event', 'audio_chapter', { article: location.pathname, source: 'sentence', start: Math.round(starts[i]) }); } } catch (err) {}\n    });\n    audio.addEventListener('seeked', tick);\n    audio.addEventListener('ended', function(){ setNow(-1); });\n  }\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', start); } else { start(); }\n})();<\/script>\n<\/div>\n\n\n\n<p class=\"msq-hook wp-block-paragraph\">On this page: what the exam replaces and what it does not, the numbers that set the pass line, the content outline as printed with the half that is not trade work, the per question arithmetic, the marking rules that stop people at the door, and what it costs to hold an approval open.<\/p>\n\n\n\n<div class=\"msq\" id=\"ms-quiz\" data-slug=\"nascla-accredited-examination-commercial-general-building-contractor\" data-category=\"Florida contractor licensing\" data-list=\"1\">\n<style>.msq,.msq-hook,.msq-box,.msq-end,.msq-tool{--msq-accent:#24405E;--msq-accent-text:#FFFFFF;--msq-line:#D9D3C7;--msq-warn:#C4540E;--msq-muted:#4C5561;--msq-tint:#F3F1EC;--msq-base:#FFFFFF}\n.msq{margin:1.25em 0 1.75em}\n.msq-hook{border-left:3px solid var(--msq-accent);padding:6px 14px;color:var(--msq-muted);font-size:.97em}\n.msq-box{background:var(--msq-tint);border:1px solid var(--msq-line);border-radius:12px;padding:0}\n.msq-box>summary{cursor:pointer;list-style:none;padding:14px 18px;font-weight:700;color:var(--msq-accent)}\n.msq-box>summary::-webkit-details-marker{display:none}\n.msq-box>summary::before{content:\"+\";display:inline-block;width:1.1em;font-weight:800}\n.msq-box[open]>summary::before{content:\"\\00d7\"}\n.msq-body{padding:2px 18px 18px}\n.msq-intro{margin:0 0 12px;font-size:.95em;color:var(--msq-muted)}\n.msq-list{margin:0;padding:0;list-style:none}\n.msq-q{margin:0 0 18px;padding:0}\n.msq-question{font-weight:700;margin:0 0 8px}\n.msq-options{display:flex;flex-direction:column;gap:8px}\n.msq-opt{text-align:left;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:8px;padding:10px 12px;font:inherit;font-size:.95em;color:inherit;cursor:pointer;line-height:1.35}\n.msq-opt:hover{border-color:var(--msq-accent)}\n.msq-opt[disabled]{cursor:default}\n.msq-opt.is-right{border-color:var(--msq-accent);background:var(--msq-line);font-weight:700}\n.msq-opt.is-wrong{border-color:var(--msq-warn);color:var(--msq-warn)}\n.msq-explain{margin:8px 0 0;font-size:.92em;padding:10px 12px;border-left:3px solid var(--msq-accent);background:var(--msq-base);border-radius:0 8px 8px 0}\n.msq-explain[hidden]{display:none}\n.msq-verdict{font-weight:700}\n.msq-result{margin-top:14px;padding:14px 16px;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:10px}\n.msq-result[hidden]{display:none}\n.msq-result h3{margin:0 0 6px;font-size:1.1em}\n.msq-result p{margin:0 0 8px}\n.msq-jump{margin:0 0 8px;padding-left:1.2em}\n.msq-form{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}\n.msq-form input[type=email]{flex:1 1 220px;padding:10px 12px;border:1px solid var(--msq-muted);border-radius:8px;font:inherit;background:#fff}\n.msq-btn{background:var(--msq-accent);color:var(--msq-accent-text);border:0;border-radius:8px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer}\n.msq-btn:hover{filter:brightness(.92)}\n.msq-btn[disabled]{opacity:.7;cursor:default}\n.msq-no{font-size:.9em;color:var(--msq-muted);margin-left:4px}\n.msq-privacy{margin:6px 0 0;font-size:.82em;color:var(--msq-muted);flex-basis:100%}\n.msq-hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}\n.msq-msg{margin:8px 0 0;font-size:.92em}\n.msq-end{margin:1.5em 0;padding:18px;border:1px solid var(--msq-accent);border-radius:12px;text-align:center;background:var(--msq-tint)}\n.msq-end p{margin:0 0 12px}\n.msq-end .msq-body{text-align:left;padding:16px 0 0}\n.msq-end .msq-start-test[hidden]{display:none}\n.msq-tool{margin:1.5em 0;padding:18px 20px;background:var(--msq-tint);border:1px solid var(--msq-line);border-radius:12px}\n.msq-tool h3{margin:0 0 6px;font-size:1.15em}\n.msq-tool p{margin:0 0 10px}\n.msq-tool .msq-note{font-size:.85em;color:var(--msq-muted);margin:10px 0 0}\n.msq-check label{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--msq-line);cursor:pointer;line-height:1.4}\n.msq-check label:last-of-type{border-bottom:0}\n.msq-check input{margin-top:5px;flex:0 0 auto;width:18px;height:18px;accent-color:var(--msq-accent)}\n.msq-check-count{font-weight:700;margin:10px 0 0}\n.msq-verdict-box{margin:12px 0 0;padding:10px 14px;border-radius:8px;background:var(--msq-base);border-left:3px solid var(--msq-warn)}\n.msq-verdict-box[hidden]{display:none}\n.msq-calc{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}\n.msq-calc label{display:flex;flex-direction:column;gap:4px;font-size:.92em}\n.msq-calc input,.msq-calc select{padding:8px 10px;border:1px solid var(--msq-muted);border-radius:8px;font:inherit;background:#fff}\n.msq-calc-out{grid-column:1 \/ -1;margin-top:6px;padding:12px 14px;background:var(--msq-base);border-radius:8px;border:1px solid var(--msq-line)}\n.msq-calc-out strong{font-size:1.15em}\n.msq-choose label{display:block;padding:9px 12px;margin:0 0 8px;background:var(--msq-base);border:1px solid var(--msq-line);border-radius:8px;cursor:pointer}\n.msq-choose input{margin-right:8px;accent-color:var(--msq-accent)}\n.msq-choice-result{margin-top:10px;padding:12px 14px;background:var(--msq-base);border-left:3px solid var(--msq-accent);border-radius:0 8px 8px 0}\n.msq-choice-result[hidden]{display:none}\n@media (max-width:600px){.msq-calc{grid-template-columns:1fr}}\nh2.wp-block-heading[id]{scroll-margin-top:24px}<\/style>\n<noscript><style>.msq-explain{display:block !important}<\/style><\/noscript>\n<details class=\"msq-box\">\n<summary>Think you already know this? Five questions, one minute.<\/summary>\n<div class=\"msq-body\">\n<p class=\"msq-intro\">Every answer is on this page. Answer from what you know now; the page fills in the rest.<\/p>\n<ol class=\"msq-list\">\n<li class=\"msq-q\" data-q=\"1\" data-answer=\"b\" data-title=\"What is this exam, and who sits it?\" data-section=\"#what-is-this-exam-and-who-sits-it\">\n<p class=\"msq-question\">1. What does a NASCLA pass replace?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 1 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Every exam a state requires<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">The trade exam only: you still follow each state&#8217;s application process and sit a business and law exam, and Florida&#8217;s Business and Finance exam still applies<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">The licence itself<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span><a href=\"https:\/\/www.nascla.org\/nascla-commercial-exam\" target=\"_blank\" rel=\"noopener\">The NASCLA programme<\/a> stores your score in the National Examination Database and you send transcripts to participating state agencies. Nobody gets licensed on this exam alone. <a class=\"msq-section\" href=\"#what-is-this-exam-and-who-sits-it\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"2\" data-answer=\"a\" data-title=\"How many questions, how long, and what score passes?\" data-section=\"#how-many-questions-how-long-and-what-score-passes\">\n<p class=\"msq-question\">2. How many questions, how long, and what passes?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 2 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">115 questions, 330 minutes, 81 correct, so you can miss 34<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">50 questions in an hour<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">200 questions and a perfect score<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span><a href=\"https:\/\/proctor2.psionline.com\/media\/programs\/AZ%20CO\/AZ%20NASCLAs.pdf\" target=\"_blank\" rel=\"noopener\">The content outline dated 23 January 2026<\/a> also says up to ten unscored experimental questions may be added, and that they count against your examination time. You pay for them in minutes and get nothing back. <a class=\"msq-section\" href=\"#how-many-questions-how-long-and-what-score-passes\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"3\" data-answer=\"a\" data-title=\"What is actually on it, section by section?\" data-section=\"#what-is-actually-on-it-section-by-section\">\n<p class=\"msq-question\">3. How much of the paper sits in Procurement and Contracting Requirements plus General Requirements?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 3 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">56 of 115 items, just under half, and neither is trade knowledge<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">3 items<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">All of it<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>Concrete, masonry, metals, wood, finishes, doors and glazing together are 30 items, and Electrical Systems is three. A builder who studies the way the job feels, heavy on structure and light on contracts, is preparing for the wrong exam. <a class=\"msq-section\" href=\"#what-is-actually-on-it-section-by-section\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"4\" data-answer=\"b\" data-title=\"What can you carry in, and what can you do to the books?\" data-section=\"#what-can-you-carry-in-and-what-can-you-do-to-the-books\">\n<p class=\"msq-question\">4. What does the bulletin say about Post-It notes?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 4 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">Encouraged<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Not allowed: they come off before the exam will start, while highlighting, underlining, indexing and permanent tabs are allowed<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">Allowed in one colour<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span>References must be otherwise unmarked, with nothing written in and no loose or attached papers. For code books, questions are based only on the edition listed, which is the same edition trap that catches Florida candidates. <a class=\"msq-section\" href=\"#what-can-you-carry-in-and-what-can-you-do-to-the-books\">Read the section<\/a><\/p>\n<\/li>\n<li class=\"msq-q\" data-q=\"5\" data-answer=\"a\" data-title=\"What does it cost, and how long is an approval good for?\" data-section=\"#what-does-it-cost-and-how-long-is-an-approval-good-for\">\n<p class=\"msq-question\">5. How long is a NASCLA approval good for, and how many attempts does it allow?<\/p>\n<div class=\"msq-options\" role=\"group\" aria-label=\"Question 5 options\"><button type=\"button\" class=\"msq-opt\" data-opt=\"a\">One year from the approval date, with up to three attempts inside it<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"b\">Ten years, unlimited attempts<\/button><button type=\"button\" class=\"msq-opt\" data-opt=\"c\">One attempt, ever<\/button><\/div>\n<p class=\"msq-explain\" hidden><span class=\"msq-verdict\"><\/span><a href=\"https:\/\/www.nascla.org\/apply-nascla-exams\" target=\"_blank\" rel=\"noopener\">The application page<\/a> lists a $65 application fee, typically seven business days of processing and $45 per state transcript, valid for two years. A failed sitting plus a rebooking plus a fresh run at 24 books eats months of that year. <a class=\"msq-section\" href=\"#what-does-it-cost-and-how-long-is-an-approval-good-for\">Read the section<\/a><\/p>\n<\/li>\n<\/ol>\n<div class=\"msq-result\" hidden><\/div>\n<\/div>\n<\/details>\n<script>(function(){\n  if (window.__msqInit) { return; }\n  window.__msqInit = true;\n  var root = document.getElementById('ms-quiz');\n  if (!root) { return; }\n  var meta = { slug: root.getAttribute('data-slug'), category: root.getAttribute('data-category'),\n               list: root.getAttribute('data-list') || '1' };\n  function qs(el, s){ return el.querySelector(s); }\n  function qsa(el, s){ return Array.prototype.slice.call(el.querySelectorAll(s)); }\n  function track(name, params){\n    try { if (typeof gtag === 'function') { var p = params || {}; p.article = meta.slug; gtag('event', name, p); } } catch (e) {}\n  }\n  function jumpList(missed){\n    if (!missed.length) { return ''; }\n    return '<ul class=\"msq-jump\">' + missed.map(function(q){\n      return '<li><a href=\"' + q.getAttribute('data-section') + '\">' + q.getAttribute('data-title') + '<\/a><\/li>';\n    }).join('') + '<\/ul>';\n  }\n  function emailForm(){\n    return '<div class=\"msq-sub\"><p><strong>Get the next one.<\/strong> We publish new articles on ' + meta.category\n      + ' most weeks and recheck this page on Sundays. Email me when a new article goes up or this page changes.<\/p>'\n      + '<form class=\"msq-form\" method=\"post\" action=\"\/mail\/form.php\" novalidate>'\n      + '<input type=\"hidden\" name=\"list\" value=\"' + meta.list + '\">'\n      + '<input type=\"hidden\" name=\"name\" value=\"\">'\n      + '<label class=\"msq-hp\" aria-hidden=\"true\">Leave this empty<input type=\"text\" name=\"website\" tabindex=\"-1\" autocomplete=\"off\"><\/label>'\n      + '<input type=\"email\" name=\"email\" placeholder=\"you@example.com\" required aria-label=\"Email address\" autocomplete=\"email\">'\n      + '<button type=\"submit\" class=\"msq-btn\">Email me the updates<\/button>'\n      + '<a href=\"#\" class=\"msq-no\">No thanks<\/a>'\n      + '<p class=\"msq-privacy\">We store your email and this page\\'s topic, nothing else. Unsubscribe any time.<\/p>'\n      + '<\/form><p class=\"msq-msg\" aria-live=\"polite\"><\/p><\/div>';\n  }\n  \/* The autoresponder always answers 200 with its own page. A \".msg.err\" box means the\n     address was rejected, \"You're subscribed\" means accepted, and a redirect only happens\n     after a successful subscribe. Same reading as the landing pages on the other sites. *\/\n  function sendForm(form){\n    return fetch(form.getAttribute('action'), { method: 'POST', body: new FormData(form), credentials: 'same-origin', redirect: 'manual' })\n      .then(function(res){\n        if (res.type === 'opaqueredirect') { return { status: 'ok' }; }\n        if (res.status === 404) { return { status: 'notlive' }; }\n        if (!res.ok) { throw new Error('HTTP ' + res.status); }\n        return res.text().then(function(t){\n          var doc = new DOMParser().parseFromString(t, 'text\/html');\n          var err = doc.querySelector('.msg.err');\n          if (err) {\n            var m = err.textContent.trim();\n            if (\/something went wrong\/i.test(m)) { throw new Error(m); }\n            return { status: 'rejected', message: m };\n          }\n          if (\/you.re subscribed\/i.test(doc.body.textContent)) { return { status: 'ok' }; }\n          return { status: 'unknown' };\n        });\n      });\n  }\n  function wireForm(sub){\n    var form = qs(sub, '.msq-form'), msg = qs(sub, '.msq-msg');\n    qs(form, '.msq-no').addEventListener('click', function(e){\n      e.preventDefault();\n      sub.innerHTML = '<p class=\"msq-msg\">No problem. The Sunday refresh keeps this page current either way.<\/p>';\n      track('quiz_email', { result: 'declined' });\n    });\n    form.addEventListener('submit', function(e){\n      e.preventDefault();\n      var input = qs(form, 'input[name=email]'), btn = qs(form, '.msq-btn');\n      var email = input.value.trim(); input.value = email;\n      if (!\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email)) { msg.textContent = 'That email does not look right.'; return; }\n      btn.disabled = true; btn.textContent = 'Sending';\n      function reset(){ btn.disabled = false; btn.textContent = 'Email me the updates'; }\n      sendForm(form).then(function(r){\n        if (r.status === 'ok' || r.status === 'unknown') {\n          sub.innerHTML = '<p class=\"msq-msg\"><strong>Done.<\/strong> We will email you when the next article on ' + meta.category\n            + ' goes up and when this page changes. If a confirmation email arrives, click it.<\/p>';\n          track('quiz_email', { result: r.status });\n          if (r.status === 'ok') { track('generate_lead', { method: 'quiz' }); }\n        } else if (r.status === 'notlive') {\n          msg.textContent = 'Sign up is not switched on yet for this site. Nothing was stored.'; reset();\n          track('quiz_email', { result: 'notlive' });\n        } else {\n          msg.textContent = r.message || 'Please check the email address and try again.'; reset();\n          track('quiz_email', { result: 'rejected' });\n        }\n      }).catch(function(){\n        msg.textContent = 'Could not reach the sign up service just now. Nothing was stored.'; reset();\n        track('quiz_email', { result: 'error' });\n      });\n    });\n  }\n  function finish(container, mode, score, total, missed){\n    var result = qs(container, '.msq-result');\n    track('quiz_complete', { mode: mode, score: score, total: total });\n    var h;\n    if (mode === 'pre') {\n      h = '<h3>You knew ' + score + ' of ' + total + ' before reading.<\/h3>';\n      h += (score === total) ? '<p>All of them. Read on anyway; the sections below carry the detail behind each answer.<\/p>'\n                             : '<p>The rest is below. Jump straight to what you missed:<\/p>' + jumpList(missed);\n      try { sessionStorage.setItem('msq-pre-' + meta.slug, String(score)); } catch (e) {}\n    } else {\n      var pre = null;\n      try { pre = sessionStorage.getItem('msq-pre-' + meta.slug); } catch (e) {}\n      h = '<h3>You got ' + score + ' of ' + total + '.<\/h3>';\n      if (pre !== null) { h += '<p>Before reading you had ' + pre + ' of ' + total + '.<\/p>'; }\n      if (missed.length) { h += '<p>Worth a second look:<\/p>' + jumpList(missed); }\n      h += emailForm();\n    }\n    result.innerHTML = h; result.hidden = false;\n    if (mode !== 'pre') { wireForm(qs(result, '.msq-sub')); }\n    result.scrollIntoView({ behavior: 'smooth', block: 'nearest' });\n  }\n  function setup(container, mode){\n    var qEls = qsa(container, '.msq-q'), answered = 0, score = 0, missed = [];\n    qEls.forEach(function(q){\n      var answer = q.getAttribute('data-answer'), opts = qsa(q, '.msq-opt'), explain = qs(q, '.msq-explain');\n      q.removeAttribute('data-done'); explain.hidden = true; qs(explain, '.msq-verdict').textContent = '';\n      opts.forEach(function(b){ b.disabled = false; b.classList.remove('is-right', 'is-wrong'); });\n      opts.forEach(function(b){\n        b.addEventListener('click', function(){\n          if (q.getAttribute('data-done')) { return; }\n          q.setAttribute('data-done', '1');\n          var ok = b.getAttribute('data-opt') === answer;\n          opts.forEach(function(o){ o.disabled = true; if (o.getAttribute('data-opt') === answer) { o.classList.add('is-right'); } });\n          if (ok) { score += 1; } else { b.classList.add('is-wrong'); missed.push(q); }\n          qs(explain, '.msq-verdict').textContent = ok ? 'Right. ' : 'Not quite. ';\n          explain.hidden = false;\n          answered += 1;\n          track('quiz_answer', { mode: mode, question: q.getAttribute('data-q'), correct: ok ? 1 : 0 });\n          if (answered === qEls.length) { finish(container, mode, score, qEls.length, missed); }\n        });\n      });\n    });\n  }\n  var box = qs(root, '.msq-box');\n  setup(root, 'pre');\n  if (box) { box.addEventListener('toggle', function(){ if (box.open) { track('quiz_open', { mode: 'pre' }); } }); }\n  \/* The end block sits far below this script, so it does not exist yet while this runs\n     during parsing. A delegated listener finds it at click time. *\/\n  document.addEventListener('click', function(e){\n    var startBtn = (e.target && e.target.closest) ? e.target.closest('.msq-start-test') : null;\n    if (!startBtn) { return; }\n    var end = startBtn.closest('.msq-end');\n    if (!end) { return; }\n    var mount = qs(end, '.msq-mount');\n    var clone = qs(root, '.msq-body').cloneNode(true);\n    var intro = qs(clone, '.msq-intro');\n    if (intro) { intro.textContent = 'The same five questions, now that you have read the page.'; }\n    var res = qs(clone, '.msq-result'); if (res) { res.hidden = true; res.innerHTML = ''; }\n    mount.innerHTML = ''; mount.appendChild(clone);\n    setup(mount, 'test');\n    startBtn.hidden = true;\n    track('quiz_open', { mode: 'test' });\n    mount.scrollIntoView({ behavior: 'smooth', block: 'start' });\n    var first = qs(mount, '.msq-opt'); if (first) { first.focus({ preventScroll: true }); }\n  });\n  \/* Shared tool behaviour: checklists remember their ticks on this device, and a chooser\n     shows the result for the option picked. Calculators carry their own small script. *\/\n  function initTools(){\n    qsa(document, '.msq-check').forEach(function(box){\n      var key = 'msq-check-' + meta.slug + '-' + (box.getAttribute('data-id') || 'x');\n      var boxes = qsa(box, 'input[type=checkbox]'), count = qs(box, '.msq-check-count');\n      var yes = qs(box, '.msq-verdict-yes'), no = qs(box, '.msq-verdict-no');\n      var saved = {};\n      try { saved = JSON.parse(localStorage.getItem(key) || '{}'); } catch (e) {}\n      boxes.forEach(function(cb, i){ if (saved[i]) { cb.checked = true; } });\n      function refresh(){\n        var n = boxes.filter(function(cb){ return cb.checked; }).length, state = {};\n        boxes.forEach(function(cb, i){ if (cb.checked) { state[i] = 1; } });\n        try { localStorage.setItem(key, JSON.stringify(state)); } catch (e) {}\n        if (count) { count.textContent = n + ' of ' + boxes.length + (box.getAttribute('data-verb') || ' done'); }\n        if (yes && no) { yes.hidden = n === 0; no.hidden = n !== 0; }\n      }\n      boxes.forEach(function(cb){ cb.addEventListener('change', function(){ refresh(); track('tool_check', { tool: box.getAttribute('data-id') }); }); });\n      refresh();\n    });\n    qsa(document, '.msq-choose').forEach(function(box){\n      var results = qsa(box, '.msq-choice-result');\n      qsa(box, 'input[type=radio]').forEach(function(r){\n        r.addEventListener('change', function(){\n          results.forEach(function(el){ el.hidden = el.getAttribute('data-for') !== r.value; });\n          track('tool_choose', { tool: box.getAttribute('data-id'), choice: r.value });\n        });\n      });\n    });\n  }\n  \/\/ read progress: how far down the article the reader has scrolled, fired once per quarter\n  (function(){\n    var art = root.closest('article') || root.parentNode, fired = {};\n    function check(){\n      var top = art.getBoundingClientRect().top + window.pageYOffset, h = art.offsetHeight || 1;\n      var seen = (window.pageYOffset + window.innerHeight - top) \/ h * 100;\n      [25, 50, 75, 100].forEach(function(m){ if (seen >= m && !fired[m]) { fired[m] = true; track('read_progress', { percent: m }); } });\n    }\n    window.addEventListener('scroll', check, { passive: true }); window.addEventListener('load', check);\n  })();\n  if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initTools); } else { initTools(); }\n})();<\/script>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">There is a reason it is hard to find a plain description of this exam. Search for it and the first result is the awarding body, and everything under that is somebody selling a course. Course sellers are not neutral about how frightening an exam sounds. So here is the exam itself, taken from the published content outline, with the numbers that actually decide how you should spend your study time.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-is-this-exam-and-who-sits-it\">What is this exam, and who sits it?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The <a href=\"https:\/\/www.nascla.org\/nascla-commercial-exam\" target=\"_blank\" rel=\"noopener\">NASCLA Accredited Examination Program<\/a> exists to stop competent commercial builders sitting nearly identical trade exams in every state they want to bid in. You pass it once. Your score goes into the National Examination Database, and from there you send transcripts to any participating state agency that accepts it in place of its own trade portion.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It replaces the trade exam only. The bulletin is blunt about this: candidates are expected to follow each state agency&#8217;s own application process, and to sit a business and law examination in addition. Nobody gets licensed on this exam alone. In Florida that state process ends in a certification, which is a different animal from a county registration, as our guide to <a href=\"https:\/\/passcontractorexam.com\/articles\/registered-vs-certified-contractor-florida\/\">registered versus certified contractor licenses in Florida<\/a> explains row by row. The same holds for NASCLA&#8217;s three electrical exams, where Florida&#8217;s rule is tighter still: <a href=\"https:\/\/passcontractorexam.com\/articles\/nascla-electrical-exam\/\">only the residential electrical exam counts toward a Florida license, and only by endorsement<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">NASCLA&#8217;s own list of <a href=\"https:\/\/www.nascla.org\/nascla-commercial-exam-participating-state-agencies\" target=\"_blank\" rel=\"noopener\">participating state agencies<\/a>, rechecked on 27 October 2026, carries 20 agencies in 17 states plus the US Virgin Islands, and the Florida Construction Industry Licensing Board is one of them. That count is unchanged since September, and <a href=\"https:\/\/passcontractorexam.com\/articles\/nascla-states-covered\/\">the full list of NASCLA states covered, with the conditions Florida and California attach<\/a> shows who else takes the transcript. A NASCLA pass does not replace <a href=\"https:\/\/passcontractorexam.com\/articles\/florida-business-and-finance-exam\/\">the Florida Business and Finance exam<\/a>, which is the part Florida builders fail most often anyway.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Florida&#8217;s terms are narrower than the word reciprocity suggests. NASCLA&#8217;s <a href=\"https:\/\/www.nascla.org\/commercial-exam-participating-state-agencies\/florida-construction-industry-licensing-board\" target=\"_blank\" rel=\"noopener\">entry for the Florida Construction Industry Licensing Board<\/a> says the board has accepted the commercial exam in lieu of the Florida trade examination since March 1, 2019, and that a Florida Business and Finance portion and a Florida Building Code portion are still required. When we read the Florida endorsement form on 22 September 2026, the NASCLA option was limited to certified general, building and residential contractors, so a roofing, pool or mechanical applicant gets nothing from it. The form is also written for people already licensed in another state, so if you have never held a licence anywhere, ask the board whether the route is open to you before you pay NASCLA a cent.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"627\" src=\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-2.jpg\" alt=\"Three people reviewing a construction contract at an office table, the largest NASCLA exam subject area\" class=\"wp-image-141\" srcset=\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-2.jpg 1200w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-2-300x157.jpg 300w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-2-1024x535.jpg 1024w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-2-768x401.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><figcaption class=\"wp-element-caption\">Procurement and contracting is the single biggest section of the paper.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-many-questions-how-long-and-what-score-passes\">How many questions, how long, and what score passes?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The <a href=\"https:\/\/proctor2.psionline.com\/media\/programs\/AZ%20CO\/AZ%20NASCLAs.pdf\" target=\"_blank\" rel=\"noopener\">published content outline<\/a>, dated 23 January 2026, gives 115 questions, a 330 minute limit and a minimum passing score of 81. That is 70.4 percent, so you can miss 34 questions and still pass. It also states, in capitals, that the examination is open book.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is a wrinkle in the timing that is worth knowing before you sit down. The bulletin says up to ten unscored experimental questions may be added, roughly ten percent of the paper, and that these questions do count against your examination time. You cannot tell which they are. You pay for them in minutes and get nothing back. The one piece of good news is in <a href=\"https:\/\/test-takers.psiexams.com\/api\/content\/bulletin\/6677\" target=\"_blank\" rel=\"noopener\">PSI&#8217;s NASCLA program bulletin dated 7 July 2026<\/a>: the on screen tutorial, up to 15 minutes, does not count as examination time.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-is-actually-on-it-section-by-section\">What is actually on it, section by section?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is the table nobody publishes. The item counts below are the content outline exactly as it is printed in the January 2026 bulletin, and they add to 115.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Subject area<\/th><th>Items<\/th><th>Share of the paper<\/th><\/tr><\/thead><tbody><tr><td>Procurement and Contracting Requirements<\/td><td>31<\/td><td>27.0%<\/td><\/tr><tr><td>General Requirements<\/td><td>25<\/td><td>21.7%<\/td><\/tr><tr><td>Site Construction<\/td><td>15<\/td><td>13.0%<\/td><\/tr><tr><td>Concrete<\/td><td>6<\/td><td>5.2%<\/td><\/tr><tr><td>Metals<\/td><td>6<\/td><td>5.2%<\/td><\/tr><tr><td>Mechanical and Plumbing Systems<\/td><td>6<\/td><td>5.2%<\/td><\/tr><tr><td>Wood<\/td><td>5<\/td><td>4.3%<\/td><\/tr><tr><td>Thermal and Moisture Protection<\/td><td>5<\/td><td>4.3%<\/td><\/tr><tr><td>Finishes<\/td><td>5<\/td><td>4.3%<\/td><\/tr><tr><td>Masonry<\/td><td>4<\/td><td>3.5%<\/td><\/tr><tr><td>Doors, Windows, and Glazing<\/td><td>4<\/td><td>3.5%<\/td><\/tr><tr><td>Electrical Systems<\/td><td>3<\/td><td>2.6%<\/td><\/tr><tr><td><strong>Total<\/strong><\/td><td><strong>115<\/strong><\/td><td><strong>100%<\/strong><\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-block-table__caption\">Content outline as published in the PSI candidate bulletin dated 23 January 2026.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Read the top two rows again. Procurement and Contracting Requirements plus General Requirements is 56 of 115 items, just under half the exam, and neither of them is trade knowledge. Concrete, masonry, metals, wood, finishes, doors and glazing together are 30 items. A builder with thirty years on commercial jobs who studies the way the job feels, heavy on structure and light on contracts, is preparing for the wrong exam.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Electrical Systems is three questions. Three. If you are budgeting study time by how much a subject scares you rather than by how many marks it carries, that is where the leak is.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1600\" height=\"900\" src=\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-exam-chart.png\" alt=\"Chart of the NASCLA commercial general building contractor exam outline: 31 procurement and contracting items, 25 general requirements, 15 site construction, 3 electrical.\" class=\"wp-image-313\" srcset=\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-exam-chart.png 1600w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-exam-chart-300x169.png 300w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-exam-chart-1024x576.png 1024w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-exam-chart-768x432.png 768w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-exam-chart-1536x864.png 1536w\" sizes=\"auto, (max-width: 1600px) 100vw, 1600px\" \/><figcaption class=\"wp-block-image__caption\">Items per subject area from the content outline dated 23 January 2026, with the smaller trade subjects grouped. The top two rows are 56 items and neither is trade knowledge.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-much-time-do-you-really-get-per-question\">How much time do you really get per question?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Work it through with the published inputs rather than the reassuring version.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>330 minutes divided by 115 scored questions is 2 minutes 52 seconds each.<\/li>\n\n\n\n<li>Add the maximum ten experimental items and you are answering 125 questions in 330 minutes, which is 2 minutes 38 seconds each.<\/li>\n\n\n\n<li>Take 15 minutes off the front to lay out your books and settle, and it drops to about 2 minutes 31 seconds.<\/li>\n\n\n\n<li>Miss 34 and you still pass, so roughly one question in four can be surrendered on time grounds without failing.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">That last line is the useful one. This is not an exam you win by answering everything. It is an exam you win by not spending nine minutes hunting one obscure lookup in the wrong book. The same arithmetic drives the Florida papers, which is why <a href=\"https:\/\/passcontractorexam.com\/articles\/florida-contractor-exam-open-book\/\">open book does not mean easy<\/a> on either.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"627\" src=\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-3.jpg\" alt=\"Crew in hard hats and high visibility vests talking on scaffolding, trade work the NASCLA exam tests lightly\" class=\"wp-image-142\" srcset=\"https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-3.jpg 1200w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-3-300x157.jpg 300w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-3-1024x535.jpg 1024w, https:\/\/passcontractorexam.com\/articles\/wp-content\/uploads\/2026\/09\/nascla-commercial-general-building-exam-3-768x401.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><figcaption class=\"wp-block-image__caption\">All the trade sections together carry fewer marks than the paperwork ones.<\/figcaption><\/figure>\n\n\n\n<div class=\"msq-tool\" id=\"ms-pace\">\n<h3>The per question arithmetic, with the published inputs<\/h3>\n<p>The defaults are the bulletin&#8217;s own numbers. Change any of them and the tool reworks the time per question and how many you can surrender.<\/p>\n<div class=\"msq-calc\">\n<label>Minutes allowed<input type=\"number\" id=\"pc-min\" value=\"330\" min=\"30\" max=\"600\"><\/label>\n<label>Scored questions<input type=\"number\" id=\"pc-q\" value=\"115\" min=\"10\" max=\"300\"><\/label>\n<label>Unscored experimental items, up to<input type=\"number\" id=\"pc-x\" value=\"10\" min=\"0\" max=\"50\"><\/label>\n<label>Minutes to lay out books and settle<input type=\"number\" id=\"pc-settle\" value=\"15\" min=\"0\" max=\"60\"><\/label>\n<label>Correct answers needed to pass<input type=\"number\" id=\"pc-pass\" value=\"81\" min=\"1\" max=\"300\"><\/label>\n<div class=\"msq-calc-out\" id=\"pc-out\"><\/div>\n<\/div>\n<p class=\"msq-note\">Arithmetic from the content outline dated 23 January 2026, not a prediction of anything. Confirm the current numbers in your own candidate bulletin.<\/p>\n<\/div>\n<script>\n(function(){\n  var m = document.getElementById('pc-min'), q = document.getElementById('pc-q'), x = document.getElementById('pc-x'), s = document.getElementById('pc-settle'), ps = document.getElementById('pc-pass'), out = document.getElementById('pc-out');\n  if (!out) { return; }\n  function mmss(sec){ var mi = Math.floor(sec \/ 60), se = Math.round(sec - mi * 60); if (se === 60) { mi++; se = 0; } return mi + ' min ' + (se > 9 ? '' : '0') + se + ' s'; }\n  function run(){\n    var mins = parseFloat(m.value) || 0, qs = parseFloat(q.value) || 0, xs = parseFloat(x.value) || 0, settle = parseFloat(s.value) || 0, pass = parseFloat(ps.value) || 0;\n    if (qs === 0 || mins === 0) { out.textContent = 'Enter the minutes and the question count.'; return; }\n    var per = mins * 60 \/ qs, perX = mins * 60 \/ (qs + xs), perS = Math.max(0, mins - settle) * 60 \/ (qs + xs), miss = Math.max(0, qs - pass);\n    var msg = '<strong>' + mmss(per) + ' per scored question<\/strong> on the headline numbers; ' + mmss(perX) + ' once ' + xs + ' experimental items are added; ' + mmss(perS) + ' after ' + settle + ' minutes laying out the books.';\n    msg += ' You can miss ' + miss + ' and still pass' + (miss > 0 ? ', so roughly one question in ' + Math.round(qs \/ miss) + ' can be surrendered on time grounds without failing.' : '.');\n    out.innerHTML = msg;\n    try { if (typeof gtag === 'function') { gtag('event', 'tool_calc', { tool: 'nascla-pace', article: 'nascla-commercial-exam' }); } } catch (e) {}\n  }\n  [m, q, x, s, ps].forEach(function(el){ el.addEventListener('input', run); el.addEventListener('change', run); });\n  run();\n})();\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-can-you-carry-in-and-what-can-you-do-to-the-books\">What can you carry in, and what can you do to the books?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The bulletin lists 24 approved titles for this exam. That is the defining feature of preparing for it, and it is a genuinely large library: the International Building Code, ACI 318, the Gypsum Construction Handbook, Modern Masonry, the NASCLA Contractors Guide to Business, Law and Project Management, and the <a href=\"https:\/\/www.osha.gov\/laws-regs\/regulations\/standardnumber\/1926\" target=\"_blank\" rel=\"noopener\">29 CFR Part 1926 construction standards<\/a> among them. The books are not supplied at the test centre. You bring them, you carry them, and you find things in them under time pressure.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The marking rules are strict and specific. References may be highlighted, underlined and indexed. They must be otherwise unmarked, meaning nothing written in, and no loose or attached papers. Tabs are allowed only if they are permanent. Post-It notes are named in the bulletin as not allowed and have to come off before the exam will start, which is a miserable thing to discover at the door with a suitcase of books.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A silent, nonprinting, non-programmable calculator is permitted. The Florida rules on marking are close but not identical, so if you are sitting both, read <a href=\"https:\/\/passcontractorexam.com\/articles\/florida-contractor-exam-tabs-highlighting-notes\/\">what Florida allows you to do to your books<\/a> separately rather than assuming one set of rules covers both.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One more trap that costs people real marks. The bulletin says you may answer from later editions of the references as they appear, except for code books, where questions are based only on the edition listed. That is the same <a href=\"https:\/\/passcontractorexam.com\/articles\/florida-contractor-exam-edition-trap\/\">edition trap that catches Florida candidates<\/a>, and it is the difference between a confident wrong answer and a right one.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-does-it-cost-and-how-long-is-an-approval-good-for\">What does it cost, and how long is an approval good for?<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Item<\/th><th>What NASCLA publishes<\/th><th>Note<\/th><\/tr><\/thead><tbody><tr><td>Application fee<\/td><td>$65<\/td><td>Paid at ned.nascla.org<\/td><\/tr><tr><td>Processing time<\/td><td>Typically 7 business days<\/td><td>Before you can schedule<\/td><\/tr><tr><td>Approval validity<\/td><td>1 year from approval date<\/td><td>Not from the date you apply<\/td><\/tr><tr><td>Attempts in that year<\/td><td>Up to 3<\/td><td>To take and pass<\/td><\/tr><tr><td>State transcript<\/td><td>$45 per state<\/td><td>Valid for two years<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-block-table__caption\">Fees and timings from the NASCLA application page, checked 7 September 2026.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The <a href=\"https:\/\/www.nascla.org\/apply-nascla-exams\" target=\"_blank\" rel=\"noopener\">application page<\/a> is where these figures live and where they will change first, so check it on the day you pay. The examination fee itself is paid to PSI when you book, and neither NASCLA&#8217;s application page nor PSI&#8217;s bulletin prints it. Prep provider pages quote $106, others quote around $130, and on 27 October 2026 we could not confirm either against a NASCLA or PSI page, so treat both as reported and believe the number on the checkout screen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What the July 2026 PSI bulletin does print is the small print that costs money. The exam fee is valid for one year from the date you pay. You can cancel and rebook without losing it only if your notice reaches PSI 2 days before the exam date, so a Monday sitting has to be cancelled by the Saturday. A voice mail or an email does not count as a cancellation. Arriving late, or without a current government issued photo ID carrying your signature, forfeits the fee.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The one year clock is the item that quietly costs money. Three attempts sounds generous until you notice they all have to happen inside twelve months of approval, and that a failed sitting plus a rebooking plus a fresh run at 24 books eats months. Florida&#8217;s own certification and registration requirements sit in <a href=\"https:\/\/flrules.org\/gateway\/ChapterHome.asp?Chapter=61G4-15\" target=\"_blank\" rel=\"noopener\">chapter 61G4-15 of the Florida Administrative Code<\/a>, and they are a separate process with separate deadlines, so do not assume one approval window covers both.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-happens-if-you-fail-all-three-attempts\">What happens if you fail all three attempts?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You wait out the year. NASCLA&#8217;s <a href=\"https:\/\/www.nascla.org\/apply-nascla-exams\" target=\"_blank\" rel=\"noopener\">application page<\/a> says that once you have used all three attempts, or your year has run out, you reapply as a re-applicant under the same NASCLA Candidate ID, and that a re-applicant cannot be approved until the one year eligibility period has ended. The PSI bulletin puts it the same way: you can reapply once your year from the application approval date has expired. There is no fourth attempt for a fee and no appeal route that buys one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Run the dates. Approved on 1 February, you sit in March, May and July and miss all three. The earliest you can be approved again is 1 February the following year, then you pay the $65 application fee again and wait up to 7 business days of processing before you can book. That is roughly seven months with your books on a shelf. It is the best argument there is for not booking a third attempt because a date happens to be free, and for booking it only when your timed practice papers are clearing 81 with time to spare.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-do-people-who-sat-it-actually-report\">What do people who sat it actually report?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We read two r\/GeneralContractor threads in full on 27 October 2026, one from December 2025 with 33 comments and one from June 2026 with six, plus nine comments returned by a Reddit search for failed NASCLA attempts, two of which we use below; the rest were older than three years, about a different exam, or about somebody other than the writer. Five accounts follow. They are what candidates report about their own sittings, not measured results, and any course a writer mentions is their choice, not ours.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.reddit.com\/r\/GeneralContractor\/comments\/1pbhyee\/my_experience_passing_the_nascla_general\/\" target=\"_blank\" rel=\"noopener\">December 2025, r\/GeneralContractor<\/a>: a candidate with no general contracting experience failed the first sitting, blaming untabbed books and time lost flipping pages, then passed after tabbing everything and first sorting each question by the book it belonged to. They studied for three to four months and counted 125 questions on the screen, which is exactly what 115 scored plus ten experimental looks like from the chair. Several commenters questioned whether the post was an advert, since the account was new, it praised a course and it offered tabbed books for sale, so weigh it with that in mind.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.reddit.com\/r\/GeneralContractor\/comments\/1pbhyee\/my_experience_passing_the_nascla_general\/\" target=\"_blank\" rel=\"noopener\">The same thread, December 2025<\/a>: one commenter cut the other way, saying they bought books already tabbed and highlighted, did not study because it was not worth it, and that the test is really a test of how well you can use an index.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.reddit.com\/r\/GeneralContractor\/comments\/1ua72m5\/my_nascla_experience\/\" target=\"_blank\" rel=\"noopener\">June 2026, r\/GeneralContractor<\/a>: a project manager from warehouse racking work studied for 11 weeks at about three hours a weekday and sat eight full practice papers. On the day they spent about 30 minutes sorting questions by book, about four hours on look ups, and met around 18 maths questions against the seven or eight their practice papers had led them to expect, guessing on about eight of the harder construction ones and passing anyway. They also warned against PSI&#8217;s paid practice exams, saying some questions came from outside the 24 references, which is their claim and not something we could check.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.reddit.com\/r\/GeneralContractor\/comments\/1s8sk7a\/nc_general_contractors_builders_test\/odj6ib0\/\" target=\"_blank\" rel=\"noopener\">March 2026, r\/GeneralContractor<\/a>: a North Carolina candidate said they failed by one question the first time because they answered from memory the questions they thought they knew, and their advice was to look up everything there is time to look up.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.reddit.com\/r\/Construction\/comments\/18fdenz\/nascla\/kwj2fh2\/\" target=\"_blank\" rel=\"noopener\">March 2024, r\/Construction<\/a>: a Raleigh candidate reported 77 correct on the first attempt and 80 on the second, one short of the 81 line, and wrote that the worst part was facing a last attempt with almost a full year&#8217;s wait behind it.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Where the accounts agree with the bulletin is the shape of the problem: an open book paper where finding the answer, not knowing it, decides the score, and where permanent tabs earn their keep. Two of the five failed by a margin of one to four questions, which is the 34 question allowance being spent on lookups that ran long or were skipped. Where they add something the bulletin cannot confirm is the maths. The content outline has no maths row because calculation questions sit inside the subject areas, so a candidate who met 18 of them was not reading a different exam, only a different draw from the same one. Budget practice time for estimating and business arithmetic even though no line of the table names it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-should-this-change-about-how-you-prepare\">What should this change about how you prepare?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Four things follow directly from the outline, and none of them are what a course landing page leads with.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Weight your practice to the contracting sections. 56 of 115 items sit in Procurement and Contracting Requirements and General Requirements. If half your revision is not there, your revision does not match the exam.<\/li>\n\n\n\n<li>Build a one page index of which book answers which kind of question, and learn that page cold. With 24 titles, knowing where to look is a bigger skill than knowing the answer.<\/li>\n\n\n\n<li>Tab permanently, in week one, and use those tabs from then on so navigation is automatic by exam day rather than something you are inventing under the clock.<\/li>\n\n\n\n<li>Practise abandoning questions. Missing 34 is a pass. Spending eight minutes on one lookup is how people who knew the material run out of time.<\/li>\n\n\n\n<li>Confirm with your own state agency before you pay. NASCLA says it plainly, and acceptance terms differ by state and by licence category.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If you are still deciding whether this exam is worth sitting at all rather than how to pass it, that is a different question, and <a href=\"https:\/\/passcontractorexam.com\/articles\/nascla-exam-prep\/\">whether a Florida contractor actually needs the NASCLA exam<\/a> answers it properly. If your work never crosses a state line, the honest answer is usually no, and your time is better spent on <a href=\"https:\/\/passcontractorexam.com\/articles\/florida-contractor-exam-format\/\">the three Florida papers<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"frequently-asked-questions\">Frequently asked questions<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-q-1\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Do I still need the Florida Business and Finance exam if I pass NASCLA?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Yes. The NASCLA exam substitutes for a state trade examination, not for business and law. The bulletin says candidates are expected to sit a business and law examination in addition and to follow each state agency&#8217;s own application process. Confirm the exact requirement with the Florida board before you pay for anything.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-2\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">How many times can I sit the NASCLA exam?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>NASCLA publishes up to three attempts within one year of the date your application is approved. The clock runs from approval, not from the date you applied or first sat, so a long gap between attempts can quietly use up the window.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-3\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Can I bring my own notes or photocopies into the exam?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>No. The bulletin allows highlighting, underlining and indexing of the approved references, but they must be otherwise unmarked, with nothing written in and no loose or attached papers. Temporary tabs such as Post-It notes are specifically not allowed and must be removed before the exam begins.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-4\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Do the reference books have to be the exact editions listed?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>For code books, yes. Questions are written to the listed edition only. For the other titles you may answer from a later edition as it becomes available. Working from a newer code book is one of the more expensive mistakes available, because it gives confident answers that are wrong for the exam.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-5\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Is a calculator allowed?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>A silent, nonprinting, non-programmable calculator is permitted in the examination centre. Anything that prints, makes noise or can be programmed is not, and phones are not a substitute.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-q-6\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">How long does a NASCLA pass stay useful?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>The pass itself is stored in the National Examination Database. What expires is the transcript you buy from it, which NASCLA publishes at $45 per state and valid for two years. States set their own rules on how recent a score they will accept, so check with the agency you are applying to.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<div class=\"msq-end\" id=\"ms-quiz-end\">\n<p><strong>Finished the page?<\/strong> The same five questions from the top, to see what stuck.<\/p>\n<button type=\"button\" class=\"msq-btn msq-start-test\">Test Your Understanding of This Article<\/button>\n<div class=\"msq-mount\"><\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Rules and fees change without notice. The fees, the agency count, the attempt rules and the PSI booking terms on this page were last rechecked against NASCLA&#8217;s own pages and PSI&#8217;s July 2026 bulletin on 27 October 2026; the content outline is the January 2026 edition. If you hit something different, tell us in the comments.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The published content outline for the NASCLA commercial general building contractor exam, section by section, with the item counts that decide how you should study.<\/p>\n","protected":false},"author":1,"featured_media":140,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","rank_math_title":"NASCLA Commercial Building Contractor Exam: What Is on It","rank_math_description":"The NASCLA accredited examination for commercial general building contractors is 115 questions in 330 minutes, open book, and 81 correct to pass.","rank_math_focus_keyword":"nascla accredited examination for commercial general building contractors","rank_math_canonical_url":"","rank_math_breadcrumb_title":"","rank_math_facebook_title":"","rank_math_facebook_description":"","rank_math_facebook_image":"","rank_math_twitter_title":"","rank_math_twitter_description":"","rank_math_twitter_image":"","rank_math_pillar_content":"","rank_math_robots":[],"rank_math_advanced_robots":[]},"categories":[3],"tags":[],"class_list":["post-143","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-exam-prep"],"_links":{"self":[{"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/posts\/143","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/comments?post=143"}],"version-history":[{"count":13,"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/posts\/143\/revisions"}],"predecessor-version":[{"id":760,"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/posts\/143\/revisions\/760"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/media\/140"}],"wp:attachment":[{"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/media?parent=143"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/categories?post=143"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/passcontractorexam.com\/articles\/wp-json\/wp\/v2\/tags?post=143"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}