Des Moines-West Des Moines, IA Metro Area
The Des Moines-West Des Moines, IA metro area is home to 720,331 residents and 308,705 housing units, centered in Iowa. Its median household income is $84,209, and the median family income is $106,924. The median age is 36.7, 1.9 years younger than the Iowa median of 38.6. Residents are 49.9% male and 50.1% female.
Population
720,331
Median household income
$84,209
Median family income
$106,924
Median age
36.7
Housing units
308,705
Zip codes
60
with 1,000+ residents
Population by Race and Ethnicity
White residents make up the largest share of the metro area at 81.5%, followed by multiracial residents at 5.8%. Hispanic or Latino residents, who can be of any race, make up 8.4% of the population.
Hispanic or Latino residents can be of any race, so shares add to more than 100%.
Zip Codes in the Des Moines-West Des Moines, IA Metro Area
The Des Moines-West Des Moines, IA metro area includes 60 zip codes across 6 counties, home to a combined 708,088 residents. The most populous is Ankeny (50023) with 45,286 residents. Median household incomes range from $38,511 in Des Moines (50314) to $173,659 in Urbandale (50323). Home values are highest in Cumming (50061) at $533,800 and lowest in Guthrie Center (50115) at $147,900. Des Moines (50309) has the youngest population, with a median age of 28.9, while Lacona (50139) is the oldest at 49.7.
Highest income
$173,659
Urbandale (50323)
Lowest income
$38,511
Des Moines (50314)
Highest home value
$533,800
Cumming (50061)
Lowest median rent
$678/mo
Stuart (50250)
Median Household Income by Zip Code
The 25 highest-income zip codes in the metro area, ranked by median household income. The metro-wide median is $84,209, and 39 of 60 zip codes are above it.
Compare Every Zip Code
Select a column heading to sort. Select a zip code to see its full profile.
| Zip | Town | County | Population | Median income | Home value | Median rent | Median age | Owner occupied |
|---|---|---|---|---|---|---|---|---|
| 50023 | Ankeny | Polk County | 45,286 | $113,914 | $345,100 | $1,240 | 32.5 | 71.5% |
| 50266 | West Des Moines | Dallas County | 36,770 | $85,282 | $345,600 | $1,331 | 35.0 | 49.8% |
| 50317 | Des Moines | Polk County | 36,721 | $61,569 | $177,600 | $1,102 | 35.0 | 72.5% |
| 50315 | Des Moines | Polk County | 35,349 | $62,036 | $173,200 | $1,001 | 36.8 | 61.5% |
| 50265 | West Des Moines | Polk County | 33,061 | $84,588 | $281,800 | $1,106 | 38.1 | 66.4% |
| 50322 | Urbandale | Polk County | 31,694 | $89,323 | $276,200 | $1,186 | 40.1 | 72.8% |
| 50310 | Des Moines | Polk County | 31,283 | $74,473 | $222,700 | $1,113 | 37.6 | 69.6% |
| 50021 | Ankeny | Polk County | 29,718 | $98,847 | $317,200 | $1,393 | 35.1 | 74.5% |
| 50263 | Waukee | Dallas County | 27,560 | $107,864 | $352,800 | $1,386 | 34.4 | 67.0% |
| 50131 | Johnston | Polk County | 24,388 | $103,316 | $369,400 | $1,338 | 38.5 | 71.1% |
| 50320 | Des Moines | Polk County | 23,903 | $83,710 | $216,900 | $1,166 | 34.3 | 73.5% |
| 50009 | Altoona | Polk County | 21,992 | $90,393 | $278,300 | $1,232 | 36.7 | 70.5% |
| 50208 | Newton | Jasper County | 20,270 | $61,064 | $168,900 | $833 | 43.5 | 65.5% |
| 50125 | Indianola | Warren County | 20,009 | $86,463 | $258,900 | $992 | 38.4 | 75.4% |
| 50325 | Clive | Polk County | 18,776 | $131,082 | $401,100 | $1,073 | 38.2 | 75.4% |
| 50313 | Des Moines | Polk County | 18,280 | $64,077 | $175,100 | $1,085 | 37.6 | 76.9% |
| 50323 | Urbandale | Dallas County | 17,065 | $173,659 | $486,800 | $1,575 | 36.5 | 87.2% |
| 50111 | Grimes | Polk County | 16,254 | $108,352 | $308,800 | $1,251 | 34.8 | 71.7% |
| 50211 | Norwalk | Warren County | 16,222 | $97,661 | $316,100 | $851 | 37.5 | 84.3% |
| 50316 | Des Moines | Polk County | 16,188 | $53,090 | $154,300 | $952 | 31.7 | 66.6% |
| 50311 | Des Moines | Polk County | 15,889 | $63,233 | $226,500 | $1,029 | 30.8 | 48.4% |
| 50312 | Des Moines | Polk County | 15,492 | $82,720 | $291,900 | $1,074 | 40.5 | 63.7% |
| 50327 | Pleasant Hill | Polk County | 12,875 | $90,759 | $314,400 | $1,226 | 41.2 | 81.0% |
| 50314 | Des Moines | Polk County | 10,203 | $38,511 | $147,900 | $950 | 31.7 | 47.7% |
| 50035 | Bondurant | Polk County | 9,668 | $126,915 | $323,000 | $1,289 | 33.6 | 91.0% |
| 50003 | Adel | Dallas County | 9,536 | $104,643 | $395,400 | $933 | 39.9 | 75.8% |
| 50220 | Perry | Dallas County | 9,251 | $68,750 | $149,400 | $938 | 40.4 | 68.0% |
| 50309 | Des Moines | Polk County | 9,199 | $57,974 | $292,500 | $1,223 | 28.9 | 10.6% |
| 50273 | Winterset | Madison County | 9,123 | $80,018 | $219,400 | $1,142 | 39.0 | 74.9% |
| 50321 | Des Moines | Polk County | 7,787 | $77,636 | $320,500 | $1,128 | 36.0 | 59.8% |
| 50226 | Polk City | Polk County | 7,290 | $161,627 | $417,500 | $867 | 38.8 | 89.5% |
| 50047 | Carlisle | Warren County | 6,625 | $101,345 | $250,100 | $1,227 | 33.9 | 82.3% |
| 50324 | Windsor Heights | Polk County | 5,171 | $89,083 | $267,900 | $1,498 | 41.5 | 78.7% |
| 50169 | Mitchellville | Polk County | 3,532 | $81,625 | $227,000 | $809 | 38.1 | 82.4% |
| 50109 | Granger | Dallas County | 3,371 | $130,263 | $370,100 | $843 | 37.5 | 85.7% |
| 50237 | Runnells | Polk County | 3,275 | $92,667 | $346,900 | $760 | 43.4 | 91.2% |
| 50054 | Colfax | Jasper County | 3,179 | $91,204 | $211,500 | $833 | 36.1 | 75.9% |
| 50261 | Van Meter | Dallas County | 3,105 | $150,341 | $374,100 | $1,069 | 40.3 | 85.9% |
| 50170 | Monroe | Jasper County | 2,914 | $86,205 | $217,000 | $814 | 39.4 | 81.3% |
| 50216 | Panora | Guthrie County | 2,809 | $91,250 | $228,600 | $1,102 | 48.2 | 86.6% |
| 50072 | Earlham | Madison County | 2,787 | $111,518 | $303,900 | $784 | 45.0 | 85.5% |
| 50115 | Guthrie Center | Guthrie County | 2,741 | $70,952 | $147,900 | $833 | 45.0 | 80.3% |
| 50250 | Stuart | Guthrie County | 2,652 | $75,750 | $210,400 | $678 | 43.2 | 79.6% |
| 50063 | Dallas Center | Dallas County | 2,623 | $110,046 | $266,900 | $1,063 | 40.1 | 83.9% |
| 50276 | Woodward | Dallas County | 2,380 | $92,682 | $289,000 | n/a | 42.8 | 88.4% |
| 50228 | Prairie City | Jasper County | 2,345 | $89,511 | $211,400 | $800 | 39.0 | 81.6% |
| 50061 | Cumming | Warren County | 2,327 | $130,250 | $533,800 | $1,163 | 46.3 | 96.7% |
| 50240 | Saint Charles | Madison County | 2,299 | $110,027 | $305,800 | $855 | 46.1 | 86.8% |
| 50166 | Milo | Warren County | 2,083 | $107,550 | $252,900 | $775 | 38.0 | 92.8% |
| 50028 | Baxter | Jasper County | 1,930 | $70,982 | $206,300 | $900 | 39.3 | 82.3% |
| 50135 | Kellogg | Jasper County | 1,777 | $70,192 | $165,200 | $870 | 37.4 | 74.2% |
| 50210 | New Virginia | Warren County | 1,503 | $96,250 | $324,600 | $1,063 | 41.6 | 88.2% |
| 50251 | Sully | Jasper County | 1,481 | $95,417 | $186,200 | $831 | 38.5 | 81.7% |
| 50233 | Redfield | Dallas County | 1,385 | $80,375 | $204,300 | $832 | 41.8 | 90.4% |
| 50070 | Dexter | Dallas County | 1,366 | $90,352 | $213,300 | $855 | 44.1 | 84.3% |
| 50229 | Prole | Warren County | 1,204 | $106,087 | $416,700 | $2,096 | 45.5 | 95.6% |
| 50139 | Lacona | Warren County | 1,058 | $70,673 | $151,600 | $1,049 | 49.7 | 91.7% |
| 50069 | De Soto | Dallas County | 1,024 | $95,208 | $232,100 | $1,089 | 34.7 | 85.6% |
| 50257 | Truro | Madison County | 1,022 | $94,605 | $226,200 | $1,063 | 40.1 | 89.0% |
| 50073 | Elkhart | Polk County | 1,018 | $94,712 | $274,700 | $841 | 49.5 | 86.6% |
Source: U.S. Census Bureau, American Community Survey 5-year estimates. Zip codes are grouped by the metro area their population mainly falls in.
