Guest, Sign inJoin
Nichols Hills Town HallNichols Hills, #1 on this list · Photo: Popsiclecrawfish · CC BY-SA 3.0
Oklahoma rankings · Health

Healthiest towns in Oklahoma

Nichols Hills ranks first on health among Oklahoma’s 131 towns of 2,500+; 5 of the 131 grade A− or better on health nationally.

The Health grade: seven CDC PLACES estimates for adults (general, physical and mental health, obesity, diabetes, smoking, exercise). How grades work

#1

Nichols Hills

Oklahoma County · 3,864 people
A

Health grade, better than 92% of U.S. towns·Overall C+ · #38 of 131 in OK

#2

Edmond

Oklahoma County · 100,479 people
A

Health grade, better than 86% of U.S. towns·Overall B+ · #7 of 131 in OK

All 131 towns

Health grade, best first (the letter is national). Towns with the same score share a rank; the overall grade and state rank are beside each.

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

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

Questions people ask

What is the healthiest town in Oklahoma?

Nichols Hills (Oklahoma County) ranks first on health among 131 towns, with an A; Edmond and Bixby follow.

How are these towns ranked?

The Health grade: seven CDC PLACES estimates for adults (general, physical and mental health, obesity, diabetes, smoking, exercise). 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 health grade (131 in Oklahoma). 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

Healthiest towns in other states