Guest, Sign inJoin
PolkCityIACityHallPolk City, #1 on this list · Photo: PopePompus · CC BY-SA 4.0
Iowa rankings · Income

Towns with the highest incomes in Iowa

Polk City has the highest median household income of Iowa’s 140 towns of 2,500+: $164,389 a year (Census ACS 2020–2024). The typical town here is at $68,818; 24 of the 140 top $100,000.

Census Bureau, American Community Survey 2020–2024: median household income. Each figure is an estimate with a margin of error (in the row); towns whose ranges overlap may not truly differ. The survey reports incomes over $250,000 only as “$250,000+”. A described list: no letters. How grades work

#1

Polk City

Polk County · 6,630 people
$164,389

Median household income·±$22,194 margin·6.7% in poverty

#2

Bondurant

Polk County · 9,647 people
$135,674

Median household income·±$12,902 margin·6.2% in poverty

#3

Clive

Polk County · 19,861 people
$132,121

Median household income·±$9,130 margin·7.3% in poverty

All 140 towns

Median household income, highest first.

140 towns ranked. Not here? See why a town may be missing.

#TownMedian household incomeMargin (±)In poverty
1Polk CityPolk County · 6,630 people$164,389$22,1946.7%of residents
2BondurantPolk County · 9,647 people$135,674$12,9026.2%of residents
3ClivePolk County · 19,861 people$132,121$9,1307.3%of residents
4AsburyDubuque County · 6,035 people$124,957$31,1863.2%of residents
5Sergeant BluffWoodbury County · 5,324 people$123,481$15,3669.5%of residents
6RobinsLinn County · 3,366 people$122,262$24,9398.9%of residents
7HudsonBlack Hawk County · 3,028 people$120,481$15,5034.0%of residents
8GrimesPolk County · 17,405 people$120,037$11,5544.4%of residents
9Saylorvilleunincorporated, Polk County · 3,366 people$117,821$34,5773.7%of residents
10FairfaxLinn County · 2,925 people$114,375$23,8776.2%of residents
11SolonJohnson County · 3,345 people$113,295$25,9553.2%of residents
12UrbandalePolk County · 48,570 people$112,795$8,6686.8%of residents
13Mount VernonLinn County · 4,514 people$112,656$21,2078.2%of residents
14HuxleyStory County · 4,715 people$112,094$14,0474.5%of residents
15CarlisleWarren County · 4,532 people$109,191$25,0123.1%of residents
16AnkenyPolk County · 77,833 people$108,198$7,8004.2%of residents
17JohnstonPolk County · 25,065 people$106,551$10,76110.2%of residents
18EldridgeScott County · 6,954 people$106,316$17,5731.3%of residents
19Le ClaireScott County · 4,741 people$104,844$10,2066.8%of residents
20NorwalkWarren County · 15,004 people$102,722$14,2724.2%of residents
21North LibertyJohnson County · 21,976 people$102,102$5,0926.1%of residents
22WaukeeDallas County · 34,890 people$101,029$11,2517.4%of residents
23TiffinJohnson County · 7,156 people$100,952$25,4017.6%of residents
24BettendorfScott County · 40,710 people$100,495$3,5016.7%of residents
25Story CityStory County · 3,382 people$96,605$20,62212.6%of residents
26AdelDallas County · 7,098 people$95,250$22,9067.2%of residents
27Center PointLinn County · 2,572 people$95,192$18,9095.1%of residents
28Sioux CenterSioux County · 8,864 people$92,983$19,3002.2%of residents
29DeWittClinton County · 5,704 people$92,587$21,4222.8%of residents
30West BranchCedar County · 2,956 people$92,209$6,4646.4%of residents
31Windsor HeightsPolk County · 5,059 people$91,707$19,3966.2%of residents
32Pleasant HillPolk County · 11,239 people$90,508$13,3068.9%of residents
33MadridBoone County · 2,820 people$89,844$11,6786.3%of residents
34JesupBuchanan County · 2,557 people$89,408$16,0497.0%of residents
35MarionLinn County · 42,732 people$86,743$6,5008.1%of residents
36West Des MoinesPolk County · 74,224 people$86,594$2,3548.4%of residents
37AltoonaPolk County · 22,796 people$86,114$12,4098.3%of residents
38Carter LakePottawattamie County · 3,670 people$85,349$12,71811.5%of residents
39PellaMarion County · 10,992 people$84,111$5,6846.0%of residents
40DyersvilleDubuque County · 4,574 people$83,559$4,5874.9%of residents
41Orange CitySioux County · 6,468 people$82,122$2,64011.2%of residents
42MitchellvillePolk County · 2,671 people$81,172$17,85010.3%of residents
43Grundy CenterGrundy County · 2,814 people$80,357$20,12411.1%of residents
44WaverlyBremer County · 10,561 people$80,284$8,94710.9%of residents
45KalonaWashington County · 2,811 people$80,129$9,4464.6%of residents
46Clear LakeCerro Gordo County · 7,601 people$79,415$7,8718.3%of residents
47EldoraHardin County · 2,593 people$77,188$10,67512.0%of residents
48Cedar FallsBlack Hawk County · 41,240 people$76,987$5,03615.7%of residents
49WiltonMuscatine County · 2,892 people$76,648$18,5938.9%of residents
50Rock ValleySioux County · 4,188 people$76,250$12,6429.3%of residents
51IndianolaWarren County · 16,829 people$75,453$6,0246.4%of residents
52NevadaStory County · 6,974 people$75,094$8,4469.9%of residents
53Le MarsPlymouth County · 10,760 people$74,701$5,7379.2%of residents
54HumboldtHumboldt County · 4,675 people$74,500$8,53115.9%of residents
55HawardenSioux County · 2,665 people$74,167$9,6057.2%of residents
56IndependenceBuchanan County · 6,312 people$73,806$14,1817.6%of residents
57Missouri ValleyHarrison County · 2,616 people$71,818$15,4699.7%of residents
58GlenwoodMills County · 5,287 people$71,790$12,94011.8%of residents
59GarnerHancock County · 3,029 people$70,726$8,70611.5%of residents
60AlbiaMonroe County · 3,599 people$70,455$16,33314.7%of residents
61Cedar RapidsLinn County · 137,935 people$70,424$2,28110.8%of residents
62MonticelloJones County · 4,104 people$70,015$11,2726.0%of residents
63CarrollCarroll County · 10,085 people$69,706$8,5218.9%of residents
64West LibertyMuscatine County · 3,717 people$69,345$6,57011.3%of residents
65BooneBoone County · 12,471 people$69,222$5,2158.3%of residents
66Forest CityWinnebago County · 4,143 people$69,205$16,19112.4%of residents
67CoralvilleJohnson County · 23,960 people$69,144$4,09913.0%of residents
68MarshalltownMarshall County · 27,536 people$69,068$3,06714.3%of residents
69PerryDallas County · 8,208 people$68,910$8,5878.9%of residents
70Sioux CityWoodbury County · 86,356 people$68,906$4,55015.3%of residents
71OsageMitchell County · 3,552 people$68,730$5,8466.9%of residents
72TamaTama County · 3,011 people$68,661$5,43524.0%of residents
73OsceolaClarke County · 5,679 people$68,284$7,8096.4%of residents
74WintersetMadison County · 5,520 people$67,708$16,91110.3%of residents
75VintonBenton County · 5,004 people$66,495$7,62812.6%of residents
76HiawathaLinn County · 7,432 people$66,270$8,04613.7%of residents
77DavenportScott County · 100,358 people$66,200$1,88315.2%of residents
78Des MoinesPolk County · 212,086 people$65,932$1,92215.0%of residents
79DubuqueDubuque County · 59,148 people$65,845$2,89812.7%of residents
80Spirit LakeDickinson County · 5,525 people$65,720$12,1016.3%of residents
81DenisonCrawford County · 8,214 people$65,684$4,36117.5%of residents
82GrinnellPoweshiek County · 9,430 people$65,320$11,42911.1%of residents
83Mason CityCerro Gordo County · 26,853 people$64,804$3,25712.0%of residents
84ClarionWright County · 2,758 people$64,625$8,43210.5%of residents
85Council BluffsPottawattamie County · 62,680 people$64,578$2,84215.1%of residents
86DecorahWinneshiek County · 7,417 people$64,366$4,6908.1%of residents
87CamancheClinton County · 4,557 people$64,153$12,50111.5%of residents
88OskaloosaMahaska County · 11,493 people$64,004$6,14316.6%of residents
89Rock RapidsLyon County · 2,733 people$63,942$12,5636.5%of residents
90Webster CityHamilton County · 7,815 people$63,430$13,5448.6%of residents
91MilfordDickinson County · 3,209 people$63,369$8,5068.9%of residents
92Eagle GroveWright County · 3,653 people$63,125$14,05130.2%of residents
93New HamptonChickasaw County · 3,420 people$62,870$11,29117.3%of residents
94Storm LakeBuena Vista County · 11,590 people$62,765$16,3587.0%of residents
95SheldonO'Brien County · 5,575 people$62,159$13,18515.3%of residents
96OnawaMonona County · 2,821 people$62,143$15,53916.3%of residents
97CherokeeCherokee County · 5,122 people$61,750$10,01518.5%of residents
98KnoxvilleMarion County · 7,469 people$61,599$6,49312.5%of residents
99ManchesterDelaware County · 5,357 people$61,191$7,14911.4%of residents
100AtlanticCass County · 6,676 people$61,141$4,79817.4%of residents
101TiptonCedar County · 3,060 people$61,115$15,19812.3%of residents
102OttumwaWapello County · 25,319 people$61,103$4,33817.2%of residents
103Mount PleasantHenry County · 8,500 people$61,042$8,57615.7%of residents
104AmesStory County · 68,220 people$60,991$1,89225.5%of residents
105BloomfieldDavis County · 2,785 people$60,769$9,4546.9%of residents
106AnamosaJones County · 5,901 people$60,650$2,74418.5%of residents
107Fort DodgeWebster County · 24,837 people$60,649$6,46315.9%of residents
108CrescoHoward County · 3,925 people$60,608$8,91313.4%of residents
109EvansdaleBlack Hawk County · 4,463 people$60,397$6,00424.0%of residents
110WaukonAllamakee County · 3,849 people$60,269$12,37510.0%of residents
111MaquoketaJackson County · 6,027 people$60,240$6,55814.2%of residents
112ClintonClinton County · 24,049 people$60,230$5,31418.5%of residents
113ShenandoahPage County · 4,808 people$59,783$9,81121.0%of residents
114SpencerClay County · 11,218 people$59,667$6,53114.0%of residents
115Charles CityFloyd County · 7,013 people$59,180$9,96813.3%of residents
116BurlingtonDes Moines County · 23,336 people$59,000$3,73013.2%of residents
117JeffersonGreene County · 4,150 people$58,895$4,8317.3%of residents
118Iowa CityJohnson County · 76,229 people$58,546$3,03826.3%of residents
119MuscatineMuscatine County · 23,164 people$58,117$4,05819.1%of residents
120WilliamsburgIowa County · 3,408 people$58,059$6,7715.8%of residents
121NewtonJasper County · 15,741 people$57,771$7,42711.1%of residents
122HarlanShelby County · 4,859 people$57,488$12,3319.1%of residents
123WaterlooBlack Hawk County · 66,919 people$57,480$1,79716.6%of residents
124AlgonaKossuth County · 5,309 people$56,040$4,7876.9%of residents
125EmmetsburgPalo Alto County · 3,684 people$55,833$10,34015.2%of residents
126WashingtonWashington County · 7,261 people$55,373$9,26312.8%of residents
127SibleyOsceola County · 2,762 people$55,070$5,14823.5%of residents
128EsthervilleEmmet County · 5,807 people$54,124$3,25012.6%of residents
129KeokukLee County · 9,510 people$52,711$5,47718.3%of residents
130CrestonUnion County · 7,335 people$52,633$6,83915.8%of residents
131FairfieldJefferson County · 9,220 people$51,311$10,72920.7%of residents
132Fort MadisonLee County · 9,935 people$50,705$5,17515.0%of residents
133Iowa FallsHardin County · 5,013 people$50,417$5,76110.7%of residents
134Red OakMontgomery County · 5,388 people$50,109$7,79921.9%of residents
135West BurlingtonDes Moines County · 3,358 people$48,542$16,04923.8%of residents
136HamptonFranklin County · 4,264 people$47,088$5,02418.1%of residents
137CharitonLucas County · 4,347 people$46,979$11,52317.1%of residents
138OelweinFayette County · 5,757 people$46,653$10,23218.5%of residents
139CentervilleAppanoose County · 5,327 people$46,563$9,25821.3%of residents
140ClarindaPage County · 5,273 people$46,348$11,04212.1%of residents
Quick answers

Questions people ask

Which Iowa town has the highest income?

Polk City (Polk County): its median household income is $164,389 (±$22,194). Bondurant ($135,674) and Clive ($132,121) follow.

How are these towns ranked?

By median household income in the Census Bureau’s American Community Survey (2020–2024), highest first. Towns with the same figure share a rank (T), including every town at the survey’s $250,000+ ceiling. How grades work.

Why isn’t my town on this list?

The list covers the towns of 2,500+ that TownRatings grades with an ACS income figure (140 in Iowa). Smaller towns show their income on their own page. Every town is on the Iowa page.

Go deeper

More Iowa lists

Every list ranks the same 2,500+ towns, so a town’s rank means the same thing on each.

All Iowa rankings →
Other states

Highest incomes in other states