{"id":16509,"date":"2025-05-08T19:52:00","date_gmt":"2025-05-08T19:52:00","guid":{"rendered":"https:\/\/wifamily.news\/?p=16509"},"modified":"2025-05-08T20:01:07","modified_gmt":"2025-05-08T20:01:07","slug":"local-government-regulations-push-price-of-a-wisconsin-roof-skyward","status":"publish","type":"post","link":"https:\/\/wifamily.news\/?p=16509","title":{"rendered":"Local government regulations push price of a Wisconsin roof skyward"},"content":{"rendered":"<p>This post originally appeared at <a href=\"https:\/\/www.badgerinstitute.org\/local-government-regulations-push-price-of-a-wisconsin-roof-skyward\/\">https:\/\/www.badgerinstitute.org\/local-government-regulations-push-price-of-a-wisconsin-roof-skyward\/<\/a><\/p>\n<h4 class=\"wp-block-heading\"><em><strong>Builders, economists cite rules, especially those on lot size, for affordability crisis, but point to solutions<\/strong><\/em><\/h4>\n<div class=\"wp-block-image\">\n<figure class=\"alignright size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1685\" height=\"1270\" src=\"https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/uploads\/2025\/05\/local-regulations-increase-wisconsin-housing-costs-web.jpg?strip=all&amp;lossy=1&amp;ssl=1\" alt=\"Housing development affected by local government regulations in Beaver Dam, WI.\" class=\"wp-image-55682\" style=\"width:359px;height:auto\" \/><\/figure>\n<\/div>\n<p>Regulations imposed by local governments are being fingered as a costly \u2014 and reversible \u2014 contributor to $400,000 Wisconsin starter homes that are increasingly unattainable.<\/p>\n<p>As one common council member in Middleton, Lisa Janairo, put it, \u201cA lot of us would not be able to afford the houses we\u2019re living in now if we were buying now.\u201d<\/p>\n<h4 class=\"wp-block-heading\">Price tag<\/h4>\n<p>How big a factor are regulatory costs?\u00a0\u00a0<\/p>\n<p>Often cited is <a href=\"https:\/\/www.nahb.org\/-\/media\/NAHB\/news-and-economics\/docs\/housing-economics-plus\/special-studies\/2021\/special-study-government-regulation-in-the-price-of-a-new-home-may-2021.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">a groundbreaking 2021 study<\/a> by the National Association of Home Builders based on surveys of land developers and residential builders: It pegged the direct costs of regulation as constituting 23.8 percent, on average, of the cost of a new single-family home.<\/p>\n<p>On a $400,000 home, the cost of regulation would be $95,000.<\/p>\n<p>The study split up the regulatory cost by different types of regulation: Fees and studies during land development add 3 percent, changes to building codes in the past 10 years add 6 percent, lot standards that go beyond the ordinary, such as large setbacks, add 2.3 percent.<\/p>\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:44%\">\n<p>The builders association vice president who did the 2021 study, Paul Emrath, said the point wasn\u2019t to fault all regulations or codes, some of them necessary to good construction. Rather, said the University of Wisconsin-Milwaukee-trained economist, \u201cI was hoping it would make people a little more cautious before adding more.\u201d\u00a0\u00a0<\/p>\n<p>This was the third iteration of his study, Emrath said, and it came after the first two prompted a federal agency looking for more details to search the literature for comparable studies. It found none.<\/p>\n<\/div>\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:56%\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/uploads\/2025\/05\/wisconsin-home-regulatory-costs1.jpg?strip=all&amp;lossy=1&amp;w=2560&amp;ssl=1\"><img loading=\"lazy\" decoding=\"async\" width=\"795\" height=\"720\" src=\"https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/uploads\/2025\/05\/wisconsin-home-regulatory-costs1.jpg?strip=all&amp;lossy=1&amp;ssl=1\" alt=\"\" class=\"wp-image-55686\" \/><\/a><figcaption class=\"wp-element-caption\">Click to enlarge<\/figcaption><\/figure>\n<\/div>\n<\/div>\n<p>\u201cThere are some people on these zoning boards and city councils who are concerned about housing costs and want to do something about it,\u201d he said. \u201cThis should give them some cover.\u201d<\/p>\n<p>Indeed, on an NAHB podcast last December, Washington County Executive Josh Schoemann said he thought the regulatory cost per house was \u201csomewhere between $60- and $90,000\u201d in Washington County. Schoemann, who in recent weeks announced he is running for governor, repeated the figure in January when interviewed by the Badger Institute. He noted that zoning codes have swelled and municipalities now impose requirements at a fine level of detail \u2014 \u201clike matching mailboxes and matching light posts on every lot,\u201d he said.<\/p>\n<p>\u201cWe\u2019re not talking about nickels and dimes here,\u201d he said, \u201cbut dollars and ten-dollar bills.\u201d<\/p>\n<p>But if the NAHB study was meant to make officials cautious, caution can work to increase costs, too.<\/p>\n<p>Steve DeCleene, president of Neumann Companies, the large Pewaukee-based developer, pointed to regulations regarding backfill as an example.<\/p>\n<p>When a builder develops a subdivision, it isn\u2019t the city that installs sewer lines \u2014 the developer does, building the cost into the price of homes, if he can, and eventually turning the infrastructure over to the city.<\/p>\n<p>Sanitary sewers are built about 12 feet below the surface of streets, meaning a lot of material goes to backfilling the trench after the pipe is in place. What material? That\u2019s a $10,000-per-lot question, said DeCleene \u2014 much cheaper if it\u2019s simply the excavated dirt, much costlier if it\u2019s trucked-in rock: \u201cIt\u2019s a <em>lot<\/em> of stone.\u201d<\/p>\n<p>A municipality might demand trucked-in stone, however, to mitigate any risk of dirt settling and requiring later repairs to the fresh-laid pavement above.<\/p>\n<p>\u201cThat\u2019s where the incentives get perverse,\u201d said DeCleene: Repaving might amount to perhaps a thousand dollars a lot, much less than the cost of rock backfill, but the cost of the rock doesn\u2019t fall on the municipality. Unless a city is relentlessly focused on keeping costs down \u2014 DeCleene suggests a three-year deposit against pavement problems as a cheaper alternative to unnecessary rock backfill, for instance \u2014 then requirements pile up and make houses costly.<\/p>\n<p>These are differences are in what builders call \u201cmeans and methods\u201d \u2014 the requirements that differ from one place to another. DeCleene praises Beaver Dam as an example of a city where the approval process is reasonably quick \u2014 meaning developers have to pay interest on borrowed money for less time before they can sell houses \u2014 and the means and methods are reasonable. This leads to new houses at lower prices than in, for example, Waukesha County.<\/p>\n<p>To be clear, the land is cheaper near Beaver Dam than in the Waukesha County suburbs of Milwaukee. But \u201cthat\u2019s the least of the problem,\u201d says DeCleene, whose company has contributed to the Badger Institute.<\/p>\n<p>He offered examples of land development costs at projects in the two counties \u2014 one his company did in Dodge County and one for which he had accurate numbers in Waukesha County. The difference in the cost of land accounted for just over $14,000 of the $106,314 per-lot cost advantage the Dodge County project had.<\/p>\n<p>The bulk of the difference is means and methods, and, of those means and methods, \u201cthe biggest is lot size, which gets down to zoning,\u201d says DeCleene.<\/p>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/uploads\/2025\/05\/wisconsin-development-costs-waukesha-vs-dodge-county.jpg?strip=all&amp;lossy=1&amp;w=2560&amp;ssl=1\"><img loading=\"lazy\" decoding=\"async\" width=\"935\" height=\"802\" src=\"https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/uploads\/2025\/05\/wisconsin-development-costs-waukesha-vs-dodge-county.jpg?strip=all&amp;lossy=1&amp;ssl=1\" alt=\"\" class=\"wp-image-55693\" \/><\/a><figcaption class=\"wp-element-caption\">Click to enlarge<\/figcaption><\/figure>\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/uploads\/2025\/05\/wisconsin-development-costs-density-effect.jpg?strip=all&amp;lossy=1&amp;w=2560&amp;ssl=1\"><img decoding=\"async\" loading=\"lazy\" width=\"857\" height=\"725\" src=\"https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/uploads\/2025\/05\/wisconsin-development-costs-density-effect.jpg?strip=all&amp;lossy=1&amp;ssl=1\" alt=\"\" class=\"wp-image-55696\" \/><\/a><figcaption class=\"wp-element-caption\">Click to enlarge<\/figcaption><\/figure>\n<p>Between the two examples, each on 80 acres, the Waukesha County example saw costs spread over 97 lots, or 1.21 houses an acre, while the Beaver Dam example spread the costs over 171 lots, or 2.14 houses per acre \u2014 <a href=\"https:\/\/www.badgerinstitute.org\/aei-building-more-homes-in-wisconsin-would-drive-down-cost\/\" target=\"_blank\" rel=\"noreferrer noopener\">considerably less dense<\/a> than the average of new home construction in Wisconsin since 2000.<\/p>\n<p>The size of lots on a given tract of land is determined by a city\u2019s zoning \u2014 rules on minimum lot sizes, minimum widths, required setbacks. Lot size affects how much land cost is built into each house, said Emrath, as well as how much footage of sewer, of pavement, of curbs, all of which a developer must recoup in the final sale if he hopes to remain in business. Since lot cost is related in lending to the cost of the structure on it, lot size governs how expensive a house will be built.<\/p>\n<p>\u201cMy cost per foot of road doesn\u2019t change much if I change the number of lots,\u201d said DeCleene. The cost of lots and the houses to be built on them depends heavily on how many feet of sewer, street and curb are fronted by each lot. More mandated space between houses means more cost \u2014 a reality immediately clear to trick-or-treaters.<\/p>\n<p>\u201cYou want to identify good land policy?\u201d he said. \u201cDrive around on Oct. 31 and see where the kids are.\u201d<\/p>\n<p>As DeCleene sees it, the problem is zoning codes that, by requiring large lots, prevent builders from putting up starter-priced houses. He doesn\u2019t particularly fault local officials: \u201cWhen you talk to people in a community, they want housing that\u2019s more grand than their house,\u201d he says. At public meetings about zoning and new developments, those who attend are neighbors whose land values are affected by what will be built.<\/p>\n<p>\u201cYou know who doesn\u2019t come out? The 100 people who are going to buy my homes. Why? Because they don\u2019t even know who I am yet,\u201d he says.<\/p>\n<p>\u201cI applaud public bodies that stand up to the people who only want million-dollar houses.\u201d<\/p>\n<p>Some municipal officials have a different take. DeCleene\u2019s Waukesha County example is based on a development in northern Muskego. The mayor of Muskego, Rick Petfalski, replying by email, said that residents aren\u2019t so much looking for grander houses on larger lots nearby but, rather, open space.<\/p>\n<p>Rather than a large-lot or small-lot pattern, \u201cThe citizens would prefer \u2018no-lot\u2019 development,\u201d he said. \u201cMany people move to our community because of our great schools and safe community, but also because of the rural county feel. They enjoy seeing rolling countryside and farms.\u201d<\/p>\n<p>As Petfalski sees it, \u201cdevelopers are looking for changes that will increase their profits.\u201d He said he doesn\u2019t begrudge their success, but he opposes any state mandate for smaller lots, which he said would simply \u201cpack more people into a smaller area (and) put more strain on services.\u201d<\/p>\n<p>But communities do have incentives to ease regulatory costs, too.<\/p>\n<p>Beaver Dam knows it has a housing shortage \u201cin almost every category,\u201d said Trent Campbell, the city\u2019s economic development director \u2014 including in what he calls \u201cfamily housing,\u201d the kind in the subdivision in DeCleene\u2019s example.<\/p>\n<p>\u201cOur employers are telling us that one of the critical factors in finding employees is housing,\u201d he said. \u201cThey have to find a place to live at a reasonable cost.\u201d<\/p>\n<p>For Beaver Dam, that meant approving the Neumann project on Ollinger Road where neat three- and four-bedroom houses on 70- by 133-foot lots \u2014 that\u2019s a fifth of an acre \u2014 sell in the upper $300,000 range, which is about as low as builders say they can manage on new construction in Wisconsin. \u201cWe were very accepting of smaller lot sizes,\u201d said Campbell.<\/p>\n<p>He is careful to avoid criticizing anywhere else \u2014 \u201cevery community has got to decide what its needs and wants are, what its character is\u201d \u2014 but he said a focus on removing regulatory barriers, from lot size rules to \u201ccheck-the-box regulatory policies,\u201d is doable.<\/p>\n<p>\u201cI don\u2019t think it\u2019s rocket science, but it certainly does take common sense and a fluidity,\u201d he said.<\/p>\n<p>Janairo, the Middleton council member, represents a district that includes a series of new subdivisions, including one, Redtail Ridge, <a href=\"https:\/\/www.badgerinstitute.org\/hot-demand-for-houses-runs-into-dane-countys-land-of-no\/\" target=\"_blank\" rel=\"noreferrer noopener\">that attracted attention<\/a> for putting homes on small lots, some as small as tenth of an acre. Houses sold in the $400,000s and up \u2014 \u201cnot affordable, but attainable,\u201d she said, and an outfall of Madison-area land costs.<\/p>\n<p>Janairo said she didn\u2019t hear pushback from neighbors over the small lots, perhaps because \u201cit\u2019s mostly single-family homes: People are much more accepting,\u201d she said of single-family homes than of apartments.<\/p>\n<p>Or perhaps it\u2019s sympathy: The area on Middleton\u2019s northwest side is home to many who moved to the Madison area in the past 10 years, drawn by jobs, and among such newcomers, \u201cthere has been a welcoming attitude toward new housing.\u201d<\/p>\n<p>DeCleene, for his part, says he isn\u2019t arguing with municipalities that don\u2019t want smaller lots, more reasonable regulation and more attainable homes. He\u2019s a builder, not a politician: \u201cI don\u2019t persuade anybody. I find the spots where I don\u2019t need to persuade them.\u201d<\/p>\n<p>But those spots aren\u2019t easy to find, he says, because of a not-in-my-backyard attitude, and he sees that as pushing us toward eventually being a nation of renters.<\/p>\n<p>\u201cIt\u2019s the American dream to own a home,\u201d he said, \u201cand it\u2019s at risk.\u201d<\/p>\n<p><em>Patrick McIlheran is the Director of Policy at the Badger Institute.<\/em><\/p>\n<p><em>Any\u202fuse or reproduction of Badger Institute articles or photographs requires prior written\u202fpermission.\u202fTo request permission to post articles on a website or print copies for distribution, contact Badger Institute Marketing Director Matt Erdman at\u202f<\/em><a href=\"mailto:matt@badgerinstitute.org\" target=\"_blank\" rel=\"noreferrer noopener\"><em>matt@badgerinstitute.org<\/em><\/a><em>.<\/em><\/p>\n<p>\/* &#8220;function&#8221;==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&amp;&amp;!gform.isFormEditor()||(gform.isFormEditor()&amp;&amp;console.warn(&#8220;The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.&#8221;),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(&#8220;gform_main_scripts_loaded&#8221;,()=&gt;{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(&#8220;gform\/theme\/scripts_loaded&#8221;,()=&gt;{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(&#8220;DOMContentLoaded&#8221;,()=&gt;{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(&#8220;action&#8221;,o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(&#8220;filter&#8221;,o,r,e,t)},doAction:function(o){gform.doHook(&#8220;action&#8221;,o,arguments)},applyFilters:function(o){return gform.doHook(&#8220;filter&#8221;,o,arguments)},removeAction:function(o,r){gform.removeHook(&#8220;action&#8221;,o,r)},removeFilter:function(o,r,e){gform.removeHook(&#8220;filter&#8221;,o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&amp;&amp;(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&amp;&amp;(n=r+&#8221;_&#8221;+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&amp;&amp;((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){&#8220;function&#8221;!=typeof(t=o.callable)&amp;&amp;(t=window[t]),&#8221;action&#8221;==r?t.apply(null,e):e[0]=t.apply(null,e)})),&#8221;filter&#8221;==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&amp;&amp;(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&amp;&amp;n!=o.tag||null!=t&amp;&amp;t!=o.priority)}),gform.hooks[o][r]=e)}});<br \/>\n\/* ]]&gt; *\/<\/p>\n<div class=\"gf_browser_chrome gform_wrapper gravity-theme gform-theme--no-framework\" data-form-theme=\"gravity-theme\" data-form-index=\"0\" id=\"gform_wrapper_21\">\n<div id=\"gf_21\" class=\"gform_anchor\"><\/div>\n<div class=\"gform_heading\">\n<h2 class=\"gform_title\">Submit a comment<\/h2>\n<p class=\"gform_description\">\n<p class=\"gform_required_legend\">&#8220;<span class=\"gfield_required gfield_required_asterisk\">*<\/span>&#8221; indicates required fields<\/p>\n<\/p><\/div>\n<div class=\"gf_invisible ginput_recaptchav3\" data-sitekey=\"6LeuCC4pAAAAAECxtc6sr-MNi7Rw8mnOTxb-_ZsL\" data-tabindex=\"0\"><\/div>\n<div class=\"gform-body gform_body\">\n<div id=\"gform_fields_21\" class=\"gform_fields top_label form_sublabel_above description_above validation_below\">\n<fieldset id=\"field_21_1\" class=\"gfield gfield--type-name gfield--input-type-name gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\" data-js-reload=\"field_21_1\">\n<legend class=\"gfield_label gform-field-label gfield_label_before_complex\">Your name<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/legend>\n<div class=\"ginput_complex ginput_container ginput_container--name no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name gform-grid-row\" id=\"input_21_1\">\n<p>                            <span id=\"input_21_1_3_container\" class=\"name_first gform-grid-col gform-grid-col--size-auto\"><br \/>\n                                                    <label for=\"input_21_1_3\" class=\"gform-field-label gform-field-label--type-sub \">First<\/label><\/p>\n<p>                                                <\/span><\/p>\n<p>                            <span id=\"input_21_1_6_container\" class=\"name_last gform-grid-col gform-grid-col--size-auto\"><br \/>\n                                                            <label for=\"input_21_1_6\" class=\"gform-field-label gform-field-label--type-sub \">Last<\/label><\/p>\n<p>                                                        <\/span><\/p><\/div>\n<\/fieldset>\n<div id=\"field_21_2\" class=\"gfield gfield--type-email gfield--input-type-email gfield--width-half gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\" data-js-reload=\"field_21_2\"><label class=\"gfield_label gform-field-label\" for=\"input_21_2\">Your email<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><\/p>\n<div class=\"ginput_container ginput_container_email\"><\/div>\n<\/div>\n<div id=\"field_21_7\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\" data-js-reload=\"field_21_7\"><label class=\"gfield_label gform-field-label\" for=\"input_21_7\">Zip Code<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><\/p>\n<div class=\"ginput_container ginput_container_text\"><\/div>\n<\/div>\n<div id=\"field_21_3\" class=\"gfield gfield--type-textarea gfield--input-type-textarea gfield--width-full gfield_contains_required field_sublabel_above gfield--no-description field_description_above field_validation_below gfield_visibility_visible\" data-js-reload=\"field_21_3\"><label class=\"gfield_label gform-field-label\" for=\"input_21_3\">Your comment<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_asterisk\">*<\/span><\/span><\/label><\/p>\n<div class=\"ginput_container ginput_container_textarea\"><textarea name=\"input_3\" id=\"input_21_3\" class=\"textarea small\" rows=\"10\" cols=\"50\"><\/textarea><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"gform-footer gform_footer top_label\"><\/div>\n<p class=\"akismet-fields-container\" data-prefix=\"ak_\"><label>\u0394<textarea name=\"ak_hp_textarea\" cols=\"45\" rows=\"8\"><\/textarea><\/label>document.getElementById( &#8220;ak_js_1&#8221; ).setAttribute( &#8220;value&#8221;, ( new Date() ).getTime() );<\/p>\n<\/p><\/div>\n<p>\/* = 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find(&#8216;#gform_wrapper_21&#8217;);var is_confirmation = jQuery(this).contents().find(&#8216;#gform_confirmation_wrapper_21&#8217;).length &gt; 0;var is_redirect = contents.indexOf(&#8216;gformRedirect(){&#8216;) &gt;= 0;var is_form = form_content.length &gt; 0 &amp;&amp; ! is_redirect &amp;&amp; ! is_confirmation;var mt = parseInt(jQuery(&#8216;html&#8217;).css(&#8216;margin-top&#8217;), 10) + parseInt(jQuery(&#8216;body&#8217;).css(&#8216;margin-top&#8217;), 10) + 100;if(is_form){jQuery(&#8216;#gform_wrapper_21&#8217;).html(form_content.html());if(form_content.hasClass(&#8216;gform_validation_error&#8217;)){jQuery(&#8216;#gform_wrapper_21&#8217;).addClass(&#8216;gform_validation_error&#8217;);} else {jQuery(&#8216;#gform_wrapper_21&#8217;).removeClass(&#8216;gform_validation_error&#8217;);}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/ jQuery(document).scrollTop(jQuery(&#8216;#gform_wrapper_21&#8217;).offset().top &#8211; mt); }, 50 );if(window[&#8216;gformInitDatepicker&#8217;]) {gformInitDatepicker();}if(window[&#8216;gformInitPriceFields&#8217;]) {gformInitPriceFields();}var current_page = jQuery(&#8216;#gform_source_page_number_21&#8217;).val();gformInitSpinner( 21, &#8216;https:\/\/e74sq7k37a8.exactdn.com\/wp-content\/plugins\/gravityforms\/images\/spinner.svg&#8217;, true );jQuery(document).trigger(&#8216;gform_page_loaded&#8217;, [21, current_page]);window[&#8216;gf_submitting_21&#8217;] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find(&#8216;.GF_AJAX_POSTBACK&#8217;).html();if(!confirmation_content){confirmation_content = contents;}jQuery(&#8216;#gform_wrapper_21&#8217;).replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery(&#8216;#gf_21&#8217;).offset().top &#8211; mt);jQuery(document).trigger(&#8216;gform_confirmation_loaded&#8217;, [21]);window[&#8216;gf_submitting_21&#8217;] = false;wp.a11y.speak(jQuery(&#8216;#gform_confirmation_message_21&#8217;).text());}else{jQuery(&#8216;#gform_21&#8217;).append(contents);if(window[&#8216;gformRedirect&#8217;]) {gformRedirect();}}jQuery(document).trigger(&#8220;gform_pre_post_render&#8221;, [{ formId: &#8220;21&#8221;, currentPage: &#8220;current_page&#8221;, abort: function() { this.preventDefault(); } }]);                if (event &amp;&amp; event.defaultPrevented) {                return;         }        const gformWrapperDiv = document.getElementById( &#8220;gform_wrapper_21&#8221; );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( &#8220;span&#8221; );            visibilitySpan.id = &#8220;gform_visibility_test_21&#8221;;            gformWrapperDiv.insertAdjacentElement( &#8220;afterend&#8221;, visibilitySpan );        }        const visibilityTestDiv = document.getElementById( &#8220;gform_visibility_test_21&#8221; );        let postRenderFired = false;                function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 21, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate &amp;&amp; !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv &amp;&amp; visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) =&gt; {                mutations.forEach( ( mutation ) =&gt; {                    if ( mutation.type === &#8216;attributes&#8217; &amp;&amp; visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ &#8216;style&#8217;, &#8216;class&#8217; ],            });        } else {            triggerPostRender();        }    } );} );<br \/>\n\/* ]]&gt; *\/<\/p>\n<p>The post <a href=\"https:\/\/www.badgerinstitute.org\/local-government-regulations-push-price-of-a-wisconsin-roof-skyward\/\">Local government regulations push price of a Wisconsin roof skyward<\/a> appeared first on <a href=\"https:\/\/www.badgerinstitute.org\">Badger Institute<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This post originally appeared at https:\/\/www.badgerinstitute.org\/local-government-regulations-push-price-of-a-wisconsin-roof-skyward\/ Builders, economists cite rules, especially those on lot size,&#8230;<\/p>\n","protected":false},"author":6,"featured_media":16511,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[],"class_list":["post-16509","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-badger-institute"],"_links":{"self":[{"href":"https:\/\/wifamily.news\/index.php?rest_route=\/wp\/v2\/posts\/16509","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wifamily.news\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wifamily.news\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wifamily.news\/index.php?rest_route=\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/wifamily.news\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=16509"}],"version-history":[{"count":1,"href":"https:\/\/wifamily.news\/index.php?rest_route=\/wp\/v2\/posts\/16509\/revisions"}],"predecessor-version":[{"id":16510,"href":"https:\/\/wifamily.news\/index.php?rest_route=\/wp\/v2\/posts\/16509\/revisions\/16510"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wifamily.news\/index.php?rest_route=\/wp\/v2\/media\/16511"}],"wp:attachment":[{"href":"https:\/\/wifamily.news\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=16509"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wifamily.news\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=16509"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wifamily.news\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=16509"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}