The Town Files

The 25 Most Affordable Small Towns in Iowa

Ranked by home value ÷ income among 99 towns of 2,500–10,000 people in Iowa. #1 is Tama, IA (homes cost 1.6× income).

Map of the 25 towns12345678910111213141516171819202122232425
Numbers match the ranking.
  1. 25Missouri Valley, Iowa

    Homes cost 2.1× income

    2,678 people · Harrison County · median home $148,500 · income $71,818 · Jan low 10°F · 29 in snow

  2. 24Madrid, Iowa

    Homes cost 2.1× income

    2,802 people · Boone County · median home $185,600 · income $89,844 · Jan low 12°F · 33 in snow

  3. 23Carlisle, Iowa

    Homes cost 2.1× income

    4,160 people · Warren County · median home $234,300 · income $109,191 · Jan low 14°F · 37 in snow

  4. 22Forest City, Iowa

    Homes cost 2.1× income

    4,285 people · Winnebago County · median home $143,500 · income $69,205 · Jan low 6°F · 41 in snow

  5. 21Hampton, Iowa

    Homes cost 2.1× income

    4,337 people · Franklin County · median home $99,400 · income $47,088 · Jan low 8°F · 29 in snow

  6. 20Osceola, Iowa

    Homes cost 2.1× income

    5,415 people · Clarke County · median home $146,300 · income $68,284 · Jan low 11°F · 28 in snow

  7. 19Oelwein, Iowa

    Homes cost 2.1× income

    5,920 people · Fayette County · median home $96,300 · income $46,653 · Jan low 9°F · 39 in snow

  8. 18Hudson, Iowa

    Homes cost 2.0× income

    2,546 people · Black Hawk County · median home $242,700 · income $120,481 · Jan low 11°F · 39 in snow

  9. 17Emmetsburg, Iowa

    Homes cost 2.0× income

    3,706 people · Palo Alto County · median home $114,300 · income $55,833 · Jan low 7°F · 37 in snow

  10. 16Carter Lake, Iowa

    Homes cost 2.0× income

    3,791 people · Pottawattamie County · median home $169,400 · income $85,349 · Jan low 15°F · 27 in snow

  11. 15Shenandoah, Iowa

    Homes cost 2.0× income

    4,925 people · Page County · median home $116,700 · income $59,783 · Jan low 14°F · 26 in snow

  12. 14Red Oak, Iowa

    Homes cost 2.0× income

    5,596 people · Montgomery County · median home $99,700 · income $50,109 · Jan low 13°F · 27 in snow

  13. 13Webster City, Iowa

    Homes cost 2.0× income

    7,825 people · Hamilton County · median home $127,200 · income $63,430 · Jan low 7°F · 33 in snow

  14. 12Keokuk, Iowa

    Homes cost 2.0× income

    9,900 people · Lee County · median home $104,300 · income $52,711 · Jan low 17°F · 22 in snow

  15. 11Cresco, Iowa

    Homes cost 1.9× income

    3,888 people · Howard County · median home $117,200 · income $60,608 · Jan low 6°F · 40 in snow

  16. 10Estherville, Iowa

    Homes cost 1.9× income

    5,904 people · Emmet County · median home $101,400 · income $54,124 · Jan low 5°F · 40 in snow

  17. 9Charles City, Iowa

    Homes cost 1.9× income

    7,396 people · Floyd County · median home $115,400 · income $59,180 · Jan low 9°F · 38 in snow

  18. 8Hawarden, Iowa

    Homes cost 1.8× income

    2,700 people · Sioux County · median home $136,300 · income $74,167 · Jan low 7°F · 31 in snow

  19. 7Clarion, Iowa

    Homes cost 1.8× income

    2,810 people · Wright County · median home $116,200 · income $64,625 · Jan low 6°F · 31 in snow

  20. 6Albia, Iowa

    Homes cost 1.8× income

    3,721 people · Monroe County · median home $130,300 · income $70,455 · Jan low 13°F · 30 in snow

  21. 5Perry, Iowa

    Homes cost 1.8× income

    7,836 people · Dallas County · median home $121,400 · income $68,910 · Jan low 10°F · 34 in snow

  22. 4Eldora, Iowa

    Homes cost 1.7× income

    2,663 people · Hardin County · median home $133,000 · income $77,188 · Jan low 8°F · 33 in snow

  23. 3Eagle Grove, Iowa

    Homes cost 1.7× income

    3,601 people · Wright County · median home $104,600 · income $63,125 · Jan low 6°F · 33 in snow

  24. 2Chariton, Iowa

    Homes cost 1.7× income

    4,193 people · Lucas County · median home $81,900 · income $46,979 · Jan low 11°F · 24 in snow

  25. 1Tama, Iowa

    Homes cost 1.6× income

    3,130 people · Tama County · median home $106,800 · income $68,661 · Jan low 9°F · 33 in snow

More Iowa rankings

Same ranking, other places

Methodology. We ranked 99 towns of 2,500–10,000 people in Iowa (2020 Census population; towns with 2,500+ people have pages so far). Only towns better than 60% of their peers on this measure qualify, so lists can be shorter than 25. Sources: