Best suburbs of St. Louis

We scored all 58 towns and communities of 10,000+ people in the St. Louis, MO-IL metro area on what most people weigh when they pick a suburb: what homes cost compared with local pay, household income, poverty, commute times, education, homeownership and how many families with kids live there. Dardenne Prairie, Troy and Town and Country come out on top.

Hazelwood: #58, score 18Jennings: #57, score 29Bellefontaine Neighbors: #56, score 33East St. Louis: #55, score 33Ferguson: #54, score 34University City: #53, score 34Festus: #52, score 35Spanish Lake: #51, score 35Mehlville: #50, score 35Troy: #49, score 37St. Ann: #48, score 39Belleville: #47, score 39Collinsville: #46, score 40Alton: #45, score 40Florissant: #44, score 40Wood River: #43, score 42Centralia: #42, score 42Edwardsville: #41, score 42Bridgeton: #40, score 43Lemay: #39, score 43Granite City: #38, score 43St. Charles: #37, score 44Arnold: #36, score 45Highland: #35, score 46Union: #34, score 46Overland: #33, score 49Fairview Heights: #32, score 50Affton: #31, score 50Oakville: #30, score 50Ellisville: #29, score 52Eureka: #28, score 52Clayton: #27, score 52Concord: #26, score 52Creve Coeur: #25, score 52Washington: #24, score 53Glen Carbon: #23, score 54Shiloh: #22, score 54Maryland Heights: #21, score 55Swansea: #20, score 56Godfrey: #19, score 57Old Jamestown: #18, score 57St. Peters: #17, score 57Waterloo: #16, score 58Manchester: #15, score 60Lake St. Louis: #14, score 60O'Fallon: #13, score 60Wentzville: #12, score 61O'Fallon: #11, score 62Columbia: #10, score 63Ballwin: #9, score 63Kirkwood: #8, score 65Chesterfield: #7, score 65Wildwood: #6, score 66Crestwood: #5, score 67Webster Groves: #4, score 67Town and Country: #3, score 72Troy: #2, score 72Dardenne Prairie: #1, score 801. Dardenne Prairie2. Troy3. Town and Country4. Webster Groves5. Crestwood6. Wildwood7. Chesterfield8. Kirkwood9. Ballwin10. ColumbiaSt. Louis
top 10 upper half lower half St. Louis. Dot size shows population.

The top 25

