This post originally appeared at https://www.badgerinstitute.org/houses-have-taken-a-sharp-turn-toward-unaffordable-for-typical-wisconsin-household/
Part of a series on the cost of homes in Wisconsin. Previously: A tiny house in the land of lakes and giant prices.
Household must earn $108,000 to afford median home in metro Madison, $89,000 in Appleton area

Wisconsin residents anecdotally report feeling the increasing strain of trying to afford a home. These experiences are borne out by market data showing more Wisconsin residents priced out of homeownership.
The Wisconsin Realtors Association publishes a measure of affordability in its monthly reports. The latest figures show that affordability statewide decreased by 10% over the past 12 months.
However, to dig into affordability on a place-by-place basis, the Badger Institute turned to data from Zillow Research.
Those figures show that across Wisconsin — not just in its largest metropolises but in smaller ones as well — there has been a sharp increase in the level of income required to afford a house.
The data also show that the cost of owning a house relative to income has taken a dramatic turn upward, and that the time it takes to save enough for a down payment has grown steadily longer. In Wisconsin’s two largest metro areas, Milwaukee and Madison, the cost of owning a newly acquired house now consumes more than 40% of the median household’s income.
Affordability metrics
Zillow, an online real estate listings company, aggregates market data into compiled statistics about real estate markets across the United States.
Zillow’s data have been used by academics and government researchers alike due to its breadth and accessibility. Zillow indices are reproduced in the Federal Reserve Economic Data portal, cited by the Federal Reserve Board and the U.S. Census Bureau, and have been evaluated by economists with the Bureau of Economic Analysis. Unlike some private sector sources of housing market data, Zillow provides its data to the public free of charge.
In addition to price indices and market indicators, Zillow Research also publishes a suite of affordability metrics at the metro area level. These account for fluctuations in median house sale prices, household income, mortgage rates, and taxes and insurance costs to paint a representative picture of the overall cost of owning a home. These figures can be compared across time and between areas.
Housing affordability by Wisconsin metro area
Figures as of Jan. 31, 2025
Size rank | Metro | Percent of median household income spent on costs of newly bought home | Household income needed* to afford typical home | Years to save for 20% downpayment |
---|---|---|---|---|
1 | Milwaukee | 40.6% | $109,889 | 8.44 |
2 | Madison | 41.2% | $117,738 | 9.62 |
3 | Green Bay | 32.8% | $88,498 | 7.69 |
4 | Appleton | 29.7% | $88,701 | 7.04 |
5 | Racine | 31.2% | $80,826 | 7.09 |
6 | Oshkosh | 32.3% | $78,960 | 7.49 |
7 | Eau Claire | 31.3% | $83,745 | 7.43 |
8 | Wausau | 26.3% | $67,700 | 6.13 |
9 | Janesville | 28.9% | $75,189 | 6.67 |
10 | La Crosse | 32.1% | $80,297 | 7.80 |
11 | Sheboygan | 30.4% | $79,270 | 7.29 |
12 | Fond du Lac | 30.4% | $75,315 | 7.05 |
*So that house costs do not exceed 30% of income
Source: Zillow. Kenosha and St. Croix were omitted due to their inclusion in out-of-state metro areas.
When discussing housing affordability, the Zillow economists make several simplifying assumptions. First, they stipulate as the threshold for “affordable housing” that housing costs consume no more than 30% of a household’s monthly income. Second, when calculating the monthly cost of purchasing a new house, they assume a mortgage with a 20% down payment. Finally, when factoring in the time it takes to save for a down payment, they assume a savings rate of 10%.
Income needed
One measure of affordability is the income needed to become a homeowner — or as Zillow Research puts it, the “estimate of the annual household income required to spend less than 30% of monthly income on the total monthly payment after newly purchasing the typical home with a 20% down payment.”
After years of slow increase in areas across Wisconsin, that minimum household income needed to afford a typical home on the market took a sharp upward turn in 2021 and began increasing at a faster rate than before.

