Guest, Sign inJoin
Brentwood, MissouriBrentwood, #1 on this list · Photo: LittleT889 · CC BY-SA 4.0
Missouri rankings · Schools

Towns with the best schools in Missouri

Brentwood ranks first on schools among Missouri’s 247 towns of 2,500+; 87 of the 247 grade A− or better (schools are graded within each state).

The Schools grade: state test results and graduation rates of the districts serving each town, compared with the state’s other districts (U.S. Department of Education). How grades work

#1

Brentwood

St. Louis County · 8,079 people
A+

Schools grade, graded within the state·Overall A− · #48 of 247 in MO

#2

Marceline Township

Linn County · 2,589 people
A+

Schools grade, graded within the state·Overall A− · #52 of 247 in MO

#3

Clayton

St. Louis County · 17,807 people
A+

Schools grade, graded within the state·Overall A · #14 of 247 in MO

All 247 towns

Schools grade, best first (graded within Missouri). Towns with the same score share a rank (T = tied; 93 towns here); the overall grade and state rank are beside each.

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

#TownGradeOverall
1BrentwoodSt. Louis County · 8,079 peopleA+graded within the state·Overall A− · #48 of 247
2Marceline TownshipLinn County · 2,589 peopleA+graded within the state·Overall A− · #52 of 247
3ClaytonSt. Louis County · 17,807 peopleA+graded within the state·Overall A · #14 of 247
T4FrontenacSt. Louis County · 3,790 peopleA+graded within the state·Overall A− · #50 of 247
T4LadueSt. Louis County · 8,934 peopleA+graded within the state·Overall A · #18 of 247
T4OlivetteSt. Louis County · 8,937 peopleA+graded within the state·Overall A · #13 of 247
7Richmond HeightsSt. Louis County · 9,093 peopleA+graded within the state·Overall B · #96 of 247
T8GlendaleSt. Louis County · 6,060 peopleA+graded within the state·Overall A+ · #1 of 247
T8KirkwoodSt. Louis County · 29,331 peopleA+graded within the state·Overall A− · #34 of 247
10NixaChristian County · 26,597 peopleA+graded within the state·Overall A · #12 of 247
T11Rock HillSt. Louis County · 4,668 peopleA+graded within the state·Overall A− · #29 of 247
T11Webster GrovesSt. Louis County · 23,450 peopleA+graded within the state·Overall A · #8 of 247
13FestusJefferson County · 14,066 peopleA+graded within the state·Overall B+ · #73 of 247
T14CottlevilleSt. Charles County · 6,717 peopleA+graded within the state·Overall A+ · #4 of 247
T14Weldon SpringSt. Charles County · 5,301 peopleA+graded within the state·Overall A− · #55 of 247
16OzarkChristian County · 23,544 peopleAgraded within the state·Overall B+ · #64 of 247
T17Clarkson ValleySt. Louis County · 2,540 peopleAgraded within the state·Overall A− · #38 of 247
T17EllisvilleSt. Louis County · 10,315 peopleAgraded within the state·Overall A− · #35 of 247
T17EurekaSt. Louis County · 13,422 peopleAgraded within the state·Overall A− · #46 of 247
T17WildwoodSt. Louis County · 34,955 peopleAgraded within the state·Overall A · #21 of 247
21St. PetersSt. Charles County · 61,479 peopleAgraded within the state·Overall A− · #43 of 247
22Valley ParkSt. Louis County · 6,767 peopleAgraded within the state·Overall B · #103 of 247
23KearneyClay County · 11,296 peopleAgraded within the state·Overall A · #7 of 247
24Creve CoeurSt. Louis County · 18,480 peopleAgraded within the state·Overall B+ · #65 of 247
25Des PeresSt. Louis County · 9,102 peopleAgraded within the state·Overall B+ · #78 of 247
T26BallwinSt. Louis County · 30,901 peopleAgraded within the state·Overall A+ · #5 of 247
T26ChesterfieldSt. Louis County · 49,309 peopleAgraded within the state·Overall A · #27 of 247
28RepublicGreene County · 22,404 peopleAgraded within the state·Overall B+ · #69 of 247
29St. PaulSt. Charles County · 3,849 peopleAgraded within the state·Overall A · #26 of 247
30FentonSt. Louis County · 4,060 peopleAgraded within the state·Overall A− · #44 of 247
31SmithvilleClay County · 11,160 peopleAgraded within the state·Overall A · #24 of 247
T32ManchesterSt. Louis County · 18,069 peopleAgraded within the state·Overall A− · #33 of 247
T32Town and CountrySt. Louis County · 11,619 peopleAgraded within the state·Overall A · #28 of 247
T34OronogoJasper County · 3,204 peopleAgraded within the state·Overall A · #19 of 247
T34Webb CityJasper County · 13,459 peopleAgraded within the state·Overall C+ · #136 of 247
36PotosiWashington County · 2,568 peopleAgraded within the state·Overall C− · #190 of 247
37MaplewoodSt. Louis County · 8,033 peopleAgraded within the state·Overall B+ · #68 of 247
38HerculaneumJefferson County · 5,402 peopleAgraded within the state·Overall B+ · #61 of 247
T39Dardenne PrairieSt. Charles County · 15,032 peopleAgraded within the state·Overall A− · #41 of 247
T39O'FallonSt. Charles County · 96,101 peopleAgraded within the state·Overall A · #23 of 247
41Grain ValleyJackson County · 16,908 peopleAgraded within the state·Overall B+ · #76 of 247
42Blue SpringsJackson County · 61,632 peopleAgraded within the state·Overall B · #84 of 247
43ShrewsburySt. Louis County · 6,231 peopleAgraded within the state·Overall B · #90 of 247
T44GreenwoodJackson County · 6,315 peopleAgraded within the state·Overall A · #6 of 247
T44Lake LotawanaJackson County · 2,756 peopleAgraded within the state·Overall B+ · #57 of 247
T44Lee's SummitJackson County · 107,514 peopleAgraded within the state·Overall B · #81 of 247
47LawsonRay County · 2,541 peopleAgraded within the state·Overall A− · #53 of 247
48PortagevilleNew Madrid County · 2,702 peopleAgraded within the state·Overall C− · #177 of 247
49ChillicotheLivingston County · 9,114 peopleAgraded within the state·Overall B · #92 of 247
T50CrestwoodSt. Louis County · 12,207 peopleAgraded within the state·Overall A · #11 of 247
T50Sappingtonunincorporated, St. Louis County · 7,367 peopleAgraded within the state·Overall A · #20 of 247
T50Sunset HillsSt. Louis County · 9,075 peopleAgraded within the state·Overall B+ · #63 of 247
53Maryland HeightsSt. Louis County · 27,559 peopleAgraded within the state·Overall A · #22 of 247
T54Lake St. LouisSt. Charles County · 19,129 peopleAgraded within the state·Overall A− · #31 of 247
T54WentzvilleSt. Charles County · 49,495 peopleAgraded within the state·Overall A− · #54 of 247
56FarmingtonSt. Francois County · 19,226 peopleA−graded within the state·Overall C− · #196 of 247
57CubaCrawford County · 3,288 peopleA−graded within the state·Overall B · #95 of 247
58CaliforniaMoniteau County · 4,523 peopleA−graded within the state·Overall A− · #36 of 247
T59Country ClubAndrew County · 2,512 peopleA−graded within the state·Overall B · #85 of 247
T59SavannahAndrew County · 5,107 peopleA−graded within the state·Overall A · #9 of 247
61Liberty TownshipStoddard County · 14,741 peopleA−graded within the state·Overall B− · #116 of 247
62Crystal CityJefferson County · 4,694 peopleA−graded within the state·Overall A · #17 of 247
T63ParkvillePlatte County · 9,093 peopleA−graded within the state·Overall A− · #42 of 247
T63RiversidePlatte County · 4,581 peopleA−graded within the state·Overall D · #208 of 247
65ForsythTaney County · 2,752 peopleA−graded within the state·Overall C+ · #121 of 247
66BrookfieldLinn County · 4,083 peopleA−graded within the state·Overall B · #87 of 247
67BransonTaney County · 12,921 peopleA−graded within the state·Overall D · #219 of 247
68Ste. GenevieveSte. Genevieve County · 5,065 peopleA−graded within the state·Overall B · #83 of 247
T69Knob NosterJohnson County · 2,997 peopleA−graded within the state·Overall A− · #56 of 247
T69Whiteman AFBunincorporated, Johnson County · 3,517 peopleA−graded within the state·Overall C · #160 of 247
71JacksonCape Girardeau County · 16,033 peopleA−graded within the state·Overall A− · #51 of 247
72Platte CityPlatte County · 4,911 peopleA−graded within the state·Overall B · #97 of 247
73LibertyClay County · 31,319 peopleA−graded within the state·Overall B+ · #66 of 247
74WillardGreene County · 6,904 peopleA−graded within the state·Overall A− · #49 of 247
75Pike TownshipStoddard County · 3,577 peopleA−graded within the state·Overall B− · #117 of 247
76StraffordGreene County · 2,789 peopleA−graded within the state·Overall C+ · #125 of 247
77WashingtonFranklin County · 15,906 peopleA−graded within the state·Overall B+ · #71 of 247
78Pleasant HillCass County · 8,956 peopleA−graded within the state·Overall A− · #47 of 247
79Duck Creek TownshipStoddard County · 3,016 peopleA−graded within the state·Overall C+ · #129 of 247
80Castor TownshipStoddard County · 4,651 peopleA−graded within the state·Overall B− · #120 of 247
81EldonMiller County · 4,785 peopleA−graded within the state·Overall B− · #107 of 247
82CentraliaBoone County · 4,767 peopleA−graded within the state·Overall A− · #37 of 247
83Wright CityWarren County · 5,854 peopleA−graded within the state·Overall B+ · #80 of 247
84DexterStoddard County · 7,851 peopleA−graded within the state·Overall C · #146 of 247
T85GladstoneClay County · 27,497 peopleA−graded within the state·Overall B · #89 of 247
T85North Kansas CityClay County · 5,613 peopleA−graded within the state·Overall C · #152 of 247
T85Pleasant ValleyClay County · 2,747 peopleA−graded within the state·Overall A · #16 of 247
T88MaryvilleNodaway County · 10,092 peopleB+graded within the state·Overall B · #94 of 247
T88Polk TownshipNodaway County · 13,673 peopleB+graded within the state·Overall B · #82 of 247
90Monroe CityMonroe County · 2,714 peopleB+graded within the state·Overall B · #105 of 247
91BolivarPolk County · 11,994 peopleB+graded within the state·Overall C+ · #138 of 247
92Osage BeachCamden County · 5,079 peopleB+graded within the state·Overall C− · #171 of 247
93AshlandBoone County · 5,221 peopleB+graded within the state·Overall A · #15 of 247
94St. JamesPhelps County · 3,925 peopleB+graded within the state·Overall C+ · #126 of 247
T95Concordunincorporated, St. Louis County · 18,368 peopleB+graded within the state·Overall A− · #32 of 247
T95Green ParkSt. Louis County · 2,670 peopleB+graded within the state·Overall A+ · #2 of 247
97St. CharlesSt. Charles County · 72,561 peopleB+graded within the state·Overall B+ · #60 of 247
98Oak GroveJackson County · 9,370 peopleB+graded within the state·Overall B · #98 of 247
99ArnoldJefferson County · 20,994 peopleB+graded within the state·Overall B+ · #62 of 247
100AvaDouglas County · 3,231 peopleB+graded within the state·Overall C+ · #139 of 247
101BattlefieldGreene County · 6,361 peopleB+graded within the state·Overall A− · #45 of 247
102CamdentonCamden County · 4,050 peopleB+graded within the state·Overall C− · #180 of 247
T103Fort Leonard Woodunincorporated, Pulaski County · 15,432 peopleB+graded within the state·Overall B · #86 of 247
T103St. RobertPulaski County · 5,602 peopleB+graded within the state·Overall C · #153 of 247
T103WaynesvillePulaski County · 5,558 peopleB+graded within the state·Overall C · #166 of 247
106RogersvilleWebster County · 5,754 peopleB+graded within the state·Overall B+ · #77 of 247
107OdessaLafayette County · 5,721 peopleB+graded within the state·Overall A+ · #3 of 247
108CleverChristian County · 3,143 peopleB+graded within the state·Overall B+ · #67 of 247
109Carl JunctionJasper County · 8,484 peopleB+graded within the state·Overall B− · #106 of 247
110Mountain GroveWright County · 4,754 peopleB+graded within the state·Overall C · #155 of 247
111PalmyraMarion County · 3,649 peopleB+graded within the state·Overall A · #10 of 247
112HannibalMarion County · 16,804 peopleB+graded within the state·Overall C · #157 of 247
113SedaliaPettis County · 22,621 peopleB+graded within the state·Overall C · #165 of 247
114Poplar BluffButler County · 16,295 peopleB+graded within the state·Overall C− · #191 of 247
115Bowling GreenPike County · 4,472 peopleB+graded within the state·Overall B− · #118 of 247
116VersaillesMorgan County · 2,713 peopleB+graded within the state·Overall C · #164 of 247
T117CameronClinton County · 7,341 peopleB+graded within the state·Overall C+ · #135 of 247
T117Grand River TownshipDeKalb County · 3,258 peopleB+graded within the state·Overall B · #101 of 247
119West PlainsHowell County · 12,780 peopleB+graded within the state·Overall D · #220 of 247
120Terre du Lacunincorporated, St. Francois County · 2,516 peopleB+graded within the state·Overall B · #88 of 247
121De SotoJefferson County · 6,527 peopleB+graded within the state·Overall C · #167 of 247
122HillsboroJefferson County · 3,493 peopleBgraded within the state·Overall B · #104 of 247
123SpringfieldGreene County · 169,847 peopleBgraded within the state·Overall C− · #176 of 247
T124Moscow MillsLincoln County · 4,388 peopleBgraded within the state·Overall B · #100 of 247
T124TroyLincoln County · 15,201 peopleBgraded within the state·Overall B+ · #79 of 247
126MonettBarry County · 10,248 peopleBgraded within the state·Overall C− · #178 of 247
T127Mehlvilleunincorporated, St. Louis County · 29,805 peopleBgraded within the state·Overall A− · #40 of 247
T127Oakvilleunincorporated, St. Louis County · 35,333 peopleBgraded within the state·Overall B+ · #58 of 247
129TrentonGrundy County · 5,557 peopleBgraded within the state·Overall B− · #112 of 247
T130LickingTexas County · 2,958 peopleBgraded within the state·Overall C+ · #134 of 247
T130Sherrill TownshipTexas County · 5,574 peopleBgraded within the state·Overall C− · #192 of 247
132MarshfieldWebster County · 8,078 peopleBgraded within the state·Overall B− · #113 of 247
133Lemayunincorporated, St. Louis County · 16,228 peopleBgraded within the state·Overall B+ · #70 of 247
134HollisterTaney County · 4,690 peopleBgraded within the state·Overall C+ · #143 of 247
T135PeculiarCass County · 6,365 peopleBgraded within the state·Overall B · #102 of 247
T135RaymoreCass County · 26,633 peopleBgraded within the state·Overall B+ · #75 of 247
137Mountain ViewHowell County · 2,661 peopleBgraded within the state·Overall C− · #189 of 247
138CassvilleBarry County · 3,301 peopleBgraded within the state·Overall C− · #183 of 247
139RollaPhelps County · 20,588 peopleBgraded within the state·Overall C · #148 of 247
140Mount VernonLawrence County · 4,835 peopleBgraded within the state·Overall B− · #108 of 247
141KirksvilleAdair County · 17,863 peopleBgraded within the state·Overall B− · #119 of 247
142WarrensburgJohnson County · 20,283 peopleBgraded within the state·Overall B− · #109 of 247
T143ButlerBates County · 4,317 peopleBgraded within the state·Overall D · #218 of 247
T143Mount Pleasant TownshipBates County · 5,093 peopleBgraded within the state·Overall C− · #175 of 247
145ClintonHenry County · 9,504 peopleBgraded within the state·Overall D · #205 of 247
146Excelsior SpringsClay County · 10,819 peopleBgraded within the state·Overall C+ · #133 of 247
147OwensvilleGasconade County · 2,802 peopleBgraded within the state·Overall C+ · #124 of 247
148NeoshoNewton County · 14,078 peopleBgraded within the state·Overall C · #151 of 247
149SullivanFranklin County · 6,942 peopleB−graded within the state·Overall C · #149 of 247
T150Gray Summitunincorporated, Franklin County · 2,991 peopleB−graded within the state·Overall B · #93 of 247
T150PacificFranklin County · 7,824 peopleB−graded within the state·Overall C+ · #131 of 247
T150Villa Ridgeunincorporated, Franklin County · 2,835 peopleB−graded within the state·Overall C · #147 of 247
T153Holts SummitCallaway County · 4,773 peopleB−graded within the state·Overall B+ · #74 of 247
T153Jefferson CityCole County · 42,489 peopleB−graded within the state·Overall B− · #110 of 247
155LebanonLaclede County · 15,663 peopleB−graded within the state·Overall D · #231 of 247
156Park HillsSt. Francois County · 8,753 peopleB−graded within the state·Overall C · #145 of 247
157UnionFranklin County · 13,445 peopleB−graded within the state·Overall C+ · #123 of 247
158PevelyJefferson County · 6,239 peopleB−graded within the state·Overall C+ · #130 of 247
159BethanyHarrison County · 2,956 peopleB−graded within the state·Overall B− · #111 of 247
160Scott CityScott County · 4,593 peopleB−graded within the state·Overall C · #150 of 247
161BoonvilleCooper County · 7,867 peopleB−graded within the state·Overall C · #161 of 247
162LouisianaPike County · 3,208 peopleB−graded within the state·Overall C+ · #137 of 247
T163City TownshipBarton County · 4,337 peopleB−graded within the state·Overall D · #210 of 247
T163LamarBarton County · 4,337 peopleB−graded within the state·Overall D · #215 of 247
T165Barnhartunincorporated, Jefferson County · 5,785 peopleB−graded within the state·Overall B · #91 of 247
T165Imperialunincorporated, Jefferson County · 5,488 peopleB−graded within the state·Overall B− · #114 of 247
167SikestonScott County · 15,983 peopleB−graded within the state·Overall D · #224 of 247
168BuffaloDallas County · 3,550 peopleB−graded within the state·Overall C · #154 of 247
169St. ClairFranklin County · 4,813 peopleB−graded within the state·Overall D · #221 of 247
T170Byrnes MillJefferson County · 3,183 peopleB−graded within the state·Overall D · #209 of 247
T170High Ridgeunincorporated, Jefferson County · 3,714 peopleB−graded within the state·Overall A− · #39 of 247
T170Murphyunincorporated, Jefferson County · 8,285 peopleB−graded within the state·Overall B · #99 of 247
173ColumbiaBoone County · 130,851 peopleB−graded within the state·Overall C+ · #142 of 247
174CarthageJasper County · 15,895 peopleC+graded within the state·Overall C− · #187 of 247
T175Center TownshipVernon County · 9,550 peopleC+graded within the state·Overall C− · #173 of 247
T175NevadaVernon County · 8,404 peopleC+graded within the state·Overall D · #217 of 247
177SalemDent County · 4,674 peopleC+graded within the state·Overall C− · #186 of 247
178BeltonCass County · 26,193 peopleC+graded within the state·Overall C · #156 of 247
179BucknerJackson County · 2,891 peopleC+graded within the state·Overall B− · #115 of 247
180Afftonunincorporated, St. Louis County · 19,052 peopleC+graded within the state·Overall A · #25 of 247
181Kansas CityJackson County · 521,220 peopleC+graded within the state·Overall C− · #200 of 247
182HigginsvilleLafayette County · 4,770 peopleC+graded within the state·Overall A− · #30 of 247
183AuroraLawrence County · 7,686 peopleC+graded within the state·Overall C · #170 of 247
184FredericktownMadison County · 4,584 peopleC+graded within the state·Overall C− · #188 of 247
185CantonLewis County · 2,763 peopleC+graded within the state·Overall B+ · #59 of 247
186Montgomery CityMontgomery County · 2,782 peopleC+graded within the state·Overall C+ · #141 of 247
187PerryvillePerry County · 8,593 peopleC+graded within the state·Overall D · #212 of 247
188WarrentonWarren County · 9,667 peopleC+graded within the state·Overall C+ · #127 of 247
189Cape GirardeauCape Girardeau County · 40,977 peopleC+graded within the state·Overall C− · #203 of 247
T190IndependenceJackson County · 121,675 peopleC+graded within the state·Overall C− · #202 of 247
T190Sugar CreekJackson County · 3,209 peopleC+graded within the state·Overall C− · #184 of 247
192Independence TownshipDunklin County · 11,792 peopleCgraded within the state·Overall C− · #199 of 247
193CarrolltonCarroll County · 3,499 peopleCgraded within the state·Overall C · #159 of 247
194Piney TownshipTexas County · 5,071 peopleCgraded within the state·Overall D · #228 of 247
195El Dorado SpringsCedar County · 3,642 peopleCgraded within the state·Overall D · #230 of 247
196MoberlyRandolph County · 13,719 peopleCgraded within the state·Overall D · #216 of 247
197Union TownshipDunklin County · 3,242 peopleCgraded within the state·Overall D · #226 of 247
198MexicoAudrain County · 11,558 peopleCgraded within the state·Overall C− · #174 of 247
199JoplinJasper County · 53,930 peopleCgraded within the state·Overall D · #233 of 247
200KennettDunklin County · 10,118 peopleCgraded within the state·Overall D · #229 of 247
201FayetteHoward County · 2,848 peopleCgraded within the state·Overall B+ · #72 of 247
202HarrisonvilleCass County · 10,040 peopleC−graded within the state·Overall C+ · #140 of 247
203FultonCallaway County · 12,853 peopleC−graded within the state·Overall C+ · #122 of 247
204Burdine TownshipTexas County · 3,327 peopleC−graded within the state·Overall D · #234 of 247
205East PrairieMississippi County · 2,841 peopleC−graded within the state·Overall C− · #204 of 247
206RichmondRay County · 5,968 peopleC−graded within the state·Overall C · #163 of 247
207MarshallSaline County · 13,766 peopleC−graded within the state·Overall C+ · #132 of 247
208New MadridNew Madrid County · 2,586 peopleC−graded within the state·Overall D · #238 of 247
209TiptonMoniteau County · 2,766 peopleC−graded within the state·Overall C · #144 of 247
210St. JosephBuchanan County · 71,001 peopleC−graded within the state·Overall D · #223 of 247
211St. AnnSt. Louis County · 12,617 peopleC−graded within the state·Overall C · #158 of 247
212BridgetonSt. Louis County · 11,277 peopleC−graded within the state·Overall D · #211 of 247
213VandaliaAudrain County · 3,029 peopleC−graded within the state·Overall C− · #172 of 247
T214BerkeleySt. Louis County · 8,026 peopleC−graded within the state·Overall D · #235 of 247
T214FergusonSt. Louis County · 17,953 peopleC−graded within the state·Overall D · #236 of 247
216LexingtonLafayette County · 4,568 peopleC−graded within the state·Overall C · #162 of 247
217ChaffeeScott County · 3,017 peopleC−graded within the state·Overall C · #169 of 247
T218WindsorHenry County · 2,869 peopleDgraded within the state·Overall C− · #198 of 247
T218Windsor TownshipHenry County · 3,454 peopleDgraded within the state·Overall C− · #201 of 247
220FlorissantSt. Louis County · 51,124 peopleDgraded within the state·Overall C− · #179 of 247
221University CitySt. Louis County · 34,657 peopleDgraded within the state·Overall C · #168 of 247
T222Bonne TerreSt. Francois County · 6,636 peopleDgraded within the state·Overall C− · #193 of 247
T222DeslogeSt. Francois County · 4,819 peopleDgraded within the state·Overall C− · #197 of 247
224MaconMacon County · 5,532 peopleDgraded within the state·Overall C+ · #128 of 247
T225Black JackSt. Louis County · 6,547 peopleDgraded within the state·Overall C− · #181 of 247
T225HazelwoodSt. Louis County · 24,849 peopleDgraded within the state·Overall D · #214 of 247
T225Old Jamestownunincorporated, St. Louis County · 20,651 peopleDgraded within the state·Overall C− · #195 of 247
T225Spanish Lakeunincorporated, St. Louis County · 17,873 peopleDgraded within the state·Overall D · #225 of 247
229GrandviewJackson County · 26,653 peopleDgraded within the state·Overall D · #241 of 247
T230Cotton Hill TownshipDunklin County · 4,700 peopleDgraded within the state·Overall D · #232 of 247
T230MaldenDunklin County · 3,493 peopleDgraded within the state·Overall D · #239 of 247
232JenningsSt. Louis County · 13,093 peopleDgraded within the state·Overall D · #213 of 247
233RaytownJackson County · 29,154 peopleDgraded within the state·Overall D · #222 of 247
T234Breckenridge HillsSt. Louis County · 4,350 peopleDgraded within the state·Overall D · #242 of 247
T234OverlandSt. Louis County · 15,474 peopleDgraded within the state·Overall D · #206 of 247
T234St. JohnSt. Louis County · 6,441 peopleDgraded within the state·Overall D− · #243 of 247
T234Woodson TerraceSt. Louis County · 3,902 peopleDgraded within the state·Overall D · #237 of 247
238Bellefontaine NeighborsSt. Louis County · 10,368 peopleDgraded within the state·Overall D− · #245 of 247
239DellwoodSt. Louis County · 4,825 peopleDgraded within the state·Overall C− · #182 of 247
240CaruthersvillePemiscot County · 5,211 peopleD−graded within the state·Overall D− · #247 of 247
241CharlestonMississippi County · 4,731 peopleD−graded within the state·Overall D− · #246 of 247
242St. LouisSt. Louis city · 278,144 peopleD−graded within the state·Overall D · #227 of 247
243Glasgow Villageunincorporated, St. Louis County · 5,504 peopleD−graded within the state·Overall D · #240 of 247
T244NormandySt. Louis County · 4,380 peopleD−graded within the state·Overall C− · #185 of 247
T244NorthwoodsSt. Louis County · 3,579 peopleD−graded within the state·Overall C− · #194 of 247
T244PagedaleSt. Louis County · 2,511 peopleD−graded within the state·Overall D− · #244 of 247
T244Pine LawnSt. Louis County · 2,682 peopleD−graded within the state·Overall D · #207 of 247
Quick answers

Questions people ask

Which Missouri town has the best schools?

Brentwood (St. Louis County) ranks first on schools among 247 towns, with an A+; Marceline Township and Clayton follow. Schools are compared within Missouri, so the letter is a state grade.

How are these towns ranked?

The Schools grade: state test results and graduation rates of the districts serving each town, compared with the state’s other districts (U.S. Department of Education). 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 schools grade (247 in Missouri). Smaller towns have the grade on their page but no rank. Every town is on the Missouri page.

Go deeper

More Missouri lists

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

All Missouri rankings →
Other states

Towns with the best schools in other states