42 cities · Updated March 2026
Iowa is significantly more affordable than the national average, with a state-wide cost index of 71. The average monthly rent across Iowa cities is $993, with median household incomes averaging $75,250 per year. The cheapest city is Fort Madison (index 48) and the most expensive is Waukee (index 102).
Iowa has a moderate tax environment with a 5.7% top income tax rate, 6.0% sales tax, and 1.57% effective property tax rate.
Sorted from cheapest to most expensive (US average = 100)
| # | City | Cost Index | Rent | Income | Home Value | Population |
|---|---|---|---|---|---|---|
| 1 | Fort Madison | 48 | $824/mo | $49,359 | $95,900 | 10,221 |
| 2 | Clinton | 49 | $751/mo | $57,493 | $115,400 | 24,425 |
| 3 | Fort Dodge | 50 | $764/mo | $61,769 | $128,900 | 24,788 |
| 4 | Marshalltown | 53 | $864/mo | $68,854 | $117,100 | 27,491 |
| 5 | Ottumwa | 53 | $956/mo | $56,994 | $92,400 | 25,352 |
| 6 | Carroll | 54 | $718/mo | $59,323 | $184,100 | 10,261 |
| 7 | Mason | 54 | $874/mo | $62,369 | $130,000 | 27,135 |
| 8 | Burlington | 55 | $931/mo | $55,274 | $115,800 | 23,800 |
| 9 | Oskaloosa | 55 | $880/mo | $62,172 | $128,900 | 11,492 |
| 10 | Newton | 56 | $828/mo | $56,321 | $151,600 | 15,696 |
| 11 | Boone | 57 | $791/mo | $67,269 | $156,400 | 12,445 |
| 12 | Storm Lake | 57 | $830/mo | $58,341 | $163,600 | 11,275 |
| 13 | Spencer | 58 | $795/mo | $57,068 | $178,300 | 11,393 |
| 14 | Waterloo | 58 | $896/mo | $56,344 | $150,200 | 66,947 |
| 15 | Muscatine | 61 | $979/mo | $59,332 | $146,900 | 23,567 |
| 16 | Davenport | 62 | $930/mo | $64,497 | $162,900 | 101,083 |
| 17 | Sioux | 62 | $936/mo | $65,473 | $162,600 | 85,651 |
| 18 | Council Bluffs | 64 | $980/mo | $64,092 | $164,300 | 62,564 |
| 19 | Le Mars | 64 | $908/mo | $72,381 | $202,200 | 10,597 |
| 20 | Cedar Rapids | 65 | $925/mo | $67,859 | $177,100 | 136,859 |
| 21 | Dubuque | 66 | $943/mo | $64,985 | $193,100 | 59,271 |
| 22 | Waverly | 68 | $909/mo | $78,429 | $215,200 | 10,446 |
| 23 | Des Moines | 70 | $1,054/mo | $63,966 | $183,700 | 212,464 |
| 24 | Indianola | 73 | $966/mo | $78,125 | $228,100 | 15,918 |
| 25 | Marion | 75 | $978/mo | $87,105 | $230,800 | 41,690 |
| 26 | Ames | 78 | $1,040/mo | $60,102 | $263,800 | 66,112 |
| 27 | Pella | 79 | $1,041/mo | $81,201 | $259,600 | 10,624 |
| 28 | Norwalk | 80 | $869/mo | $94,583 | $275,700 | 13,610 |
| 29 | Coralville | 81 | $1,021/mo | $66,508 | $286,000 | 22,846 |
| 30 | Iowa | 82 | $1,094/mo | $57,533 | $273,600 | 75,264 |
| 31 | Cedar Falls | 83 | $1,177/mo | $74,165 | $252,500 | 40,662 |
| 32 | Altoona | 88 | $1,203/mo | $87,123 | $257,300 | 20,592 |
| 33 | West Des Moines | 88 | $1,194/mo | $84,925 | $286,300 | 69,893 |
| 34 | Grimes | 89 | $1,156/mo | $104,497 | $281,000 | 15,810 |
| 35 | Pleasant Hill | 89 | $1,204/mo | $86,890 | $284,100 | 10,796 |
| 36 | Bettendorf | 90 | $1,148/mo | $102,917 | $295,600 | 39,297 |
| 37 | Urbandale | 95 | $1,176/mo | $113,086 | $318,800 | 46,026 |
| 38 | North Liberty | 96 | $1,226/mo | $103,933 | $300,000 | 20,782 |
| 39 | Ankeny | 98 | $1,279/mo | $106,603 | $311,300 | 70,542 |
| 40 | Clive | 100 | $1,099/mo | $131,082 | $379,000 | 18,776 |
| 41 | Johnston | 101 | $1,288/mo | $103,430 | $346,200 | 24,196 |
| 42 | Waukee | 102 | $1,290/mo | $106,728 | $328,200 | 26,974 |
Common questions about cost of living in Iowa