For example, in January 2021, households in metro Milwaukee needed to earn $56,500, and in metro Madison $64,700, to afford to purchase a typical home. By January 2022, the Milwaukee threshold had ticked up to $61,000, and in Madison to $73,200. Just 12 months later, in the beginning of 2023, the thresholds were up to $77,400 in Milwaukee and $98,700 in Madison, and a year after that, about $101,700 in Milwaukee and $108,000 in Madison.
In other words, the threshold for buying a home increased 80% in Milwaukee and 67% in Madison in just three years.
Median incomes have grown over the same period, but not by as much.
The Census Bureau’s American Community Survey shows that in 2021, the median household income in metro Milwaukee was $68,449, and in Madison $76,731. These values comfortably exceeded the threshold to afford a new home in that year.
By 2023, the most recent year for such ACS data, the median household income in Milwaukee had only increased to $77,006, while Madison was only up to $82,132. The median metro Milwaukee household was slightly below the threshold to comfortably afford a typical home, while the median Madison household earned 83% of what it would need.
Income share
Another way Zillow measures affordability is by determining the share of income that a median household would have to spend on the costs of owning a newly purchased house. Those costs, according to Zillow, include mortgage payments, homeowner’s insurance, property taxes, and maintenance costs.
This measure reflects the relative change between house prices and income. If the metric exceeds 30%, it means an area’s median household cannot afford to buy a typical house.

Once again, 2021 appears to be the inflection point in metro areas across Wisconsin. In nearly every case, the share holds relatively stable from 2012 to the beginning of 2021. This suggests that house prices rose roughly in keeping with income. In smaller metro areas such as Wausau, Sheboygan and Fond du Lac, purchasing a typical house would reliably cost 20% or less of the median household income. For the larger areas such as Madison and Milwaukee, the share hovered around 25%, but, as in other Wisconsin cities, remained mostly constant since 2012.
After 2021, however, the measure rose sharply.
In January 2012, the cost of buying a new home for a median household ranged from 17.7% of income in Wausau to 25.2% in Madison; a decade later, that range had increased to 18.3% in Wausau and 28% in Madison. As of January 2025, the cost was 26.3% of median income in Wausau, and while in Madison, it is at a whopping 41.2%.
House prices exceeded the affordability threshold of 30% of household income for median households in Madison, Milwaukee, Green Bay, Oshkosh, La Crosse, Eau Claire, Racine, Fond du Lac and Sheboygan.
Rental affordability
When it comes to rentals, the Zillow data are less clear due to a shorter baseline, but the figures show that across the state the costs of new leases are rising relative to median incomes.

Rental costs in Milwaukee as a share of income have not changed dramatically since 2015, but Madison has seen a noticeable uptick. Rents in Racine are now above 20% of median household income. While initially low in 2017, Oshkosh has seen rents steadily rise.
Years to save
Another measure is the amount of time it would take the median household to save enough money for a 20% down payment on a typical home, assuming a saving rate of 10% of a household’s income per year.