#PlaceScorePopulationMedian homeHome vs incomeHousehold incomeCommutePovertyMiles away
1Dardenne Prairie, MO8015,032$432,0002.8×$152,50024.0 min1.3%26
2Troy, IL7211,893$268,0002.4×$112,43425.7 min2.0%20
3Town and Country, MO7211,619$928,5004.0×$232,53420.3 min1.7%13
4Webster Groves, MO6723,450$387,6003.4×$115,22719.0 min4.2%7
5Crestwood, MO6712,207$319,6003.0×$107,16920.2 min5.5%9
6Wildwood, MO6634,955$495,8003.1×$161,06027.3 min2.2%23
7Chesterfield, MO6549,309$472,5003.6×$133,03721.6 min3.9%18
8Kirkwood, MO6529,331$451,4003.7×$121,27020.4 min5.3%10
9Ballwin, MO6330,901$377,1003.0×$124,62625.5 min4.8%17
10Columbia, IL6310,865$293,0002.7×$107,60626.4 min5.4%12
11O'Fallon, MO6296,101$326,2003.0×$110,44325.5 min5.4%28
12Wentzville, MO6149,495$331,3002.9×$112,39427.8 min5.4%36
13O'Fallon, IL6032,656$295,7002.8×$105,98225.3 min6.2%18
14Lake St. Louis, MO6019,129$405,9003.2×$125,69325.6 min4.3%31
15Manchester, MO6018,069$323,1003.3×$97,80121.4 min6.4%15
16Waterloo, IL5811,132$249,5002.5×$98,71126.8 min5.9%21
17St. Peters, MO5761,479$269,9002.9×$91,63722.7 min5.6%22
18Old Jamestown, MO5720,651$236,1002.4×$99,52129.1 min7.4%14
19Godfrey, IL5717,620$192,2002.0×$94,54325.7 min6.4%22
20Swansea, IL5614,356$223,6002.4×$91,58724.1 min8.7%15
21Maryland Heights, MO5527,559$227,0002.6×$86,43621.4 min4.7%13
22Shiloh, IL5414,604$274,0002.8×$99,57324.6 min6.8%19
23Glen Carbon, IL5413,898$282,0002.9×$97,16826.4 min4.9%16
24Washington, MO5315,906$231,8002.9×$79,17321.1 min7.9%42
25Creve Coeur, MO5218,480$614,0004.8×$127,18818.5 min6.1%11
Show all 58 places
#PlaceScorePopulationMedian homeHome vs incomeHousehold incomeCommutePovertyMiles away
26Concord, MO5218,368$303,6003.4×$89,03824.1 min3.9%10
27Clayton, MO5217,807$830,0006.7×$123,00016.6 min8.0%5
28Eureka, MO5213,422$379,2003.5×$108,39427.0 min7.9%24
29Ellisville, MO5210,315$366,6003.2×$113,30927.9 min4.6%19
30Oakville, MO5035,333$318,6003.0×$106,36227.6 min6.4%13
31Affton, MO5019,052$212,4002.7×$79,53923.5 min6.6%7
32Fairview Heights, IL5016,175$177,7002.2×$80,93022.0 min8.8%13
33Overland, MO4915,474$131,9002.1×$61,77320.2 min9.7%8
34Union, MO4613,445$205,2002.8×$73,43524.2 min8.1%43
35Highland, IL4610,042$202,9002.5×$82,55127.3 min6.0%32
36Arnold, MO4520,994$220,0002.8×$78,37027.2 min8.2%16
37St. Charles, MO4472,561$298,7003.5×$85,93721.6 min7.3%18
38Granite City, IL4326,807$104,3001.8×$59,20522.1 min14.8%9
39Lemay, MO4316,228$152,2002.5×$60,39923.7 min14.7%7
40Bridgeton, MO4311,277$237,7003.3×$72,00521.2 min11.5%13
41Edwardsville, IL4226,463$299,8003.5×$86,72122.8 min11.6%17
42Centralia, IL4211,863$89,6001.9×$47,80719.0 min24.3%61
43Wood River, IL4210,224$108,1001.7×$62,70323.7 min13.9%18
44Florissant, MO4051,124$148,8002.3×$65,31825.8 min10.1%12
45Alton, IL4025,013$103,7001.9×$54,56822.7 min21.0%19
46Collinsville, IL4023,717$163,6002.4×$67,61224.2 min12.0%13
47Belleville, IL3940,237$141,3002.2×$63,53525.1 min14.6%16
48St. Ann, MO3912,617$126,6002.4×$52,32321.1 min13.0%10
49Troy, MO3715,201$226,5002.9×$79,01229.0 min13.6%45
50Mehlville, MO3529,805$218,4003.3×$67,07122.8 min7.8%10
51Spanish Lake, MO3517,873$135,6002.4×$55,92024.6 min14.8%11
52Festus, MO3514,066$223,6003.0×$73,53226.4 min17.1%30
53University City, MO3434,657$306,7003.8×$80,69421.5 min14.5%5
54Ferguson, MO3417,953$109,9002.3×$47,52424.0 min24.2%8
55East St. Louis, IL3317,682$52,6001.5×$35,70023.3 min32.8%6
56Bellefontaine Neighbors, MO3310,368$99,7002.0×$49,17026.5 min21.4%8
57Jennings, MO2913,093$68,8001.8×$38,98426.7 min25.2%6
58Hazelwood, MO1824,849$167,4003.0×$55,90827.4 min15.9%14

Most affordable homes

  1. East St. Louis 1.5 years of income, $52,600
  2. Wood River 1.7 years of income, $108,100
  3. Granite City 1.8 years of income, $104,300
  4. Jennings 1.8 years of income, $68,800
  5. Centralia 1.9 years of income, $89,600

Most families with kids

  1. Wentzville 44.7% of households
  2. Troy 41.0% of households
  3. Dardenne Prairie 40.3% of households
  4. Eureka 40.2% of households
  5. Festus 38.8% of households

How the score works

For each measure we rank the 58 places from worst to best within this metro area, then combine the ranks with these weights: home value compared with household income (20%), household income (15%), poverty rate (15%), average commute (15%), share of adults with a bachelor's degree (10%), homeownership (10%), households with children (10%) and population growth since 2020 (5%). Unincorporated communities have no official growth estimate, so they get the middle value for that part. A score of 100 would mean first on every measure.

Everything comes from the Census Bureau: the American Community Survey 2020-2024 and the 2025 population estimates. We leave out crime and school ratings because comparable official data for every town does not exist; check local school district and police data for the places on your shortlist.

Frequently asked questions

What are the best suburbs of St. Louis?

On our data-only score, Dardenne Prairie, Troy and Town and Country rank highest among 58 places of 10,000+ people in the St. Louis, MO-IL metro area.

What is the most affordable suburb of St. Louis?

East St. Louis has the lowest ratio of median home value to household income (1.5 years), with a median home of $52,600.

Which St. Louis suburb has the shortest commute?

Clayton, where the average commute is 16.6 minutes each way.

Back to the St. Louis city profile, or see the best suburbs of other big cities.

Places are incorporated cities, towns and villages plus census-designated places with 10,000 or more residents, assigned to the metro area by county (OMB 2023 delineations). Distances are straight lines from the center of St. Louis. The Census Bureau caps published medians at $250,000 for income and $2,000,000 for home values, shown with a plus sign.