Guest, Sign inJoin
Blanchard Cityhall in 2023Blanchard, #1 on this list · Photo: DanFromOklahoma · CC BY-SA 4.0
Oklahoma rankings · Schools

Towns with the best schools in Oklahoma

Blanchard ranks first on schools among Oklahoma’s 130 towns of 2,500+; 38 of the 130 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

Blanchard

McClain County · 10,013 people
A

Schools grade, graded within the state·Overall A− · #4 of 131 in OK

#2

Fort Gibson

Muskogee County · 3,814 people
A

Schools grade, graded within the state·Overall C+ · #45 of 131 in OK

All 130 towns

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

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

#TownGradeOverall
1BlanchardMcClain County · 10,013 peopleAgraded within the state·Overall A− · #4 of 131
2Fort GibsonMuskogee County · 3,814 peopleAgraded within the state·Overall C+ · #45 of 131
3TuttleGrady County · 8,708 peopleAgraded within the state·Overall A− · #3 of 131
4EdmondOklahoma County · 100,479 peopleAgraded within the state·Overall B+ · #7 of 131
5FrederickTillman County · 3,371 peopleAgraded within the state·Overall C · #62 of 131
6PiedmontCanadian County · 9,427 peopleAgraded within the state·Overall A · #1 of 131
7KingfisherKingfisher County · 5,201 peopleAgraded within the state·Overall C+ · #40 of 131
8ElginComanche County · 3,653 peopleAgraded within the state·Overall B+ · #13 of 131
9Bethel AcresPottawatomie County · 3,301 peopleAgraded within the state·Overall B · #17 of 131
10StillwaterPayne County · 50,046 peopleAgraded within the state·Overall C+ · #42 of 131
11YukonCanadian County · 27,615 peopleAgraded within the state·Overall B+ · #14 of 131
12JenksTulsa County · 28,175 peopleAgraded within the state·Overall B+ · #9 of 131
13OwassoTulsa County · 43,117 peopleAgraded within the state·Overall B · #16 of 131
14Lone GroveCarter County · 5,244 peopleAgraded within the state·Overall B− · #30 of 131
15BixbyTulsa County · 32,766 peopleAgraded within the state·Overall B+ · #6 of 131
16MustangCanadian County · 24,571 peopleA−graded within the state·Overall B+ · #12 of 131
17PoteauLe Flore County · 9,171 peopleA−graded within the state·Overall D · #101 of 131
18ChandlerLincoln County · 2,963 peopleA−graded within the state·Overall C+ · #44 of 131
19ChecotahMcIntosh County · 3,096 peopleA−graded within the state·Overall C− · #71 of 131
20MooreCleveland County · 63,609 peopleA−graded within the state·Overall B− · #29 of 131
21CushingPayne County · 8,390 peopleA−graded within the state·Overall C · #56 of 131
22Elk CityBeckham County · 11,335 peopleA−graded within the state·Overall C · #66 of 131
23AlvaWoods County · 4,880 peopleA−graded within the state·Overall B · #18 of 131
24MuldrowSequoyah County · 3,375 peopleA−graded within the state·Overall C− · #96 of 131
25CacheComanche County · 3,239 peopleA−graded within the state·Overall B− · #32 of 131
26ChoctawOklahoma County · 12,549 peopleA−graded within the state·Overall A− · #5 of 131
27MarlowStephens County · 4,514 peopleA−graded within the state·Overall B− · #26 of 131
28Park Hillunincorporated, Cherokee County · 3,237 peopleA−graded within the state·Overall C− · #86 of 131
29CollinsvilleTulsa County · 9,956 peopleA−graded within the state·Overall B+ · #8 of 131
30SkiatookOsage County · 8,960 peopleA−graded within the state·Overall B− · #34 of 131
T31FairviewMajor County · 2,632 peopleA−graded within the state·Overall B · #22 of 131
T31MangumGreer County · 2,683 peopleA−graded within the state·Overall B− · #33 of 131
33HarrahOklahoma County · 7,212 peopleA−graded within the state·Overall B · #25 of 131
34McAlesterPittsburg County · 18,044 peopleA−graded within the state·Overall C− · #88 of 131
35New CordellWashita County · 2,746 peopleA−graded within the state·Overall B · #19 of 131
36PerryNoble County · 4,448 peopleA−graded within the state·Overall B− · #28 of 131
37NewcastleMcClain County · 15,198 peopleA−graded within the state·Overall B+ · #10 of 131
38TahlequahCherokee County · 17,508 peopleA−graded within the state·Overall C · #68 of 131
39WeatherfordCuster County · 12,005 peopleB+graded within the state·Overall B · #21 of 131
40JonesOklahoma County · 3,222 peopleB+graded within the state·Overall C+ · #37 of 131
41SulphurMurray County · 4,878 peopleB+graded within the state·Overall B · #20 of 131
42ChickashaGrady County · 17,313 peopleB+graded within the state·Overall C+ · #47 of 131
43VerdigrisRogers County · 5,888 peopleB+graded within the state·Overall A− · #2 of 131
44PerkinsPayne County · 3,271 peopleB+graded within the state·Overall C− · #77 of 131
T45EufaulaMcIntosh County · 2,882 peopleB+graded within the state·Overall D · #116 of 131
T45HoldenvilleHughes County · 5,923 peopleB+graded within the state·Overall C− · #73 of 131
47HintonCaddo County · 4,975 peopleB+graded within the state·Overall B+ · #11 of 131
48PurcellMcClain County · 7,030 peopleB+graded within the state·Overall C · #58 of 131
49WatongaBlaine County · 2,594 peopleB+graded within the state·Overall C · #64 of 131
50AltusJackson County · 18,707 peopleB+graded within the state·Overall C · #59 of 131
51MannfordCreek County · 3,432 peopleB+graded within the state·Overall B · #24 of 131
52CowetaWagoner County · 11,472 peopleB+graded within the state·Overall B · #23 of 131
53DurantBryan County · 21,552 peopleB+graded within the state·Overall C− · #91 of 131
54GoldsbyMcClain County · 3,591 peopleB+graded within the state·Overall B+ · #15 of 131
55BartlesvilleWashington County · 38,278 peopleB+graded within the state·Overall C− · #90 of 131
56Pauls ValleyGarvin County · 6,157 peopleB+graded within the state·Overall C− · #83 of 131
57DuncanStephens County · 23,238 peopleB+graded within the state·Overall C− · #79 of 131
58ClaremoreRogers County · 20,681 peopleBgraded within the state·Overall C · #50 of 131
59Broken ArrowTulsa County · 124,991 peopleBgraded within the state·Overall B− · #31 of 131
60GroveDelaware County · 7,399 peopleBgraded within the state·Overall D · #103 of 131
61LindsayGarvin County · 2,929 peopleBgraded within the state·Overall C · #55 of 131
62ArdmoreCarter County · 24,956 peopleBgraded within the state·Overall D · #105 of 131
63Sand SpringsTulsa County · 20,397 peopleBgraded within the state·Overall C · #52 of 131
64NormanCleveland County · 130,943 peopleBgraded within the state·Overall C+ · #48 of 131
65BristowCreek County · 4,381 peopleBgraded within the state·Overall C · #49 of 131
66GlenpoolTulsa County · 14,705 peopleBgraded within the state·Overall B− · #36 of 131
67NobleCleveland County · 7,748 peopleBgraded within the state·Overall B− · #27 of 131
68MariettaLove County · 2,982 peopleBgraded within the state·Overall C · #65 of 131
69SapulpaCreek County · 23,695 peopleBgraded within the state·Overall C · #53 of 131
70WoodwardWoodward County · 11,635 peopleBgraded within the state·Overall C · #60 of 131
71AdaPontotoc County · 16,660 peopleBgraded within the state·Overall C · #57 of 131
72Longtownunincorporated, Pittsburg County · 2,716 peopleBgraded within the state·Overall C− · #85 of 131
73HobartKiowa County · 3,257 peopleBgraded within the state·Overall D · #113 of 131
74AtokaAtoka County · 2,975 peopleBgraded within the state·Overall C− · #92 of 131
75ClevelandPawnee County · 3,271 peopleBgraded within the state·Overall C+ · #39 of 131
76SlaughtervilleCleveland County · 4,332 peopleBgraded within the state·Overall C− · #81 of 131
77ClintonCuster County · 8,302 peopleBgraded within the state·Overall C · #61 of 131
78StiglerHaskell County · 2,749 peopleBgraded within the state·Overall D · #99 of 131
79BlackwellKay County · 6,029 peopleBgraded within the state·Overall C− · #76 of 131
80Midwest CityOklahoma County · 58,799 peopleBgraded within the state·Overall C− · #72 of 131
81WagonerWagoner County · 8,405 peopleB−graded within the state·Overall C− · #74 of 131
82CaleraBryan County · 3,145 peopleB−graded within the state·Overall C · #67 of 131
83DeweyWashington County · 3,450 peopleB−graded within the state·Overall D · #114 of 131
84SallisawSequoyah County · 8,790 peopleB−graded within the state·Overall D · #98 of 131
85PocolaLe Flore County · 4,660 peopleB−graded within the state·Overall C+ · #46 of 131
86GuymonTexas County · 12,241 peopleB−graded within the state·Overall C · #51 of 131
87TonkawaKay County · 2,983 peopleB−graded within the state·Overall C+ · #43 of 131
88Pryor CreekMayes County · 9,723 peopleB−graded within the state·Overall D · #122 of 131
89GuthrieLogan County · 12,257 peopleB−graded within the state·Overall C · #70 of 131
90MuskogeeMuskogee County · 36,760 peopleB−graded within the state·Overall D− · #127 of 131
91EnidGarfield County · 50,297 peopleB−graded within the state·Overall C− · #87 of 131
92SayreBeckham County · 4,783 peopleB−graded within the state·Overall C+ · #41 of 131
93MadillMarshall County · 4,181 peopleB−graded within the state·Overall C− · #80 of 131
94StroudLincoln County · 2,913 peopleC+graded within the state·Overall C · #54 of 131
95El RenoCanadian County · 20,730 peopleC+graded within the state·Overall C− · #75 of 131
96Ponca CityKay County · 24,225 peopleC+graded within the state·Overall D · #108 of 131
97RolandSequoyah County · 4,146 peopleC+graded within the state·Overall C− · #84 of 131
98CatoosaRogers County · 7,471 peopleC+graded within the state·Overall C · #69 of 131
99Broken BowMcCurtain County · 4,211 peopleC+graded within the state·Overall D · #125 of 131
100SeminoleSeminole County · 7,393 peopleC+graded within the state·Overall D · #112 of 131
101Del CityOklahoma County · 21,138 peopleC+graded within the state·Overall D · #104 of 131
102AnadarkoCaddo County · 5,448 peopleC+graded within the state·Overall D · #110 of 131
103VinitaCraig County · 5,424 peopleC+graded within the state·Overall D · #118 of 131
104TecumsehPottawatomie County · 6,402 peopleC+graded within the state·Overall D · #97 of 131
105McLoudPottawatomie County · 4,564 peopleC+graded within the state·Overall B− · #35 of 131
106MiamiOttawa County · 12,893 peopleCgraded within the state·Overall D · #121 of 131
107TishomingoJohnston County · 3,123 peopleCgraded within the state·Overall C− · #78 of 131
108HeavenerLe Flore County · 3,070 peopleCgraded within the state·Overall C− · #94 of 131
109IdabelMcCurtain County · 6,934 peopleCgraded within the state·Overall D · #107 of 131
110PawhuskaOsage County · 2,923 peopleCgraded within the state·Overall C− · #82 of 131
111LawtonComanche County · 90,503 peopleCgraded within the state·Overall D− · #128 of 131
112HugoChoctaw County · 5,082 peopleCgraded within the state·Overall D · #115 of 131
T113BethanyOklahoma County · 20,315 peopleCgraded within the state·Overall C− · #93 of 131
T113Warr AcresOklahoma County · 10,552 peopleCgraded within the state·Overall D · #106 of 131
115DrumrightCreek County · 2,546 peopleCgraded within the state·Overall C− · #89 of 131
116ShawneePottawatomie County · 32,474 peopleCgraded within the state·Overall D · #117 of 131
117JayDelaware County · 2,507 peopleCgraded within the state·Overall D · #119 of 131
118StilwellAdair County · 3,892 peopleCgraded within the state·Overall D · #123 of 131
119NowataNowata County · 3,584 peopleC−graded within the state·Overall D · #111 of 131
120OkemahOkfuskee County · 3,091 peopleC−graded within the state·Overall D · #120 of 131
121HenryettaOkmulgee County · 5,620 peopleC−graded within the state·Overall D · #102 of 131
122WewokaSeminole County · 3,046 peopleC−graded within the state·Overall D · #124 of 131
T123Nichols HillsOklahoma County · 3,864 peopleDgraded within the state·Overall C+ · #38 of 131
T123SpencerOklahoma County · 3,857 peopleDgraded within the state·Overall C− · #95 of 131
T123The VillageOklahoma County · 9,276 peopleDgraded within the state·Overall C · #63 of 131
T126TulsaTulsa County · 416,209 peopleDgraded within the state·Overall D− · #130 of 131
T126Turleyunincorporated, Tulsa County · 2,968 peopleDgraded within the state·Overall D− · #129 of 131
128OkmulgeeOkmulgee County · 11,394 peopleDgraded within the state·Overall D− · #131 of 131
129HominyOsage County · 3,293 peopleDgraded within the state·Overall D · #109 of 131
130DavisMurray County · 2,836 peopleD−graded within the state·Overall D− · #126 of 131
Not ranked

1 town without a schools grade

Towns of 2,500+ that don’t have the figures this grade needs. Each town’s page says which ones are missing.

Quick answers

Questions people ask

Which Oklahoma town has the best schools?

Blanchard (McClain County) ranks first on schools among 130 towns, with an A; Fort Gibson and Tuttle follow. Schools are compared within Oklahoma, 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 (130 in Oklahoma). 1 town of 2,500+ lack the figures and is listed above. Smaller towns have the grade on their page but no rank. Every town is on the Oklahoma page.

Go deeper

More Oklahoma lists

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

All Oklahoma rankings →
Other states

Towns with the best schools in other states