In 2012, the number ranged from 4.5 years in Wausau to 6.6 years in Milwaukee.
Today, it takes the median Wausau household 6.1 years. The median household in metro Milwaukee would now have to save for 8.4 years, while in metro Madison, it takes 9.6 years.
Wyatt Eichholz is the Policy and Legislative Associate of the Badger Institute.
Any use or reproduction of Badger Institute articles or photographs requires prior written permission. To request permission to post articles on a website or print copies for distribution, contact Badger Institute President Mike Nichols at mike@badgerinstitute.org or 262-389-8239.
var gform;gform||(document.addEventListener(“gform_main_scripts_loaded”,function(){gform.scriptsLoaded=!0}),document.addEventListener(“gform/theme/scripts_loaded”,function(){gform.themeScriptsLoaded=!0}),window.addEventListener(“DOMContentLoaded”,function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>”function”==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(“The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.”),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(“gform_main_scripts_loaded”,()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(“gform/theme/scripts_loaded”,()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(“DOMContentLoaded”,()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(“action”,o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(“filter”,o,r,e,t)},doAction:function(o){gform.doHook(“action”,o,arguments)},applyFilters:function(o){return gform.doHook(“filter”,o,arguments)},removeAction:function(o,r){gform.removeHook(“action”,o,r)},removeFilter:function(o,r,e){gform.removeHook(“filter”,o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+”_”+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]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){“function”!=typeof(t=o.callable)&&(t=window[t]),”action”==r?t.apply(null,e):e[0]=t.apply(null,e)})),”filter”==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});
Submit a comment
“*” indicates required fields
/* = 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find(‘#gform_wrapper_21’);var is_confirmation = jQuery(this).contents().find(‘#gform_confirmation_wrapper_21’).length > 0;var is_redirect = contents.indexOf(‘gformRedirect(){‘) >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery(‘html’).css(‘margin-top’), 10) + parseInt(jQuery(‘body’).css(‘margin-top’), 10) + 100;if(is_form){jQuery(‘#gform_wrapper_21’).html(form_content.html());if(form_content.hasClass(‘gform_validation_error’)){jQuery(‘#gform_wrapper_21’).addClass(‘gform_validation_error’);} else {jQuery(‘#gform_wrapper_21’).removeClass(‘gform_validation_error’);}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery(‘#gform_wrapper_21’).offset().top – mt); }, 50 );if(window[‘gformInitDatepicker’]) {gformInitDatepicker();}if(window[‘gformInitPriceFields’]) {gformInitPriceFields();}var current_page = jQuery(‘#gform_source_page_number_21’).val();gformInitSpinner( 21, ‘https://e74sq7k37a8.exactdn.com/wp-content/plugins/gravityforms/images/spinner.svg’, true );jQuery(document).trigger(‘gform_page_loaded’, [21, current_page]);window[‘gf_submitting_21’] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find(‘.GF_AJAX_POSTBACK’).html();if(!confirmation_content){confirmation_content = contents;}jQuery(‘#gform_wrapper_21’).replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery(‘#gf_21’).offset().top – mt);jQuery(document).trigger(‘gform_confirmation_loaded’, [21]);window[‘gf_submitting_21’] = false;wp.a11y.speak(jQuery(‘#gform_confirmation_message_21’).text());}else{jQuery(‘#gform_21’).append(contents);if(window[‘gformRedirect’]) {gformRedirect();}}jQuery(document).trigger(“gform_pre_post_render”, [{ formId: “21”, currentPage: “current_page”, abort: function() { this.preventDefault(); } }]); if (event && event.defaultPrevented) { return; } const gformWrapperDiv = document.getElementById( “gform_wrapper_21” ); if ( gformWrapperDiv ) { const visibilitySpan = document.createElement( “span” ); visibilitySpan.id = “gform_visibility_test_21”; gformWrapperDiv.insertAdjacentElement( “afterend”, visibilitySpan ); } const visibilityTestDiv = document.getElementById( “gform_visibility_test_21” ); let postRenderFired = false; function triggerPostRender() { if ( postRenderFired ) { return; } postRenderFired = true; jQuery( document ).trigger( ‘gform_post_render’, [21, current_page] ); gform.utils.trigger( { event: ‘gform/postRender’, native: false, data: { formId: 21, currentPage: current_page } } ); gform.utils.trigger( { event: ‘gform/post_render’, native: false, data: { formId: 21, currentPage: 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 && !timeout; clearTimeout( timeout ); timeout = setTimeout( later, wait ); if ( callNow ) func.apply( context, args ); }; } const debouncedTriggerPostRender = debounce( function() { triggerPostRender(); }, 200 ); if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) { const observer = new MutationObserver( ( mutations ) => { mutations.forEach( ( mutation ) => { if ( mutation.type === ‘attributes’ && visibilityTestDiv.offsetParent !== null ) { debouncedTriggerPostRender(); observer.disconnect(); } }); }); observer.observe( document.body, { attributes: true, childList: false, subtree: true, attributeFilter: [ ‘style’, ‘class’ ], }); } else { triggerPostRender(); } } );} );
/* ]]> */
The post Houses have taken a sharp turn toward unaffordable for typical Wisconsin household appeared first on Badger Institute.