Guest, Sign inJoin
Union Miners CemeteryMount Olive Township, #1 on this list · Union Miners Cemetery · Photo: Peter Greenberg · CC BY-SA 3.0
Illinois rankings · Cost of living

Most affordable towns in Illinois

Mount Olive Township ranks first on cost of living among Illinois’ 768 towns of 2,500+; 159 of the 768 grade A− or better on cost of living nationally.

The Cost of living grade: home values, rent and property-tax bills against the income of the town’s metro area or county, and the share of households paying 30%+ of income for housing (Census ACS). How grades work

#1

Mount Olive Township

Macoupin County · 3,019 people
A+

Cost of living grade, homes cost 1.3 years of area income·Overall C+ · #563 of 767 in IL

#2

Gillespie

Macoupin County · 3,083 people
A+

Cost of living grade, homes cost 1.5 years of area income·Overall C+ · #508 of 767 in IL

#3

Virden

Macoupin County · 3,149 people
A+

Cost of living grade, homes cost 1.6 years of area income·Overall B · #421 of 767 in IL

All 768 towns

Cost of living grade, best first (the letter is national). Towns with the same score share a rank (T = tied; 12 towns here); the overall grade and state rank are beside each.

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

#TownGradeHome price · overall
1Mount Olive TownshipMacoupin County · 3,019 peopleA+1.3 years of area income·Overall C+ · #563 of 767
2GillespieMacoupin County · 3,083 peopleA+1.5 years of area income·Overall C+ · #508 of 767
3VirdenMacoupin County · 3,149 peopleA+1.6 years of area income·Overall B · #421 of 767
4Oblong TownshipCrawford County · 2,730 peopleA+1.4 years of area income·Overall B− · #489 of 767
5McLeansboroHamilton County · 2,585 peopleA+1.6 years of area income·Overall B+ · #343 of 767
6Cahokia TownshipMacoupin County · 3,084 peopleA+1.2 years of area income·Overall C+ · #546 of 767
7Mound TownshipEffingham County · 3,508 peopleA+1.7 years of area income·Overall A− · #184 of 767
8McLeansboro TownshipHamilton County · 3,611 peopleA+1.4 years of area income·Overall B− · #454 of 767
9Rosewood Heightsunincorporated, Madison County · 4,229 peopleA+2.2 years of area income·Overall A · #111 of 767
10BushnellMcDonough County · 2,600 peopleA+1.3 years of area income·Overall C · #617 of 767
11PinckneyvillePerry County · 4,903 peopleA+2.2 years of area income·Overall A− · #282 of 767
12Chouteau TownshipMadison County · 7,428 peopleA+1.3 years of area income·Overall C · #577 of 767
13ChesterRandolph County · 6,847 peopleA+1.7 years of area income·Overall B+ · #358 of 767
14ArcolaDouglas County · 2,928 peopleA+2.2 years of area income·Overall B+ · #335 of 767
15BeardstownCass County · 5,691 peopleA1.3 years of area income·Overall C− · #625 of 767
16Carthage TownshipHancock County · 2,848 peopleA1.9 years of area income·Overall A− · #179 of 767
17Spring Garden TownshipJefferson County · 2,522 peopleA1.7 years of area income·Overall C · #622 of 767
18RobinsonCrawford County · 7,283 peopleA1.5 years of area income·Overall B+ · #356 of 767
19RushvilleSchuyler County · 2,857 peopleA2.1 years of area income·Overall B− · #459 of 767
20Neoga TownshipCumberland County · 2,719 peopleA2.0 years of area income·Overall B · #402 of 767
21Kewanee TownshipHenry County · 9,494 peopleA1.0 years of area income·Overall C · #572 of 767
22PanaChristian County · 5,010 peopleA1.8 years of area income·Overall B · #436 of 767
23Locust TownshipChristian County · 3,144 peopleA2.4 years of area income·Overall B− · #461 of 767
24Robinson TownshipCrawford County · 9,399 peopleA1.9 years of area income·Overall A− · #243 of 767
25StauntonMacoupin County · 4,932 peopleA2.0 years of area income·Overall B+ · #323 of 767
26KewaneeHenry County · 12,115 peopleA1.1 years of area income·Overall C+ · #552 of 767
27Lewistown TownshipFulton County · 2,562 peopleA1.9 years of area income·Overall C · #591 of 767
T28Peoria HeightsPeoria County · 5,767 peopleA1.7 years of area income·Overall A− · #263 of 767
T28Richwoods TownshipPeoria County · 5,771 peopleA1.6 years of area income·Overall A− · #246 of 767
30Watson TownshipEffingham County · 3,176 peopleA2.1 years of area income·Overall A− · #278 of 767
31Du QuoinPerry County · 5,569 peopleA1.8 years of area income·Overall C+ · #556 of 767
32MonmouthWarren County · 8,599 peopleA1.7 years of area income·Overall B · #427 of 767
33ParisEdgar County · 8,026 peopleA1.8 years of area income·Overall B− · #492 of 767
34Brookside TownshipClinton County · 4,522 peopleA1.2 years of area income·Overall C− · #657 of 767
35NewtonJasper County · 2,715 peopleA2.2 years of area income·Overall B · #365 of 767
36TuscolaDouglas County · 4,668 peopleA2.3 years of area income·Overall A− · #201 of 767
37JerseyvilleJersey County · 8,409 peopleA1.8 years of area income·Overall B+ · #297 of 767
38EldoradoSaline County · 3,579 peopleA1.3 years of area income·Overall C · #616 of 767
39Clintonia TownshipDe Witt County · 7,123 peopleA1.4 years of area income·Overall B · #445 of 767
40Bunker Hill TownshipMacoupin County · 3,086 peopleA2.3 years of area income·Overall B · #383 of 767
41Camargo TownshipDouglas County · 3,507 peopleA2.6 years of area income·Overall B · #425 of 767
42MorrisonWhiteside County · 3,945 peopleA2.6 years of area income·Overall A− · #178 of 767
43Granite CityMadison County · 26,807 peopleA1.4 years of area income·Overall D · #715 of 767
44ClintonDe Witt County · 6,781 peopleA2.2 years of area income·Overall C · #570 of 767
45GreenvilleBond County · 7,469 peopleA2.2 years of area income·Overall A− · #249 of 767
46HillsboroMontgomery County · 6,184 peopleA2.4 years of area income·Overall B+ · #354 of 767
47Park CityLake County · 7,893 peopleA3.2 years of area income·Overall A− · #277 of 767
48Wood River TownshipMadison County · 29,456 peopleA1.5 years of area income·Overall B+ · #355 of 767
49Grover TownshipWayne County · 3,515 peopleA1.8 years of area income·Overall B− · #481 of 767
50East Eldorado TownshipSaline County · 5,182 peopleA1.7 years of area income·Overall C · #588 of 767
51GeorgetownVermilion County · 3,006 peopleA1.8 years of area income·Overall C · #571 of 767
52South JacksonvilleMorgan County · 3,195 peopleA2.3 years of area income·Overall B− · #466 of 767
53StreatorLaSalle County · 12,190 peopleA1.8 years of area income·Overall C− · #650 of 767
54CarlinvilleMacoupin County · 5,465 peopleA1.9 years of area income·Overall C+ · #558 of 767
55Otter Creek TownshipLaSalle County · 2,623 peopleA2.1 years of area income·Overall C+ · #529 of 767
56Wade TownshipJasper County · 4,282 peopleA1.6 years of area income·Overall B+ · #287 of 767
57Six Mile TownshipFranklin County · 3,450 peopleA1.4 years of area income·Overall D · #718 of 767
58Broadwell TownshipLogan County · 2,860 peopleA2.4 years of area income·Overall B+ · #351 of 767
59Granville TownshipPutnam County · 2,741 peopleA2.1 years of area income·Overall B · #373 of 767
60Tyrone TownshipFranklin County · 4,582 peopleA1.5 years of area income·Overall C− · #635 of 767
61LawrencevilleLawrence County · 4,356 peopleA1.4 years of area income·Overall D · #683 of 767
62ChristopherFranklin County · 2,607 peopleA1.3 years of area income·Overall C− · #660 of 767
63ColonaHenry County · 4,938 peopleA2.6 years of area income·Overall A− · #189 of 767
64FairfieldWayne County · 4,794 peopleA1.9 years of area income·Overall C− · #634 of 767
65Bourbon TownshipDouglas County · 4,173 peopleA2.4 years of area income·Overall B+ · #327 of 767
66Goode TownshipFranklin County · 2,606 peopleA1.6 years of area income·Overall C · #610 of 767
67NashvilleWashington County · 3,011 peopleA2.3 years of area income·Overall B · #376 of 767
68Canteen TownshipSt. Clair County · 7,714 peopleA0.9 years of area income·Overall C− · #637 of 767
69Springfield TownshipSangamon County · 5,485 peopleA1.2 years of area income·Overall C · #609 of 767
70Wood RiverMadison County · 10,224 peopleA1.7 years of area income·Overall B− · #495 of 767
71Buffalo TownshipOgle County · 2,617 peopleA1.4 years of area income·Overall B+ · #312 of 767
72PrincetonBureau County · 7,674 peopleA2.5 years of area income·Overall B+ · #307 of 767
73Dodds TownshipJefferson County · 2,682 peopleA1.8 years of area income·Overall C · #599 of 767
74Bruce TownshipLaSalle County · 11,675 peopleA1.3 years of area income·Overall C− · #632 of 767
75MarshallClark County · 3,880 peopleA2.4 years of area income·Overall B+ · #291 of 767
76SullivanMoultrie County · 4,310 peopleA2.8 years of area income·Overall A · #118 of 767
77East St. LouisSt. Clair County · 17,682 peopleA0.4 years of area income·Overall D · #695 of 767
78South Litchfield TownshipMontgomery County · 3,222 peopleA1.7 years of area income·Overall B · #447 of 767
79Sugar Loaf TownshipSt. Clair County · 6,601 peopleA−1.5 years of area income·Overall A− · #245 of 767
80PittsfieldPike County · 4,041 peopleA−2.3 years of area income·Overall C · #614 of 767
81Douglas TownshipEffingham County · 12,693 peopleA−2.3 years of area income·Overall A · #104 of 767
82PawneeSangamon County · 2,686 peopleA−2.5 years of area income·Overall B− · #486 of 767
83EffinghamEffingham County · 12,406 peopleA−3.0 years of area income·Overall B · #434 of 767
84PontiacLivingston County · 10,806 peopleA−2.1 years of area income·Overall C · #598 of 767
85Central TownshipBond County · 8,368 peopleA−1.8 years of area income·Overall B+ · #324 of 767
86MetropolisMassac County · 5,727 peopleA−1.9 years of area income·Overall C+ · #555 of 767
87FloraClay County · 4,634 peopleA−1.7 years of area income·Overall B− · #497 of 767
88Piasa TownshipJersey County · 3,016 peopleA−2.1 years of area income·Overall B+ · #318 of 767
89West PeoriaPeoria County · 4,187 peopleA−1.6 years of area income·Overall C+ · #554 of 767
90AuburnSangamon County · 4,442 peopleA−2.4 years of area income·Overall A− · #229 of 767
91Jersey TownshipJersey County · 10,005 peopleA−2.1 years of area income·Overall A− · #269 of 767
92OlneyRichland County · 8,347 peopleA−2.2 years of area income·Overall B− · #498 of 767
93Harter TownshipClay County · 5,912 peopleA−1.4 years of area income·Overall C · #582 of 767
94FairburyLivingston County · 3,597 peopleA−2.7 years of area income·Overall A · #154 of 767
95Casey TownshipClark County · 3,413 peopleA−1.9 years of area income·Overall C+ · #513 of 767
96Oregon-Nashua TownshipOgle County · 4,748 peopleA−1.8 years of area income·Overall B+ · #341 of 767
97PaxtonFord County · 4,323 peopleA−2.4 years of area income·Overall A · #158 of 767
98Hall TownshipBureau County · 8,193 peopleA−2.1 years of area income·Overall C+ · #539 of 767
99Mount Pleasant TownshipWhiteside County · 4,638 peopleA−2.2 years of area income·Overall A− · #221 of 767
100Rock FallsWhiteside County · 8,521 peopleA−1.8 years of area income·Overall C− · #659 of 767
101ShelbyvilleShelby County · 4,537 peopleA−2.1 years of area income·Overall A− · #235 of 767
102Georgetown TownshipVermilion County · 7,100 peopleA−1.6 years of area income·Overall C− · #673 of 767
103Scott TownshipOgle County · 3,350 peopleA−2.5 years of area income·Overall A− · #234 of 767
104TaylorvilleChristian County · 10,522 peopleA−2.2 years of area income·Overall B− · #476 of 767
105LitchfieldMontgomery County · 6,598 peopleA−2.1 years of area income·Overall B · #408 of 767
106Western TownshipHenry County · 2,854 peopleA−2.5 years of area income·Overall A+ · #48 of 767
107Auburn TownshipSangamon County · 5,805 peopleA−2.0 years of area income·Overall B+ · #353 of 767
108AledoMercer County · 3,506 peopleA−2.4 years of area income·Overall B · #435 of 767
109OregonOgle County · 3,573 peopleA−2.9 years of area income·Overall B+ · #286 of 767
110KnoxvilleKnox County · 2,810 peopleA−2.9 years of area income·Overall B+ · #317 of 767
111PekinTazewell County · 31,277 peopleA−2.0 years of area income·Overall C · #597 of 767
112Sullivan TownshipMoultrie County · 6,229 peopleA−2.0 years of area income·Overall B+ · #285 of 767
113ChillicothePeoria County · 6,033 peopleA−2.7 years of area income·Overall A− · #284 of 767
114Red BudRandolph County · 3,761 peopleA−3.7 years of area income·Overall A · #113 of 767
115MadisonMadison County · 3,063 peopleA−0.7 years of area income·Overall D− · #756 of 767
116Coloma TownshipWhiteside County · 10,277 peopleA−1.3 years of area income·Overall C+ · #545 of 767
117Patton TownshipFord County · 5,104 peopleA−1.9 years of area income·Overall A− · #185 of 767
118Teutopolis TownshipEffingham County · 2,818 peopleA−3.0 years of area income·Overall A+ · #3 of 767
119East AltonMadison County · 5,621 peopleA−1.3 years of area income·Overall C+ · #535 of 767
120Salem TownshipMarion County · 8,785 peopleA−1.8 years of area income·Overall B · #417 of 767
121HoopestonVermilion County · 4,676 peopleA−1.5 years of area income·Overall C− · #655 of 767
122WestvilleVermilion County · 3,029 peopleA−1.8 years of area income·Overall D · #723 of 767
123Colona TownshipHenry County · 6,595 peopleA−2.4 years of area income·Overall A · #78 of 767
124Havana TownshipMason County · 4,170 peopleA−1.6 years of area income·Overall C+ · #516 of 767
125TrentonClinton County · 2,643 peopleA−2.6 years of area income·Overall A+ · #50 of 767
126Indian Grove TownshipLivingston County · 4,111 peopleA−2.2 years of area income·Overall A− · #187 of 767
127Lawrence TownshipLawrence County · 6,190 peopleA−1.9 years of area income·Overall D · #687 of 767
128Mount Sterling TownshipBrown County · 4,448 peopleA−2.1 years of area income·Overall B · #396 of 767
129Nokomis TownshipMontgomery County · 2,751 peopleA−1.4 years of area income·Overall B · #414 of 767
130JacksonvilleMorgan County · 17,752 peopleA−2.1 years of area income·Overall C− · #664 of 767
131Chillicothe TownshipPeoria County · 8,139 peopleA−2.0 years of area income·Overall A · #123 of 767
132Wethersfield TownshipHenry County · 3,695 peopleA−1.5 years of area income·Overall B · #389 of 767
133West FrankfortFranklin County · 7,105 peopleA−1.9 years of area income·Overall D · #730 of 767
134Mercer TownshipMercer County · 3,841 peopleA−2.0 years of area income·Overall B− · #496 of 767
135Decatur TownshipMacon County · 45,203 peopleA−1.4 years of area income·Overall D · #697 of 767
136Centreville TownshipSt. Clair County · 19,067 peopleA−0.7 years of area income·Overall D · #721 of 767
137North Litchfield TownshipMontgomery County · 4,824 peopleA−2.0 years of area income·Overall A− · #283 of 767
138Brighton TownshipMacoupin County · 3,826 peopleA−2.1 years of area income·Overall A− · #216 of 767
139Mount CarmelWabash County · 6,723 peopleA−2.2 years of area income·Overall C+ · #536 of 767
140Creve CoeurTazewell County · 4,816 peopleA−1.5 years of area income·Overall C+ · #520 of 767
141MendotaLaSalle County · 6,894 peopleA−2.4 years of area income·Overall B · #382 of 767
142CentraliaMarion County · 11,863 peopleA−1.9 years of area income·Overall D− · #754 of 767
143MilanRock Island County · 5,028 peopleA−2.6 years of area income·Overall C · #605 of 767
144TiltonVermilion County · 2,537 peopleA−1.5 years of area income·Overall D− · #760 of 767
145Frankfort TownshipFranklin County · 6,265 peopleA−1.6 years of area income·Overall D · #744 of 767
146Carlyle TownshipClinton County · 3,778 peopleA−2.1 years of area income·Overall B+ · #346 of 767
147DupoSt. Clair County · 3,766 peopleA−1.6 years of area income·Overall C · #576 of 767
148Denning TownshipFranklin County · 4,628 peopleA−1.5 years of area income·Overall D · #729 of 767
149AbingdonKnox County · 2,832 peopleA−1.7 years of area income·Overall C · #573 of 767
150Le RoyMcLean County · 3,465 peopleA−2.6 years of area income·Overall A+ · #38 of 767
151Empire TownshipMcLean County · 3,960 peopleA−2.2 years of area income·Overall A · #126 of 767
152Spring ValleyBureau County · 5,408 peopleA−2.0 years of area income·Overall B− · #484 of 767
153HavanaMason County · 2,799 peopleA−1.4 years of area income·Overall C− · #651 of 767
154SalemMarion County · 7,035 peopleA−2.4 years of area income·Overall C+ · #544 of 767
155Grant TownshipVermilion County · 5,364 peopleA−1.5 years of area income·Overall C · #587 of 767
156CarlyleClinton County · 3,188 peopleA−2.1 years of area income·Overall B+ · #359 of 767
157Breese TownshipClinton County · 5,521 peopleA−2.9 years of area income·Overall A · #136 of 767
158BethaltoMadison County · 9,202 peopleA−2.5 years of area income·Overall A− · #195 of 767
159Mount MorrisOgle County · 2,787 peopleA−1.9 years of area income·Overall B · #413 of 767
160Blackhawk TownshipRock Island County · 9,423 peopleB+1.9 years of area income·Overall B− · #494 of 767
161VandaliaFayette County · 7,108 peopleB+2.2 years of area income·Overall C · #586 of 767
162El PasoWoodford County · 2,723 peopleB+2.7 years of area income·Overall A− · #271 of 767
163HarveyCook County · 19,849 peopleB+1.2 years of area income·Overall D · #751 of 767
164BreeseClinton County · 4,602 peopleB+3.3 years of area income·Overall A+ · #37 of 767
165PeruLaSalle County · 9,780 peopleB+2.5 years of area income·Overall B · #387 of 767
166Venice TownshipMadison County · 4,523 peopleB+0.9 years of area income·Overall D · #750 of 767
167SavannaCarroll County · 2,699 peopleB+1.5 years of area income·Overall C− · #641 of 767
168AltonMadison County · 25,013 peopleB+1.3 years of area income·Overall D · #734 of 767
169OglesbyLaSalle County · 3,618 peopleB+2.4 years of area income·Overall C+ · #510 of 767
170LenaStephenson County · 2,670 peopleB+3.3 years of area income·Overall A · #96 of 767
171West Point TownshipStephenson County · 3,095 peopleB+2.5 years of area income·Overall A · #125 of 767
172Marion TownshipOgle County · 3,866 peopleB+2.7 years of area income·Overall A · #161 of 767
173South Rock Island TownshipRock Island County · 18,056 peopleB+1.9 years of area income·Overall C · #603 of 767
174SpartaRandolph County · 4,022 peopleB+1.9 years of area income·Overall D · #701 of 767
175MattoonColes County · 16,667 peopleB+2.3 years of area income·Overall C− · #638 of 767
176HometownCook County · 4,191 peopleB+2.3 years of area income·Overall A · #134 of 767
177BraidwoodWill County · 6,259 peopleB+3.2 years of area income·Overall A · #129 of 767
178SterlingWhiteside County · 14,394 peopleB+2.2 years of area income·Overall C+ · #514 of 767
179Helvetia TownshipMadison County · 8,312 peopleB+2.7 years of area income·Overall A · #131 of 767
180El Paso TownshipWoodford County · 3,376 peopleB+2.3 years of area income·Overall A− · #244 of 767
181Reed TownshipWill County · 6,988 peopleB+2.2 years of area income·Overall A− · #217 of 767
182BentonFranklin County · 6,558 peopleB+2.3 years of area income·Overall D · #689 of 767
183Woodside TownshipSangamon County · 11,300 peopleB+1.7 years of area income·Overall B · #372 of 767
184Savanna TownshipCarroll County · 3,324 peopleB+1.3 years of area income·Overall C− · #661 of 767
185RivertonSangamon County · 3,471 peopleB+2.6 years of area income·Overall B+ · #304 of 767
186Randolph TownshipMcLean County · 4,342 peopleB+2.7 years of area income·Overall A · #130 of 767
187CollinsvilleMadison County · 23,717 peopleB+2.4 years of area income·Overall B− · #477 of 767
188Benton TownshipFranklin County · 8,535 peopleB+1.5 years of area income·Overall D · #690 of 767
189Flagg TownshipOgle County · 13,335 peopleB+2.1 years of area income·Overall C · #578 of 767
190Nameoki TownshipMadison County · 11,971 peopleB+1.8 years of area income·Overall D · #731 of 767
191Olio TownshipWoodford County · 4,627 peopleB+2.0 years of area income·Overall A− · #190 of 767
192Middleport TownshipIroquois County · 3,603 peopleB+1.6 years of area income·Overall D · #727 of 767
193Dunleith TownshipJo Daviess County · 3,487 peopleB+2.6 years of area income·Overall B · #375 of 767
194Coal CityGrundy County · 5,831 peopleB+3.0 years of area income·Overall A+ · #35 of 767
195LincolnLogan County · 12,981 peopleB+2.1 years of area income·Overall B · #432 of 767
196Sugar Creek TownshipClinton County · 6,723 peopleB+2.9 years of area income·Overall A · #81 of 767
197Mount Zion TownshipMacon County · 7,018 peopleB+2.9 years of area income·Overall A− · #281 of 767
198CaseyvilleSt. Clair County · 4,402 peopleB+1.2 years of area income·Overall C− · #645 of 767
199Limestone TownshipPeoria County · 18,035 peopleB+2.1 years of area income·Overall B · #367 of 767
200West Lincoln TownshipLogan County · 7,252 peopleB+2.0 years of area income·Overall B+ · #338 of 767
201DecaturMacon County · 67,884 peopleB+1.7 years of area income·Overall D− · #758 of 767
202CantonFulton County · 13,297 peopleB+1.8 years of area income·Overall C · #619 of 767
203Spring Bay TownshipWoodford County · 2,529 peopleB+1.8 years of area income·Overall B · #415 of 767
204HighlandMadison County · 10,042 peopleB+3.4 years of area income·Overall A+ · #56 of 767
205RochelleOgle County · 9,498 peopleB+2.5 years of area income·Overall C · #607 of 767
206Rock Island TownshipRock Island County · 15,632 peopleB+1.3 years of area income·Overall C− · #671 of 767
207Johnston CityWilliamson County · 3,313 peopleB+1.7 years of area income·Overall D · #694 of 767
208FreeportStephenson County · 23,202 peopleB+2.0 years of area income·Overall D · #708 of 767
209Clear Lake TownshipSangamon County · 8,248 peopleB+2.6 years of area income·Overall B · #370 of 767
210Braceville TownshipGrundy County · 6,617 peopleB+2.5 years of area income·Overall A · #109 of 767
211Harrisburg TownshipSaline County · 9,656 peopleB+1.7 years of area income·Overall D · #710 of 767
212HerrinWilliamson County · 12,268 peopleB+1.7 years of area income·Overall C− · #646 of 767
213Felix TownshipGrundy County · 4,531 peopleB+2.4 years of area income·Overall A− · #262 of 767
214DwightLivingston County · 4,005 peopleB+2.9 years of area income·Overall C+ · #557 of 767
215AnnaUnion County · 4,096 peopleB+2.5 years of area income·Overall C− · #677 of 767
216Palmyra TownshipLee County · 2,860 peopleB+3.8 years of area income·Overall C+ · #542 of 767
217Rock IslandRock Island County · 36,225 peopleB+1.7 years of area income·Overall D · #719 of 767
218HarrisburgSaline County · 7,922 peopleB+1.8 years of area income·Overall C− · #629 of 767
219Cedar TownshipKnox County · 2,942 peopleB+2.2 years of area income·Overall D · #684 of 767
220LaSalle TownshipLaSalle County · 13,152 peopleB+1.7 years of area income·Overall C · #600 of 767
221East MolineRock Island County · 20,453 peopleB+2.1 years of area income·Overall C− · #640 of 767
222EurekaWoodford County · 5,129 peopleB+3.0 years of area income·Overall A− · #230 of 767
223York TownshipCarroll County · 2,757 peopleB+2.7 years of area income·Overall D · #747 of 767
224Knox TownshipKnox County · 4,785 peopleB+2.5 years of area income·Overall B− · #469 of 767
225QuincyAdams County · 38,918 peopleB+2.8 years of area income·Overall C+ · #562 of 767
226HeyworthMcLean County · 2,869 peopleB+3.3 years of area income·Overall A · #63 of 767
227Summit TownshipEffingham County · 3,723 peopleB+4.0 years of area income·Overall B+ · #305 of 767
228MomenceKankakee County · 3,158 peopleB+2.6 years of area income·Overall C · #585 of 767
229Bowling TownshipRock Island County · 3,366 peopleB3.2 years of area income·Overall B− · #463 of 767
230Mackinaw TownshipTazewell County · 4,231 peopleB2.8 years of area income·Overall A · #150 of 767
231WatsekaIroquois County · 4,510 peopleB1.5 years of area income·Overall D · #703 of 767
232Stookey TownshipSt. Clair County · 8,795 peopleB2.2 years of area income·Overall A− · #226 of 767
233Logan TownshipPeoria County · 3,205 peopleB2.3 years of area income·Overall B− · #478 of 767
234South Moline TownshipRock Island County · 36,062 peopleB2.2 years of area income·Overall C+ · #524 of 767
235Gardner TownshipSangamon County · 4,551 peopleB3.3 years of area income·Overall A− · #274 of 767
236DanvilleVermilion County · 28,138 peopleB1.5 years of area income·Overall D− · #766 of 767
237DeKalbDeKalb County · 40,467 peopleB2.9 years of area income·Overall C− · #654 of 767
238LebanonSt. Clair County · 4,884 peopleB2.2 years of area income·Overall A · #144 of 767
239DixonLee County · 14,582 peopleB2.6 years of area income·Overall C+ · #506 of 767
240East Lincoln TownshipLogan County · 7,589 peopleB2.2 years of area income·Overall B · #393 of 767
241Round Lake ParkLake County · 7,844 peopleB2.5 years of area income·Overall A− · #215 of 767
242BellevilleSt. Clair County · 40,237 peopleB2.0 years of area income·Overall C · #595 of 767
243MolineRock Island County · 42,362 peopleB2.1 years of area income·Overall C · #612 of 767
244Mount ZionMacon County · 5,880 peopleB3.2 years of area income·Overall A · #99 of 767
245Moline TownshipRock Island County · 22,531 peopleB1.8 years of area income·Overall B− · #490 of 767
246BartonvillePeoria County · 5,804 peopleB2.0 years of area income·Overall C+ · #537 of 767
247Amboy TownshipLee County · 2,745 peopleB2.2 years of area income·Overall C · #584 of 767
248Collinsville TownshipMadison County · 35,276 peopleB2.4 years of area income·Overall B · #407 of 767
249HainesvilleLake County · 3,501 peopleB3.2 years of area income·Overall A− · #174 of 767
250Davis JunctionOgle County · 2,566 peopleB3.5 years of area income·Overall B+ · #345 of 767
251South Wheatland TownshipMacon County · 3,859 peopleB2.6 years of area income·Overall B · #420 of 767
252MetamoraWoodford County · 3,857 peopleB3.2 years of area income·Overall A+ · #9 of 767
253WaterlooMonroe County · 11,132 peopleB4.0 years of area income·Overall A+ · #53 of 767
254FultonWhiteside County · 3,540 peopleB2.4 years of area income·Overall B · #441 of 767
255Oakwood TownshipVermilion County · 3,048 peopleB2.0 years of area income·Overall C− · #679 of 767
256Groveland TownshipTazewell County · 18,418 peopleB4.3 years of area income·Overall B · #416 of 767
257Mount VernonJefferson County · 14,187 peopleB2.2 years of area income·Overall D · #736 of 767
258MurphysboroJackson County · 6,977 peopleB2.5 years of area income·Overall D · #749 of 767
259Channahon TownshipWill County · 11,065 peopleB3.6 years of area income·Overall B+ · #333 of 767
260Montebello TownshipHancock County · 3,189 peopleB2.0 years of area income·Overall C+ · #528 of 767
261MarseillesLaSalle County · 4,809 peopleB2.8 years of area income·Overall C+ · #532 of 767
262South Chicago HeightsCook County · 3,884 peopleB1.8 years of area income·Overall D · #688 of 767
263GodfreyMadison County · 17,620 peopleB2.7 years of area income·Overall C+ · #530 of 767
264LaSalleLaSalle County · 9,388 peopleB1.9 years of area income·Overall B · #438 of 767
265Mount Morris TownshipOgle County · 3,639 peopleB1.5 years of area income·Overall B− · #453 of 767
266StegerWill County · 9,352 peopleB1.9 years of area income·Overall C− · #649 of 767
267SpringfieldSangamon County · 112,989 peopleB2.3 years of area income·Overall D · #702 of 767
268HamiltonHancock County · 2,624 peopleB1.8 years of area income·Overall C+ · #548 of 767
269Fulton TownshipWhiteside County · 4,233 peopleB1.9 years of area income·Overall B− · #487 of 767
270Capital TownshipSangamon County · 111,143 peopleB2.1 years of area income·Overall C · #580 of 767
T271GalesburgKnox County · 28,581 peopleB1.9 years of area income·Overall D · #716 of 767
T271Galesburg City TownshipKnox County · 28,581 peopleB1.7 years of area income·Overall D · #713 of 767
273PeotoneWill County · 4,225 peopleB3.7 years of area income·Overall A− · #181 of 767
274Ottawa TownshipLaSalle County · 11,179 peopleB1.9 years of area income·Overall C · #613 of 767
275ByronOgle County · 3,777 peopleB3.5 years of area income·Overall A+ · #39 of 767
276Sharon TownshipFayette County · 2,814 peopleB3.6 years of area income·Overall C+ · #527 of 767
277Whitmore TownshipMacon County · 4,127 peopleB2.0 years of area income·Overall C− · #628 of 767
278Dunham TownshipMcHenry County · 2,783 peopleB2.7 years of area income·Overall B− · #491 of 767
279Carmi TownshipWhite County · 6,003 peopleB2.1 years of area income·Overall C− · #669 of 767
280Hampton TownshipRock Island County · 21,050 peopleB2.9 years of area income·Overall C− · #647 of 767
281Fairview HeightsSt. Clair County · 16,175 peopleB2.5 years of area income·Overall C · #568 of 767
282WilmingtonWill County · 5,614 peopleB3.0 years of area income·Overall B · #371 of 767
283SilvisRock Island County · 7,979 peopleB2.2 years of area income·Overall D · #696 of 767
284Elm Grove TownshipTazewell County · 2,938 peopleB3.2 years of area income·Overall B+ · #311 of 767
285Looking Glass TownshipClinton County · 6,427 peopleB2.5 years of area income·Overall A− · #242 of 767
286South BeloitWinnebago County · 7,996 peopleB3.6 years of area income·Overall B · #428 of 767
287Farmington TownshipFulton County · 3,094 peopleB2.0 years of area income·Overall C · #592 of 767
288East PeoriaTazewell County · 22,088 peopleB2.5 years of area income·Overall C · #575 of 767
289Kingston TownshipDeKalb County · 3,486 peopleB3.0 years of area income·Overall B · #411 of 767
290Manlius TownshipLaSalle County · 6,068 peopleB2.4 years of area income·Overall C+ · #525 of 767
291GenoaDeKalb County · 5,547 peopleB3.5 years of area income·Overall B− · #458 of 767
292Urbana TownshipChampaign County · 7,450 peopleB1.4 years of area income·Overall B− · #493 of 767
293Fondulac TownshipTazewell County · 12,154 peopleB2.3 years of area income·Overall B− · #457 of 767
294Byron TownshipOgle County · 6,398 peopleB2.9 years of area income·Overall A− · #224 of 767
295West Galena TownshipJo Daviess County · 3,143 peopleB−3.2 years of area income·Overall A · #89 of 767
296Newell TownshipVermilion County · 13,326 peopleB−2.0 years of area income·Overall C− · #626 of 767
297CarmiWhite County · 4,623 peopleB−1.9 years of area income·Overall D · #692 of 767
T298MacombMcDonough County · 14,530 peopleB−2.1 years of area income·Overall C · #594 of 767
T298Macomb City TownshipMcDonough County · 14,530 peopleB−2.0 years of area income·Overall C · #581 of 767
300Hickory Point TownshipMacon County · 17,474 peopleB−2.4 years of area income·Overall B− · #500 of 767
301NormalMcLean County · 53,275 peopleB−3.4 years of area income·Overall B+ · #313 of 767
302Rutland TownshipLaSalle County · 3,581 peopleB−3.1 years of area income·Overall C+ · #519 of 767
303Chicago HeightsCook County · 26,508 peopleB−1.9 years of area income·Overall D · #724 of 767
304Morris TownshipGrundy County · 7,356 peopleB−2.3 years of area income·Overall B− · #468 of 767
305Melrose TownshipAdams County · 5,506 peopleB−3.4 years of area income·Overall C · #589 of 767
306DiamondGrundy County · 2,714 peopleB−3.4 years of area income·Overall A · #76 of 767
307Catlin TownshipVermilion County · 3,002 peopleB−2.4 years of area income·Overall B− · #483 of 767
308DixmoorCook County · 2,951 peopleB−1.4 years of area income·Overall D · #728 of 767
309Lafayette TownshipColes County · 4,678 peopleB−3.9 years of area income·Overall D · #686 of 767
T310BloomingtonMcLean County · 78,804 peopleB−3.4 years of area income·Overall A− · #204 of 767
T310Bloomington City TownshipMcLean County · 78,804 peopleB−2.5 years of area income·Overall A− · #188 of 767
312Murphysboro TownshipJackson County · 9,333 peopleB−2.2 years of area income·Overall D · #717 of 767
313Fairmontunincorporated, Will County · 2,617 peopleB−2.1 years of area income·Overall C+ · #547 of 767
314Long Lakeunincorporated, Lake County · 3,307 peopleB−2.9 years of area income·Overall C+ · #521 of 767
315SandwichDeKalb County · 7,380 peopleB−3.6 years of area income·Overall A− · #175 of 767
316Pontoon BeachMadison County · 5,887 peopleB−2.4 years of area income·Overall D− · #759 of 767
317OttawaLaSalle County · 18,684 peopleB−3.0 years of area income·Overall C− · #656 of 767
318Blue IslandCook County · 21,805 peopleB−2.3 years of area income·Overall D · #707 of 767
319GalenaJo Daviess County · 3,210 peopleB−4.1 years of area income·Overall A · #132 of 767
320Hamel TownshipMadison County · 2,774 peopleB−3.9 years of area income·Overall A− · #211 of 767
321RantoulChampaign County · 11,991 peopleB−2.2 years of area income·Overall D− · #763 of 767
322SmithtonSt. Clair County · 3,868 peopleB−3.9 years of area income·Overall A+ · #54 of 767
323MaryvilleMadison County · 8,413 peopleB−4.1 years of area income·Overall A− · #253 of 767
324WinnebagoWinnebago County · 2,903 peopleB−4.2 years of area income·Overall A · #165 of 767
325Sauk VillageCook County · 9,624 peopleB−1.8 years of area income·Overall D · #735 of 767
326Coal ValleyRock Island County · 3,859 peopleB−3.7 years of area income·Overall B+ · #296 of 767
327BeecherWill County · 4,740 peopleB−3.5 years of area income·Overall A− · #200 of 767
328PosenCook County · 5,405 peopleB−2.2 years of area income·Overall C− · #653 of 767
329Saline TownshipMadison County · 6,859 peopleB−3.4 years of area income·Overall A · #139 of 767
330RocktonWinnebago County · 7,870 peopleB−4.4 years of area income·Overall A · #152 of 767
331Peoria City TownshipPeoria County · 95,876 peopleB−1.9 years of area income·Overall C · #623 of 767
332HarvardMcHenry County · 9,504 peopleB−3.1 years of area income·Overall C+ · #533 of 767
333CrestwoodCook County · 10,529 peopleB−2.2 years of area income·Overall C · #596 of 767
334Shiloh TownshipJefferson County · 6,449 peopleB−2.4 years of area income·Overall C− · #678 of 767
335CharlestonColes County · 17,466 peopleB−2.9 years of area income·Overall D · #709 of 767
336Chatham TownshipSangamon County · 8,487 peopleB−2.5 years of area income·Overall A · #167 of 767
337Williams TownshipSangamon County · 3,426 peopleB−3.2 years of area income·Overall A · #64 of 767
338Rockton TownshipWinnebago County · 16,144 peopleB−2.9 years of area income·Overall B+ · #320 of 767
339Ball TownshipSangamon County · 7,588 peopleB−3.9 years of area income·Overall A · #145 of 767
340Chemung TownshipMcHenry County · 9,102 peopleB−2.0 years of area income·Overall C− · #627 of 767
341South Ottawa TownshipLaSalle County · 8,299 peopleB−2.3 years of area income·Overall C− · #648 of 767
342St. Clair TownshipSt. Clair County · 35,372 peopleB−2.5 years of area income·Overall B− · #482 of 767
343Mission TownshipLaSalle County · 3,738 peopleB−3.2 years of area income·Overall C · #602 of 767
344Cincinnati TownshipTazewell County · 8,825 peopleB−2.5 years of area income·Overall C+ · #517 of 767
345MorrisGrundy County · 14,669 peopleB−3.5 years of area income·Overall B · #442 of 767
346TroyMadison County · 11,893 peopleB−4.1 years of area income·Overall A+ · #27 of 767
347Tremont TownshipTazewell County · 2,640 peopleB−3.3 years of area income·Overall A · #114 of 767
348RiverdaleCook County · 10,280 peopleB−1.3 years of area income·Overall D− · #761 of 767
349Washington TownshipTazewell County · 24,235 peopleB−2.8 years of area income·Overall A+ · #43 of 767
350GeneseoHenry County · 6,505 peopleB−3.4 years of area income·Overall A− · #254 of 767
351KankakeeKankakee County · 23,400 peopleB−2.2 years of area income·Overall D− · #765 of 767
352Washington TownshipWill County · 6,498 peopleB−3.1 years of area income·Overall B · #386 of 767
353SwanseaSt. Clair County · 14,356 peopleB−3.3 years of area income·Overall A− · #266 of 767
354RobbinsCook County · 4,588 peopleB−1.3 years of area income·Overall D · #738 of 767
355Ludlow TownshipChampaign County · 4,076 peopleB−2.3 years of area income·Overall C− · #665 of 767
356Blount TownshipVermilion County · 3,322 peopleB−3.5 years of area income·Overall C · #590 of 767
357Fort Russell TownshipMadison County · 9,158 peopleB−3.1 years of area income·Overall B+ · #306 of 767
358New BadenClinton County · 3,378 peopleB−2.8 years of area income·Overall A · #90 of 767
359Limestone TownshipKankakee County · 4,961 peopleB−3.4 years of area income·Overall C · #583 of 767
360Long Creek TownshipMacon County · 10,139 peopleB−3.0 years of area income·Overall B · #399 of 767
361BurnhamCook County · 3,919 peopleB−1.7 years of area income·Overall D · #700 of 767
362Aroma TownshipKankakee County · 4,827 peopleB−2.3 years of area income·Overall D · #745 of 767
363Jarvis TownshipMadison County · 16,209 peopleB−3.5 years of area income·Overall A · #107 of 767
364Greenwood TownshipMcHenry County · 15,270 peopleB−2.8 years of area income·Overall A− · #273 of 767
365Ingalls Parkunincorporated, Will County · 3,015 peopleC+1.7 years of area income·Overall D · #711 of 767
366Park ForestCook County · 21,079 peopleC+1.8 years of area income·Overall C− · #675 of 767
367WaukeganLake County · 87,940 peopleC+2.7 years of area income·Overall C− · #639 of 767
368MarionWilliamson County · 17,148 peopleC+2.8 years of area income·Overall D · #704 of 767
369Joliet TownshipWill County · 86,200 peopleC+2.1 years of area income·Overall D · #722 of 767
370Calumet TownshipCook County · 17,950 peopleC+2.0 years of area income·Overall D · #740 of 767
371Caseyville TownshipSt. Clair County · 34,825 peopleC+1.4 years of area income·Overall B+ · #342 of 767
372Old Town TownshipMcLean County · 3,404 peopleC+4.3 years of area income·Overall A− · #251 of 767
373Bloom TownshipCook County · 83,631 peopleC+2.0 years of area income·Overall C− · #663 of 767
374TolonoChampaign County · 3,499 peopleC+3.9 years of area income·Overall B− · #451 of 767
375Thornton TownshipCook County · 152,667 peopleC+2.0 years of area income·Overall D · #693 of 767
376Calumet CityCook County · 34,798 peopleC+1.7 years of area income·Overall D · #733 of 767
377Fox LakeLake County · 10,849 peopleC+2.9 years of area income·Overall C+ · #509 of 767
378HomewoodCook County · 18,773 peopleC+2.8 years of area income·Overall B · #429 of 767
379FreeburgSt. Clair County · 4,507 peopleC+3.3 years of area income·Overall A · #169 of 767
380Machesney ParkWinnebago County · 22,805 peopleC+3.1 years of area income·Overall D · #737 of 767
381Pecatonica TownshipWinnebago County · 4,115 peopleC+2.7 years of area income·Overall B · #374 of 767
382RockfordWinnebago County · 147,384 peopleC+2.7 years of area income·Overall D− · #767 of 767
383JohnsburgMcHenry County · 6,445 peopleC+4.5 years of area income·Overall B · #377 of 767
384Millstadt TownshipSt. Clair County · 6,490 peopleC+3.1 years of area income·Overall B+ · #363 of 767
385PeoriaPeoria County · 110,920 peopleC+1.9 years of area income·Overall C− · #681 of 767
386LansingCook County · 28,068 peopleC+2.2 years of area income·Overall C− · #668 of 767
387Germantown HillsWoodford County · 3,436 peopleC+4.6 years of area income·Overall A · #135 of 767
388Pistakee Highlandsunincorporated, McHenry County · 3,374 peopleC+2.4 years of area income·Overall B · #392 of 767
389BroadviewCook County · 7,871 peopleC+3.1 years of area income·Overall C+ · #564 of 767
390ChathamSangamon County · 14,579 peopleC+4.1 years of area income·Overall A · #92 of 767
391BelvidereBoone County · 25,462 peopleC+3.9 years of area income·Overall C− · #658 of 767
392Wonder LakeMcHenry County · 5,593 peopleC+3.2 years of area income·Overall A− · #237 of 767
393RochesterSangamon County · 4,093 peopleC+3.9 years of area income·Overall A− · #196 of 767
394Cherry Valley TownshipWinnebago County · 19,268 peopleC+4.5 years of area income·Overall D · #720 of 767
395Ellington TownshipAdams County · 2,719 peopleC+3.6 years of area income·Overall C+ · #550 of 767
396Rochester TownshipSangamon County · 5,700 peopleC+3.2 years of area income·Overall B+ · #330 of 767
397Ganeer TownshipKankakee County · 3,161 peopleC+2.8 years of area income·Overall D · #726 of 767
398Chebanse TownshipIroquois County · 2,782 peopleC+3.2 years of area income·Overall B− · #473 of 767
399Jackson TownshipWill County · 3,890 peopleC+3.0 years of area income·Overall C+ · #518 of 767
400St. Jacob TownshipMadison County · 2,880 peopleC+3.1 years of area income·Overall A · #162 of 767
401Drummer TownshipFord County · 3,914 peopleC+2.3 years of area income·Overall C− · #631 of 767
402SycamoreDeKalb County · 19,083 peopleC+3.5 years of area income·Overall A · #166 of 767
403Gibson CityFord County · 3,371 peopleC+2.7 years of area income·Overall C− · #644 of 767
404Ridgewoodunincorporated, Will County · 2,795 peopleC+1.8 years of area income·Overall D · #748 of 767
405Saratoga TownshipGrundy County · 6,597 peopleC+3.2 years of area income·Overall B+ · #289 of 767
406Winnebago TownshipWinnebago County · 4,965 peopleC+3.0 years of area income·Overall B · #426 of 767
407Plato TownshipKane County · 9,235 peopleC+5.2 years of area income·Overall A · #60 of 767
408AlsipCook County · 18,483 peopleC+3.0 years of area income·Overall C− · #666 of 767
409Radnor TownshipPeoria County · 5,177 peopleC+5.2 years of area income·Overall A+ · #33 of 767
410Crete TownshipWill County · 23,439 peopleC+2.3 years of area income·Overall C+ · #538 of 767
411ColumbiaMonroe County · 10,865 peopleC+4.3 years of area income·Overall A · #70 of 767
412NorthlakeCook County · 12,462 peopleC+3.4 years of area income·Overall C · #574 of 767
413ZionLake County · 24,447 peopleC+2.8 years of area income·Overall D · #698 of 767
414GrayslakeLake County · 21,140 peopleC+4.1 years of area income·Overall A+ · #52 of 767
415Antioch TownshipLake County · 27,763 peopleC+3.1 years of area income·Overall B · #397 of 767
416Green Garden TownshipWill County · 3,851 peopleC+5.6 years of area income·Overall B+ · #328 of 767
417WaucondaLake County · 13,993 peopleC+3.8 years of area income·Overall A · #95 of 767
418CartervilleWilliamson County · 5,839 peopleC+2.8 years of area income·Overall B− · #455 of 767
419Harlem TownshipWinnebago County · 39,287 peopleC+2.7 years of area income·Overall D · #712 of 767
420Hazel CrestCook County · 13,024 peopleC+2.0 years of area income·Overall D · #739 of 767
421Beach ParkLake County · 14,114 peopleC+3.4 years of area income·Overall C · #606 of 767
422Calumet ParkCook County · 6,772 peopleC+2.0 years of area income·Overall D− · #753 of 767
423WoodstockMcHenry County · 25,740 peopleC+3.7 years of area income·Overall A · #101 of 767
424Round Lake HeightsLake County · 2,580 peopleC+3.4 years of area income·Overall B+ · #361 of 767
425Chicago RidgeCook County · 14,036 peopleC+2.7 years of area income·Overall C · #611 of 767
426Prairie Du Long TownshipSt. Clair County · 2,549 peopleC+4.2 years of area income·Overall A− · #267 of 767
427CiceroCook County · 81,858 peopleC+3.1 years of area income·Overall C− · #662 of 767
428MarengoMcHenry County · 7,737 peopleC+4.0 years of area income·Overall B− · #503 of 767
429Loves ParkWinnebago County · 23,712 peopleC+3.0 years of area income·Overall D · #742 of 767
430Glen CarbonMadison County · 13,898 peopleC+4.2 years of area income·Overall A− · #236 of 767
431CarpentersvilleKane County · 37,045 peopleC+3.3 years of area income·Overall B+ · #309 of 767
432North ChicagoLake County · 34,050 peopleC+2.5 years of area income·Overall B+ · #337 of 767
433MillstadtSt. Clair County · 3,950 peopleC+3.7 years of area income·Overall A− · #218 of 767
434AntiochLake County · 15,000 peopleC+3.9 years of area income·Overall A− · #275 of 767
435Yellowhead TownshipKankakee County · 2,549 peopleC+3.5 years of area income·Overall C− · #642 of 767
436Lake VillaLake County · 8,692 peopleC+3.9 years of area income·Overall A · #151 of 767
437Worth TownshipWoodford County · 8,856 peopleC+3.7 years of area income·Overall A− · #214 of 767
438River GroveCook County · 10,409 peopleC+3.6 years of area income·Overall B− · #475 of 767
439MarkhamCook County · 11,274 peopleC+1.7 years of area income·Overall D · #732 of 767
440MortonTazewell County · 17,565 peopleC+4.0 years of area income·Overall A · #141 of 767
441WorthCook County · 10,696 peopleC+2.4 years of area income·Overall C+ · #560 of 767
442MidlothianCook County · 13,841 peopleC+2.6 years of area income·Overall C+ · #549 of 767
443WashingtonTazewell County · 15,902 peopleC+3.3 years of area income·Overall A · #155 of 767
444St. Joseph TownshipChampaign County · 5,436 peopleC+4.0 years of area income·Overall B+ · #288 of 767
445Aurora TownshipKane County · 127,446 peopleC+2.6 years of area income·Overall C+ · #541 of 767
446BradleyKankakee County · 15,214 peopleC+2.7 years of area income·Overall C− · #633 of 767
447JolietWill County · 152,241 peopleC+2.9 years of area income·Overall C− · #667 of 767
448BridgeviewCook County · 16,521 peopleC3.5 years of area income·Overall B+ · #350 of 767
449Sycamore TownshipDeKalb County · 15,039 peopleC3.2 years of area income·Overall A− · #227 of 767
450SummitCook County · 10,753 peopleC3.1 years of area income·Overall C− · #672 of 767
451RosemontCook County · 3,815 peopleC4.4 years of area income·Overall B− · #471 of 767
452DoltonCook County · 20,671 peopleC1.7 years of area income·Overall D− · #757 of 767
453Worth TownshipCook County · 148,514 peopleC3.0 years of area income·Overall C+ · #531 of 767
454St. JosephChampaign County · 3,689 peopleC4.5 years of area income·Overall A · #122 of 767
455ManhattanWill County · 10,943 peopleC4.4 years of area income·Overall A+ · #21 of 767
456ShilohSt. Clair County · 14,604 peopleC3.9 years of area income·Overall A · #156 of 767
457Oak ForestCook County · 26,792 peopleC3.3 years of area income·Overall A− · #193 of 767
T458Cunningham TownshipChampaign County · 39,719 peopleC2.8 years of area income·Overall C · #567 of 767
T458UrbanaChampaign County · 39,719 peopleC3.1 years of area income·Overall C− · #652 of 767
460Manhattan TownshipWill County · 13,099 peopleC3.8 years of area income·Overall A · #124 of 767
461Holiday Shoresunincorporated, Madison County · 2,782 peopleC3.1 years of area income·Overall B · #423 of 767
462Franklin ParkCook County · 18,045 peopleC3.6 years of area income·Overall C+ · #511 of 767
463LynwoodCook County · 9,297 peopleC3.1 years of area income·Overall D · #691 of 767
464CarbondaleJackson County · 21,811 peopleC3.0 years of area income·Overall D · #746 of 767
465CountrysideCook County · 6,260 peopleC4.2 years of area income·Overall A− · #272 of 767
466Grant TownshipLake County · 28,636 peopleC2.8 years of area income·Overall B− · #479 of 767
467McHenry TownshipMcHenry County · 48,110 peopleC2.9 years of area income·Overall B− · #452 of 767
468Burton TownshipMcHenry County · 4,885 peopleC3.9 years of area income·Overall A− · #207 of 767
469StickneyCook County · 6,897 peopleC2.7 years of area income·Overall B− · #485 of 767
470Melrose ParkCook County · 23,936 peopleC3.5 years of area income·Overall C− · #670 of 767
471Crest HillWill County · 20,695 peopleC3.1 years of area income·Overall B · #424 of 767
472Foster TownshipMadison County · 3,871 peopleC2.9 years of area income·Overall D · #752 of 767
473Bremen TownshipCook County · 104,303 peopleC2.4 years of area income·Overall C+ · #534 of 767
474WadsworthLake County · 3,488 peopleC5.1 years of area income·Overall B− · #499 of 767
475CreteWill County · 8,345 peopleC3.3 years of area income·Overall C+ · #515 of 767
476Winthrop HarborLake County · 6,525 peopleC3.5 years of area income·Overall C+ · #553 of 767
477Wauconda TownshipLake County · 23,521 peopleC3.2 years of area income·Overall B+ · #301 of 767
478O'Fallon TownshipSt. Clair County · 26,976 peopleC3.5 years of area income·Overall A · #159 of 767
479University ParkWill County · 7,019 peopleC2.2 years of area income·Overall D · #705 of 767
480Sleepy HollowKane County · 3,122 peopleC5.3 years of area income·Overall A+ · #14 of 767
481Dorr TownshipMcHenry County · 21,614 peopleC2.9 years of area income·Overall A · #138 of 767
482Round Lake BeachLake County · 26,902 peopleC2.8 years of area income·Overall B− · #505 of 767
483Moro TownshipMadison County · 3,492 peopleC3.0 years of area income·Overall B · #431 of 767
484Owen TownshipWinnebago County · 3,601 peopleC3.1 years of area income·Overall D− · #762 of 767
485MascoutahSt. Clair County · 9,239 peopleC3.3 years of area income·Overall A · #116 of 767
486Riley TownshipMcHenry County · 3,017 peopleC4.0 years of area income·Overall B+ · #357 of 767
487MaywoodCook County · 23,330 peopleC2.8 years of area income·Overall D · #714 of 767
488Lemont TownshipCook County · 23,223 peopleC5.3 years of area income·Overall A+ · #25 of 767
489Avon TownshipLake County · 63,208 peopleC2.5 years of area income·Overall B · #401 of 767
490Benton TownshipLake County · 18,769 peopleC2.7 years of area income·Overall C− · #643 of 767
491Hickory HillsCook County · 14,101 peopleC3.8 years of area income·Overall A− · #205 of 767
492Troy TownshipWill County · 50,168 peopleC3.3 years of area income·Overall B · #398 of 767
493Orland HillsCook County · 6,663 peopleC3.8 years of area income·Overall A · #110 of 767
494LyonsCook County · 10,433 peopleC2.8 years of area income·Overall C · #618 of 767
495Bonus TownshipBoone County · 4,390 peopleC3.8 years of area income·Overall D · #699 of 767
496JusticeCook County · 12,285 peopleC3.3 years of area income·Overall C · #608 of 767
497Sangamon TownshipPiatt County · 2,533 peopleC4.6 years of area income·Overall B+ · #349 of 767
498MoneeWill County · 5,119 peopleC2.6 years of area income·Overall C+ · #540 of 767
499Champaign TownshipChampaign County · 11,377 peopleC4.5 years of area income·Overall A− · #280 of 767
500BellwoodCook County · 18,116 peopleC2.8 years of area income·Overall C− · #682 of 767
501Schiller ParkCook County · 11,317 peopleC3.5 years of area income·Overall B · #403 of 767
502Stickney TownshipCook County · 40,266 peopleC3.2 years of area income·Overall C · #604 of 767
503HillsideCook County · 8,140 peopleC3.2 years of area income·Overall C+ · #559 of 767
504Fancy Creek TownshipSangamon County · 5,806 peopleC4.2 years of area income·Overall A− · #208 of 767
505GlenwoodCook County · 8,416 peopleC2.4 years of area income·Overall C− · #680 of 767
506MokenaWill County · 19,897 peopleC5.0 years of area income·Overall A · #69 of 767
507Northville TownshipLaSalle County · 7,316 peopleC3.8 years of area income·Overall B · #433 of 767
508Edwardsville TownshipMadison County · 40,258 peopleC3.5 years of area income·Overall A− · #248 of 767
509Richton ParkCook County · 12,483 peopleC2.5 years of area income·Overall C− · #674 of 767
510Bloomington TownshipMcLean County · 2,629 peopleC3.7 years of area income·Overall B+ · #331 of 767
511Palos HillsCook County · 18,028 peopleC3.3 years of area income·Overall A · #120 of 767
512Campton HillsKane County · 10,894 peopleC7.6 years of area income·Overall A+ · #6 of 767
513Evergreen ParkCook County · 19,283 peopleC3.2 years of area income·Overall C+ · #507 of 767
514Poplar GroveBoone County · 5,206 peopleC4.1 years of area income·Overall B− · #464 of 767
515North RiversideCook County · 7,161 peopleC3.9 years of area income·Overall B · #439 of 767
516Oak LawnCook County · 56,450 peopleC3.3 years of area income·Overall B− · #502 of 767
517LemontCook County · 18,513 peopleC6.5 years of area income·Overall A+ · #13 of 767
518Bourbonnais TownshipKankakee County · 38,541 peopleC3.0 years of area income·Overall C+ · #523 of 767
519AddisonDuPage County · 35,758 peopleC4.2 years of area income·Overall B · #430 of 767
520Leyden TownshipCook County · 90,402 peopleC3.2 years of area income·Overall C+ · #543 of 767
521Hawthorn WoodsLake County · 9,679 peopleC8.3 years of area income·Overall A+ · #2 of 767
522BurbankCook County · 28,578 peopleC3.4 years of area income·Overall C− · #630 of 767
523Proviso TownshipCook County · 147,144 peopleC3.1 years of area income·Overall C+ · #512 of 767
524LakewoodMcHenry County · 4,293 peopleC6.7 years of area income·Overall A+ · #29 of 767
525Harwood HeightsCook County · 8,761 peopleC4.3 years of area income·Overall A · #72 of 767
526ElginKane County · 115,476 peopleC3.7 years of area income·Overall C+ · #526 of 767
527Clarendon HillsDuPage County · 8,681 peopleC7.5 years of area income·Overall A+ · #1 of 767
528Cahokia Heights16,874 peopleC1.4 years of area income·No overall grade
529Palos TownshipCook County · 55,372 peopleC3.5 years of area income·Overall A · #157 of 767
530Rich TownshipCook County · 74,003 peopleC2.5 years of area income·Overall C · #601 of 767
531Medina TownshipPeoria County · 13,863 peopleC4.1 years of area income·Overall A− · #212 of 767
532Frankfort Squareunincorporated, Will County · 9,560 peopleC3.4 years of area income·Overall A− · #255 of 767
533ShermanSangamon County · 4,644 peopleC4.5 years of area income·Overall A+ · #32 of 767
534Candlewick Lakeunincorporated, Boone County · 5,448 peopleC2.5 years of area income·Overall D · #685 of 767
535Villa ParkDuPage County · 21,888 peopleC3.9 years of area income·Overall B+ · #292 of 767
536Crystal LakeMcHenry County · 42,288 peopleC4.2 years of area income·Overall A− · #232 of 767
537BensenvilleDuPage County · 18,525 peopleC3.8 years of area income·Overall B · #446 of 767
538Cherry ValleyWinnebago County · 2,887 peopleC3.4 years of area income·Overall D · #741 of 767
539New Lenox TownshipWill County · 45,290 peopleC4.3 years of area income·Overall A · #149 of 767
540MonticelloPiatt County · 6,080 peopleC−4.4 years of area income·Overall B+ · #293 of 767
541Boulder Hillunincorporated, Kendall County · 8,989 peopleC−2.6 years of area income·Overall C+ · #551 of 767
542Lake Holidayunincorporated, LaSalle County · 5,641 peopleC−3.5 years of area income·Overall B · #418 of 767
543VoloLake County · 6,805 peopleC−4.2 years of area income·Overall A− · #276 of 767
544ForsythMacon County · 3,613 peopleC−5.0 years of area income·Overall B+ · #329 of 767
545Dundee TownshipKane County · 64,737 peopleC−3.1 years of area income·Overall A− · #270 of 767
546ChannahonWill County · 14,530 peopleC−4.3 years of area income·Overall B+ · #326 of 767
547Tinley ParkCook County · 55,140 peopleC−3.7 years of area income·Overall A− · #210 of 767
548Country Club HillsCook County · 16,215 peopleC−2.4 years of area income·Overall D · #725 of 767
549New LenoxWill County · 28,893 peopleC−5.0 years of area income·Overall A · #87 of 767
550WinfieldDuPage County · 10,146 peopleC−4.3 years of area income·Overall A+ · #17 of 767
551Algonquin TownshipMcHenry County · 89,435 peopleC−3.3 years of area income·Overall A− · #238 of 767
552ShorewoodWill County · 18,536 peopleC−4.6 years of area income·Overall B+ · #348 of 767
553Lake Villa TownshipLake County · 40,029 peopleC−4.2 years of area income·Overall B+ · #334 of 767
554Pin Oak TownshipMadison County · 4,533 peopleC−5.6 years of area income·Overall B+ · #302 of 767
555Cortland TownshipDeKalb County · 11,644 peopleC−2.9 years of area income·Overall B− · #460 of 767
556Lockport TownshipWill County · 60,618 peopleC−2.9 years of area income·Overall B · #412 of 767
557BerwynCook County · 55,001 peopleC−3.5 years of area income·Overall C+ · #522 of 767
558Shiloh Valley TownshipSt. Clair County · 12,737 peopleC−3.4 years of area income·Overall A · #170 of 767
559SavoyChampaign County · 9,113 peopleC−5.4 years of area income·Overall B− · #448 of 767
560CaryMcHenry County · 17,932 peopleC−4.2 years of area income·Overall A · #79 of 767
561Roscoe TownshipWinnebago County · 20,256 peopleC−3.6 years of area income·Overall B+ · #315 of 767
562North AuroraKane County · 19,406 peopleC−4.4 years of area income·Overall B · #406 of 767
563McHenryMcHenry County · 29,217 peopleC−3.4 years of area income·Overall B+ · #344 of 767
564Tolono TownshipChampaign County · 6,256 peopleC−4.1 years of area income·Overall B− · #488 of 767
565O'FallonSt. Clair County · 32,656 peopleC−3.9 years of area income·Overall A− · #252 of 767
566Flora TownshipBoone County · 3,011 peopleC−2.3 years of area income·Overall D− · #755 of 767
567Hanover ParkCook County · 36,568 peopleC−3.7 years of area income·Overall A− · #250 of 767
568MundeleinLake County · 32,680 peopleC−4.3 years of area income·Overall A · #142 of 767
569Richmond TownshipMcHenry County · 6,781 peopleC−4.2 years of area income·Overall B · #384 of 767
570Island LakeMcHenry County · 8,047 peopleC−3.4 years of area income·Overall B · #385 of 767
571Kendall TownshipKendall County · 10,154 peopleC−4.0 years of area income·Overall B+ · #308 of 767
572East DundeeKane County · 3,130 peopleC−3.6 years of area income·Overall B− · #467 of 767
573Norwood Park TownshipCook County · 26,584 peopleC−4.2 years of area income·Overall A · #133 of 767
574GilbertsKane County · 9,082 peopleC−4.6 years of area income·Overall A · #112 of 767
575Indian Head ParkCook County · 3,961 peopleC−3.9 years of area income·Overall A · #128 of 767
576StreamwoodCook County · 38,277 peopleC−3.7 years of area income·Overall B+ · #322 of 767
577Hanover TownshipCook County · 97,956 peopleC−3.1 years of area income·Overall B · #444 of 767
578MinookaGrundy County · 12,899 peopleC−4.1 years of area income·Overall A− · #256 of 767
579EdwardsvilleMadison County · 26,463 peopleC−4.1 years of area income·Overall A · #105 of 767
580MattesonCook County · 18,543 peopleC−3.0 years of area income·Overall C · #620 of 767
581RiversideCook County · 8,939 peopleC−6.2 years of area income·Overall A+ · #23 of 767
582Somerset TownshipJackson County · 3,940 peopleC−3.8 years of area income·Overall D− · #764 of 767
583Aux Sable TownshipGrundy County · 15,963 peopleC−3.5 years of area income·Overall B · #437 of 767
584Lake in the HillsMcHenry County · 28,590 peopleC−4.2 years of area income·Overall A− · #180 of 767
585Monee TownshipWill County · 15,375 peopleC−3.9 years of area income·Overall C− · #636 of 767
586Stone ParkCook County · 4,477 peopleC−3.0 years of area income·Overall C · #615 of 767
587Addison TownshipDuPage County · 87,841 peopleC−3.8 years of area income·Overall B · #410 of 767
588AuroraKane County · 181,505 peopleC−3.6 years of area income·Overall B · #422 of 767
589Little Rock TownshipKendall County · 14,921 peopleC−2.7 years of area income·Overall C · #569 of 767
590Western SpringsCook County · 13,588 peopleC−10.0 years of area income·Overall A+ · #4 of 767
591BerkeleyCook County · 5,141 peopleC−3.4 years of area income·Overall C+ · #561 of 767
592Squaw Grove TownshipDeKalb County · 2,717 peopleC−3.4 years of area income·Overall C · #565 of 767
593RomeovilleWill County · 41,281 peopleC−3.6 years of area income·Overall B · #379 of 767
594AlgonquinMcHenry County · 30,824 peopleC−4.6 years of area income·Overall A− · #186 of 767
595BourbonnaisKankakee County · 17,658 peopleC−4.3 years of area income·Overall B− · #474 of 767
596KildeerLake County · 4,683 peopleC−9.6 years of area income·Overall A · #59 of 767
597Mahomet TownshipChampaign County · 14,687 peopleC−4.2 years of area income·Overall B+ · #332 of 767
598Plainfield TownshipWill County · 85,115 peopleC−3.5 years of area income·Overall B · #369 of 767
599LakemoorLake County · 6,449 peopleC−3.3 years of area income·Overall B− · #470 of 767
600LockportWill County · 27,822 peopleC−4.1 years of area income·Overall A · #127 of 767
601PlanoKendall County · 12,677 peopleC−3.4 years of area income·Overall B− · #449 of 767
602Green OaksLake County · 4,082 peopleC−7.4 years of area income·Overall A+ · #55 of 767
603Manteno TownshipKankakee County · 11,202 peopleC−3.6 years of area income·Overall B · #409 of 767
604MantenoKankakee County · 9,201 peopleC−4.5 years of area income·Overall B+ · #300 of 767
T605ChampaignChampaign County · 91,195 peopleC−3.6 years of area income·Overall C− · #624 of 767
T605Champaign City TownshipChampaign County · 91,195 peopleC−3.2 years of area income·Overall B− · #504 of 767
607Kickapoo TownshipPeoria County · 8,209 peopleC−4.1 years of area income·Overall B+ · #336 of 767
608Newport TownshipLake County · 6,768 peopleC−3.9 years of area income·Overall B · #443 of 767
609Lyons TownshipCook County · 112,345 peopleC−3.1 years of area income·Overall A− · #219 of 767
610Elmwood ParkCook County · 23,675 peopleC−3.9 years of area income·Overall B · #404 of 767
611Na-Au-Say TownshipKendall County · 11,233 peopleC−3.7 years of area income·Overall B · #440 of 767
612Forest ParkCook County · 13,829 peopleC−3.2 years of area income·Overall C · #593 of 767
613Glen EllynDuPage County · 28,750 peopleC−6.3 years of area income·Overall A+ · #19 of 767
614Winfield TownshipDuPage County · 46,284 peopleC−5.1 years of area income·Overall B+ · #347 of 767
615Grafton TownshipMcHenry County · 58,301 peopleC−4.0 years of area income·Overall A− · #260 of 767
616BarringtonCook County · 10,586 peopleC−7.0 years of area income·Overall A+ · #16 of 767
617Glendale HeightsDuPage County · 32,655 peopleC−3.6 years of area income·Overall B+ · #360 of 767
618WestchesterCook County · 16,300 peopleC−4.1 years of area income·Overall A− · #264 of 767
619NilesCook County · 30,443 peopleC−3.9 years of area income·Overall B · #381 of 767
620LibertyvilleLake County · 20,701 peopleC−6.9 years of area income·Overall A+ · #7 of 767
621LindenhurstLake County · 14,810 peopleC−4.0 years of area income·Overall A · #143 of 767
622Fremont TownshipLake County · 34,086 peopleC−3.8 years of area income·Overall A− · #173 of 767
623South ElginKane County · 25,656 peopleC−4.1 years of area income·Overall B+ · #295 of 767
624Park RidgeCook County · 38,463 peopleC−6.5 years of area income·Overall A+ · #30 of 767
625Frankfort TownshipWill County · 60,704 peopleC−4.3 years of area income·Overall A · #94 of 767
626Coral TownshipMcHenry County · 3,731 peopleC−4.3 years of area income·Overall B · #390 of 767
627Orland TownshipCook County · 96,641 peopleC−3.8 years of area income·Overall A · #163 of 767
628Des PlainesCook County · 58,772 peopleC−3.9 years of area income·Overall A− · #197 of 767
629RiverwoodsLake County · 3,766 peopleC−11.2 years of area income·Overall A+ · #8 of 767
630Makanda TownshipJackson County · 3,987 peopleC−4.0 years of area income·Overall C · #579 of 767
631CortlandDeKalb County · 4,676 peopleC−3.3 years of area income·Overall C · #566 of 767
632BrookfieldCook County · 18,879 peopleC−4.0 years of area income·Overall A+ · #18 of 767
633Batavia TownshipKane County · 35,974 peopleC−4.2 years of area income·Overall A− · #213 of 767
634RoselleDuPage County · 22,756 peopleC−4.2 years of area income·Overall A− · #247 of 767
635Gages Lakeunincorporated, Lake County · 10,819 peopleC−3.7 years of area income·Overall B+ · #310 of 767
636Fox River GroveMcHenry County · 4,881 peopleC−4.0 years of area income·Overall A · #73 of 767
637WheelingCook County · 38,391 peopleC−2.9 years of area income·Overall B+ · #319 of 767
638MahometChampaign County · 10,516 peopleC−5.4 years of area income·Overall A− · #261 of 767
639South HollandCook County · 20,749 peopleC−2.5 years of area income·Overall D · #743 of 767
640Warren TownshipLake County · 65,343 peopleC−3.6 years of area income·Overall B+ · #362 of 767
641ChicagoCook County · 2,731,585 peopleC−3.7 years of area income·Overall C− · #676 of 767
642Carol StreamDuPage County · 39,315 peopleC−4.2 years of area income·Overall A · #147 of 767
643Prospect HeightsCook County · 15,552 peopleC−3.6 years of area income·Overall A− · #258 of 767
644Libertyville TownshipLake County · 54,621 peopleC−5.1 years of area income·Overall A+ · #40 of 767
645Sugar GroveKane County · 9,381 peopleC−5.1 years of area income·Overall A− · #182 of 767
646Round LakeLake County · 18,526 peopleC−3.6 years of area income·Overall B · #366 of 767
647Blackberry TownshipKane County · 17,903 peopleC−4.8 years of area income·Overall A− · #259 of 767
648Oswego TownshipKendall County · 61,778 peopleC−3.5 years of area income·Overall B+ · #339 of 767
649WarrenvilleDuPage County · 15,211 peopleC−3.9 years of area income·Overall A · #164 of 767
650Buffalo GroveLake County · 42,812 peopleC−4.9 years of area income·Overall A+ · #31 of 767
651Nunda TownshipMcHenry County · 39,031 peopleC−3.5 years of area income·Overall B · #391 of 767
652Wheatland TownshipWill County · 92,693 peopleC−5.4 years of area income·Overall A · #119 of 767
653Campton TownshipKane County · 17,328 peopleC−5.4 years of area income·Overall A · #137 of 767
654Caledonia TownshipBoone County · 7,246 peopleC−5.3 years of area income·Overall C · #621 of 767
655NorridgeCook County · 14,808 peopleC−4.6 years of area income·Overall A− · #257 of 767
656La GrangeCook County · 15,935 peopleC−7.4 years of area income·Overall A+ · #42 of 767
657Du Page TownshipWill County · 88,043 peopleC−3.3 years of area income·Overall B · #388 of 767
658RoscoeWinnebago County · 11,034 peopleC−4.6 years of area income·Overall B+ · #314 of 767
659BataviaKane County · 26,586 peopleC−5.1 years of area income·Overall A · #97 of 767
660GurneeLake County · 30,458 peopleC−4.2 years of area income·Overall B− · #450 of 767
661HuntleyMcHenry County · 29,132 peopleC−4.7 years of area income·Overall A− · #191 of 767
662BartlettDuPage County · 40,855 peopleD4.8 years of area income·Overall A− · #223 of 767
663Lake BluffLake County · 5,563 peopleD7.4 years of area income·Overall A+ · #15 of 767
664Willow SpringsCook County · 5,788 peopleD4.4 years of area income·Overall A · #102 of 767
665Maine TownshipCook County · 136,611 peopleD4.1 years of area income·Overall A− · #176 of 767
666Rolling MeadowsCook County · 23,690 peopleD3.7 years of area income·Overall A− · #279 of 767
667La Grange ParkCook County · 13,453 peopleD5.4 years of area income·Overall A+ · #22 of 767
668NapervilleDuPage County · 153,114 peopleD6.8 years of area income·Overall A+ · #46 of 767
669Wayne TownshipDuPage County · 63,935 peopleD8.6 years of area income·Overall B · #394 of 767
670Ela TownshipLake County · 46,385 peopleD5.9 years of area income·Overall A+ · #34 of 767
671ElburnKane County · 7,084 peopleD5.1 years of area income·Overall A · #86 of 767
672Riverside TownshipCook County · 16,083 peopleD4.6 years of area income·Overall A · #74 of 767
673Sugar Grove TownshipKane County · 21,157 peopleD4.0 years of area income·Overall B · #380 of 767
674Bloomingdale TownshipDuPage County · 111,039 peopleD4.8 years of area income·Overall A− · #265 of 767
675West ChicagoDuPage County · 25,296 peopleD4.3 years of area income·Overall B · #378 of 767
676Scott AFBunincorporated, St. Clair County · 3,957 peopleDbetter than 14% of U.S. towns·Overall A− · #222 of 767
677HinsdaleDuPage County · 17,573 peopleD14.2 years of area income·Overall A+ · #5 of 767
678Wood DaleDuPage County · 14,081 peopleD3.9 years of area income·Overall B · #405 of 767
679Elk Grove TownshipCook County · 93,072 peopleD3.8 years of area income·Overall B+ · #294 of 767
680Elk Grove VillageCook County · 31,885 peopleD4.4 years of area income·Overall B+ · #303 of 767
681Seward TownshipKendall County · 6,806 peopleD3.8 years of area income·Overall B− · #472 of 767
682Schaumburg TownshipCook County · 131,411 peopleD3.6 years of area income·Overall A · #91 of 767
683Orland ParkCook County · 57,954 peopleD4.5 years of area income·Overall A · #168 of 767
684SchaumburgCook County · 77,249 peopleD3.9 years of area income·Overall A− · #233 of 767
685Pingree GroveKane County · 12,545 peopleD4.2 years of area income·Overall A · #103 of 767
686Long GroveLake County · 8,343 peopleD10.5 years of area income·Overall A+ · #44 of 767
687Spring GroveMcHenry County · 5,526 peopleD4.7 years of area income·Overall A · #172 of 767
688OswegoKendall County · 39,948 peopleD4.6 years of area income·Overall A− · #177 of 767
689WoodridgeDuPage County · 34,028 peopleD4.5 years of area income·Overall A · #100 of 767
690DarienDuPage County · 22,032 peopleD5.0 years of area income·Overall A · #75 of 767
691BolingbrookWill County · 74,803 peopleD4.1 years of area income·Overall B · #395 of 767
692Hoffman EstatesCook County · 50,858 peopleD4.4 years of area income·Overall A− · #228 of 767
693Oak ParkCook County · 52,823 peopleD5.3 years of area income·Overall B · #400 of 767
694LisleDuPage County · 23,432 peopleD4.5 years of area income·Overall A+ · #20 of 767
695GenevaKane County · 21,138 peopleD6.1 years of area income·Overall A+ · #47 of 767
696Wheeling TownshipCook County · 154,050 peopleD3.5 years of area income·Overall A− · #199 of 767
697Downers Grove TownshipDuPage County · 149,599 peopleD5.0 years of area income·Overall A · #82 of 767
698WillowbrookDuPage County · 9,126 peopleD3.6 years of area income·Overall A− · #198 of 767
699PalatineCook County · 65,842 peopleD4.3 years of area income·Overall A− · #194 of 767
700Arlington HeightsCook County · 76,216 peopleD5.4 years of area income·Overall A · #88 of 767
701Downers GroveDuPage County · 50,365 peopleD5.5 years of area income·Overall A · #98 of 767
702Vernon TownshipLake County · 71,353 peopleD1.9 years of area income·Overall A+ · #36 of 767
703Mount ProspectCook County · 55,395 peopleD4.9 years of area income·Overall A− · #231 of 767
704BloomingdaleDuPage County · 22,476 peopleD4.1 years of area income·Overall A− · #202 of 767
705Vernon HillsLake County · 26,825 peopleD5.0 years of area income·Overall A · #108 of 767
706MontgomeryKendall County · 21,978 peopleD3.7 years of area income·Overall B− · #480 of 767
707WestmontDuPage County · 24,155 peopleD4.5 years of area income·Overall A · #148 of 767
708West DundeeKane County · 8,570 peopleD4.7 years of area income·Overall A− · #240 of 767
709Milton TownshipDuPage County · 119,815 peopleD5.2 years of area income·Overall A · #121 of 767
710FlossmoorCook County · 9,358 peopleD3.7 years of area income·Overall B− · #456 of 767
711Lake ForestLake County · 19,731 peopleD13.9 years of area income·Overall A+ · #12 of 767
712Lake ZurichLake County · 19,868 peopleD5.5 years of area income·Overall A · #106 of 767
713YorkvilleKendall County · 26,730 peopleD4.5 years of area income·Overall A− · #225 of 767
714Palatine TownshipCook County · 111,179 peopleD4.2 years of area income·Overall A− · #203 of 767
715North BarringtonLake County · 3,125 peopleD9.5 years of area income·Overall A · #83 of 767
716Rutland TownshipKane County · 29,843 peopleD3.7 years of area income·Overall B+ · #352 of 767
717Geneva TownshipKane County · 26,220 peopleD4.8 years of area income·Overall A · #68 of 767
718Grandwood Parkunincorporated, Lake County · 5,262 peopleD3.6 years of area income·Overall B+ · #316 of 767
719LombardDuPage County · 44,399 peopleD4.2 years of area income·Overall B+ · #325 of 767
720Lisle TownshipDuPage County · 119,740 peopleD4.7 years of area income·Overall A · #71 of 767
721Homer TownshipWill County · 41,948 peopleD4.5 years of area income·Overall B+ · #340 of 767
722Palos HeightsCook County · 12,084 peopleD4.5 years of area income·Overall A− · #206 of 767
723Homer GlenWill County · 24,873 peopleD5.9 years of area income·Overall A · #160 of 767
724PlainfieldWill County · 50,043 peopleD4.7 years of area income·Overall A− · #183 of 767
725SkokieCook County · 66,544 peopleD4.7 years of area income·Overall B− · #465 of 767
726St. Charles TownshipKane County · 52,830 peopleD4.5 years of area income·Overall A · #146 of 767
727St. CharlesKane County · 33,594 peopleD5.3 years of area income·Overall A · #153 of 767
728InvernessCook County · 7,418 peopleD9.0 years of area income·Overall A+ · #28 of 767
729Seneca TownshipMcHenry County · 2,862 peopleD4.5 years of area income·Overall B− · #501 of 767
730ElmhurstDuPage County · 46,111 peopleD7.0 years of area income·Overall A · #93 of 767
731York TownshipDuPage County · 128,137 peopleD4.4 years of area income·Overall A− · #220 of 767
732Bristol TownshipKendall County · 36,464 peopleD3.7 years of area income·Overall B+ · #364 of 767
733Deer ParkLake County · 3,647 peopleD8.5 years of area income·Overall A · #62 of 767
734NorthfieldCook County · 5,632 peopleD9.7 years of area income·Overall A+ · #26 of 767
735Barrington TownshipCook County · 16,247 peopleD7.7 years of area income·Overall A · #84 of 767
736Naperville TownshipDuPage County · 107,908 peopleD4.4 years of area income·Overall A · #115 of 767
737WheatonDuPage County · 54,065 peopleD5.6 years of area income·Overall A+ · #49 of 767
738Niles TownshipCook County · 109,978 peopleD4.6 years of area income·Overall B+ · #290 of 767
739Shields TownshipLake County · 41,282 peopleD6.8 years of area income·Overall A− · #209 of 767
740ItascaDuPage County · 9,488 peopleD4.9 years of area income·Overall A+ · #24 of 767
741FrankfortWill County · 21,365 peopleD5.5 years of area income·Overall A · #65 of 767
742HighwoodLake County · 5,323 peopleD5.5 years of area income·Overall B+ · #298 of 767
743Palos ParkCook County · 4,805 peopleD6.2 years of area income·Overall A · #140 of 767
744Morton GroveCook County · 24,582 peopleD4.9 years of area income·Overall A− · #239 of 767
745River ForestCook County · 11,393 peopleD8.0 years of area income·Overall A− · #241 of 767
746South BarringtonCook County · 5,071 peopleD12.7 years of area income·Overall A+ · #41 of 767
747WinnetkaCook County · 12,518 peopleD21.3 years of area income·Overall A+ · #10 of 767
748Moraine TownshipLake County · 34,725 peopleD6.4 years of area income·Overall A · #58 of 767
749Oakbrook TerraceDuPage County · 2,792 peopleD4.6 years of area income·Overall B+ · #321 of 767
750LincolnshireLake County · 7,963 peopleD8.2 years of area income·Overall A · #66 of 767
751Cuba TownshipLake County · 17,247 peopleD6.2 years of area income·Overall A · #171 of 767
752NorthbrookCook County · 34,744 peopleD7.8 years of area income·Overall A · #61 of 767
753Highland ParkLake County · 30,767 peopleD−8.8 years of area income·Overall A · #57 of 767
754New Trier TownshipCook County · 56,118 peopleD−10.6 years of area income·Overall A+ · #45 of 767
755WilmetteCook County · 27,459 peopleD−11.1 years of area income·Overall A · #67 of 767
756West Deerfield TownshipLake County · 32,111 peopleD−7.9 years of area income·Overall A · #85 of 767
757HampshireKane County · 9,266 peopleD−4.6 years of area income·Overall A− · #268 of 767
758GlenviewCook County · 47,711 peopleD−7.6 years of area income·Overall A− · #192 of 767
759Northfield TownshipCook County · 89,835 peopleD−9.7 years of area income·Overall A · #117 of 767
760Burr RidgeDuPage County · 11,179 peopleD−9.4 years of area income·Overall A · #80 of 767
761DeerfieldLake County · 19,642 peopleD−7.2 years of area income·Overall A+ · #51 of 767
762EvanstonCook County · 76,380 peopleD−5.4 years of area income·Overall B · #419 of 767
763Oak BrookDuPage County · 8,108 peopleD−10.9 years of area income·Overall B− · #462 of 767
764Olympia FieldsCook County · 4,593 peopleD−3.8 years of area income·Overall D · #706 of 767
765LincolnwoodCook County · 13,039 peopleD−6.3 years of area income·Overall B · #368 of 767
766Barrington HillsCook County · 4,086 peopleD−12.0 years of area income·Overall A · #77 of 767
767GlencoeCook County · 8,724 peopleD−18.5 years of area income·Overall A+ · #11 of 767
768Lake BarringtonLake County · 5,130 peopleD−6.1 years of area income·Overall B+ · #299 of 767
Quick answers

Questions people ask

What is the most affordable town in Illinois?

Mount Olive Township (Macoupin County) ranks first on cost of living among 768 towns, with an A+; Gillespie and Virden follow.

How are these towns ranked?

The Cost of living grade: home values, rent and property-tax bills against the income of the town’s metro area or county, and the share of households paying 30%+ of income for housing (Census ACS). Towns are sorted on the grade’s score; the letter and rank are the same as on each town’s page. How grades work.

Why isn’t my town on this list?

The list covers towns of 2,500+ residents with a cost of living grade (768 in Illinois). Smaller towns have the grade on their page but no rank. Every town is on the Illinois page.

Go deeper

More Illinois lists

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

All Illinois rankings →
Other states

Most affordable towns in other states