Guest, Sign inJoin
Calera, Oklahoma City HallCalera, #1 on this list · Photo: Steven White (The Phase Master) · CC BY-SA 4.0
Oklahoma rankings · Climate

Towns with the mildest winters in Oklahoma

Calera has the mildest winters of Oklahoma’s 133 towns of 2,500+: January nights average a low of 32° (NOAA 1991–2020 normals). The typical town here averages 28°; 1 of the 133 stay above freezing.

The average January low. NOAA U.S. Climate Normals, 1991–2020, from NOAA’s 5 km grid at each town’s center; one town for each grid cell. A described list: no letters. How grades work

#1

Calera

Bryan County · 3,145 people
32°

January low·July high 94°·70 freezing nights a year

#T2

Durant

Bryan County · 21,552 people
32°

January low·July high 94°·70 freezing nights a year

#T2

Marietta

Love County · 2,982 people
32°

January low·July high 94°·70 freezing nights a year

All 133 towns

January low, highest first. Towns with the same figure share a rank (T = tied; 104 towns here).

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

#TownJanuary lowNights ≤32°July high
1CaleraBryan County · 3,145 people32°7094°average high
T2DurantBryan County · 21,552 people32°7094°average high
T2MariettaLove County · 2,982 people32°7094°average high
4IdabelMcCurtain County · 6,934 people32°7192°average high
5MadillMarshall County · 4,181 people31°6394°average high
6Broken BowMcCurtain County · 4,211 people31°6692°average high
7ArdmoreCarter County · 24,956 people31°4694°average high
8HugoChoctaw County · 5,082 people31°5293°average high
T9DavisMurray County · 2,836 people30°7693°average high
T9Lone GroveCarter County · 5,244 people30°5694°average high
11TishomingoJohnston County · 3,123 people30°6895°average high
12AtokaAtoka County · 2,975 people30°7894°average high
13Longtownunincorporated, Pittsburg County · 2,716 people30°8393°average high
T14EufaulaMcIntosh County · 2,882 people29°—93°average high
T14PoteauLe Flore County · 9,171 people29°7693°average high
T16HeavenerLe Flore County · 3,070 people29°7693°average high
T16McAlesterPittsburg County · 18,044 people29°6693°average high
T16PocolaLe Flore County · 4,660 people29°6393°average high
T16StiglerHaskell County · 2,749 people29°6093°average high
T16SulphurMurray County · 4,878 people29°7694°average high
T16WilburtonLatimer County · 2,308 people29°7193°average high
T22FrederickTillman County · 3,371 people29°6497°average high
T22RolandSequoyah County · 4,146 people29°6393°average high
T24DuncanStephens County · 23,238 people29°6995°average high
T24MarlowStephens County · 4,514 people29°6994°average high
26MuldrowSequoyah County · 3,375 people29°6393°average high
T27AdaPontotoc County · 16,660 people29°7294°average high
T27CacheComanche County · 3,239 people29°5596°average high
T27ChecotahMcIntosh County · 3,096 people29°7293°average high
T27LawtonComanche County · 90,503 people29°7996°average high
31ElginComanche County · 3,653 people29°7895°average high
32SallisawSequoyah County · 8,790 people28°6793°average high
33SlaughtervilleCleveland County · 4,332 people28°8093°average high
34NobleCleveland County · 7,748 people28°7693°average high
35Pauls ValleyGarvin County · 6,157 people28°6794°average high
T36GoldsbyMcClain County · 3,591 people28°7694°average high
T36HenryettaOkmulgee County · 5,620 people28°8793°average high
T36Midwest CityOklahoma County · 58,799 people28°6893°average high
T36NewcastleMcClain County · 15,198 people28°7294°average high
T36NormanCleveland County · 130,943 people28°7693°average high
T41HoldenvilleHughes County · 5,923 people28°7994°average high
T41OkemahOkfuskee County · 3,091 people28°5093°average high
T43Bethel AcresPottawatomie County · 3,301 people28°6893°average high
T43BlanchardMcClain County · 10,013 people28°7294°average high
T43MooreCleveland County · 63,609 people28°7293°average high
T43MustangCanadian County · 24,571 people28°7293°average high
T43Nicoma ParkOklahoma County · 2,294 people28°6893°average high
T43OkmulgeeOkmulgee County · 11,394 people28°8793°average high
T43PurcellMcClain County · 7,030 people28°8094°average high
T43SpencerOklahoma County · 3,857 people28°6893°average high
T51AltusJackson County · 18,707 people28°8697°average high
T51BethanyOklahoma County · 20,315 people28°7394°average high
T51Del CityOklahoma County · 21,138 people28°7294°average high
T51LindsayGarvin County · 2,929 people28°8695°average high
T51MuskogeeMuskogee County · 36,760 people28°7893°average high
T51TecumsehPottawatomie County · 6,402 people28°6893°average high
T51Warr AcresOklahoma County · 10,552 people28°7394°average high
T58ChickashaGrady County · 17,313 people28°7995°average high
T58ChoctawOklahoma County · 12,549 people28°6894°average high
T58JonesOklahoma County · 3,222 people28°6894°average high
T58McLoudPottawatomie County · 4,564 people28°8394°average high
T58Oklahoma CityOklahoma County · 719,849 people28°7294°average high
T58WewokaSeminole County · 3,046 people28°7994°average high
T64ShawneePottawatomie County · 32,474 people28°6893°average high
T64The VillageOklahoma County · 9,276 people28°7394°average high
T64TuttleGrady County · 8,708 people28°7294°average high
T67CowetaWagoner County · 11,472 people28°8792°average high
T67Fort GibsonMuskogee County · 3,814 people28°7893°average high
T67HarrahOklahoma County · 7,212 people28°8394°average high
T70AnadarkoCaddo County · 5,448 people27°9695°average high
T70Broken ArrowTulsa County · 124,991 people27°8792°average high
T70EdmondOklahoma County · 100,479 people27°8794°average high
T70HobartKiowa County · 3,257 people27°8096°average high
T70SeminoleSeminole County · 7,393 people27°7994°average high
T70WagonerWagoner County · 8,405 people27°6993°average high
T70YukonCanadian County · 27,615 people27°7394°average high
T77CatoosaRogers County · 7,471 people27°7292°average high
T77GlenpoolTulsa County · 14,705 people27°8193°average high
T77MangumGreer County · 2,683 people27°8996°average high
T77PiedmontCanadian County · 9,427 people27°7394°average high
T81JenksTulsa County · 28,175 people27°8193°average high
T81Park Hillunincorporated, Cherokee County · 3,237 people27°7492°average high
T83BixbyTulsa County · 32,766 people27°8793°average high
T83ChandlerLincoln County · 2,963 people27°8094°average high
T83KieferCreek County · 2,310 people27°8193°average high
T83TulsaTulsa County · 416,209 people27°7292°average high
T87El RenoCanadian County · 20,730 people27°7694°average high
T87StilwellAdair County · 3,892 people27°7790°average high
T87TahlequahCherokee County · 17,508 people27°7492°average high
90Pryor CreekMayes County · 9,723 people27°9592°average high
T91CushingPayne County · 8,390 people27°7693°average high
T91SapulpaCreek County · 23,695 people27°8193°average high
T93StroudLincoln County · 2,913 people26°7493°average high
T93VerdigrisRogers County · 5,888 people26°9492°average high
95OwassoTulsa County · 43,117 people26°7293°average high
T96BristowCreek County · 4,381 people26°7892°average high
T96ClaremoreRogers County · 20,681 people26°9492°average high
T96GuthrieLogan County · 12,257 people26°7595°average high
T96HintonCaddo County · 4,975 people26°8494°average high
T96Turleyunincorporated, Tulsa County · 2,968 people26°7293°average high
T101New CordellWashita County · 2,746 people26°8296°average high
T101PerkinsPayne County · 3,271 people26°7894°average high
T101VinitaCraig County · 5,424 people26°6992°average high
T101WatongaBlaine County · 2,594 people26°9494°average high
T105CollinsvilleTulsa County · 9,956 people26°7292°average high
T105Sand SpringsTulsa County · 20,397 people26°8193°average high
T105WeatherfordCuster County · 12,005 people26°8594°average high
108SkiatookOsage County · 8,960 people26°7292°average high
T109Elk CityBeckham County · 11,335 people26°8495°average high
T109JayDelaware County · 2,507 people26°10291°average high
T109KingfisherKingfisher County · 5,201 people26°9595°average high
T109MiamiOttawa County · 12,893 people26°8991°average high
T113NowataNowata County · 3,584 people26°8292°average high
T113PerryNoble County · 4,448 people26°8094°average high
T115HennesseyKingfisher County · 2,207 people26°9495°average high
T115MannfordCreek County · 3,432 people26°7792°average high
T115StillwaterPayne County · 50,046 people26°8894°average high
118GroveDelaware County · 7,399 people26°10292°average high
119ClintonCuster County · 8,302 people25°8796°average high
120EnidGarfield County · 50,297 people25°8594°average high
T121ClevelandPawnee County · 3,271 people25°7793°average high
T121SayreBeckham County · 4,783 people25°8496°average high
123HominyOsage County · 3,293 people25°8892°average high
124TonkawaKay County · 2,983 people25°9694°average high
T125BartlesvilleWashington County · 38,278 people24°9792°average high
T125DeweyWashington County · 3,450 people24°9792°average high
T125FairviewMajor County · 2,632 people24°8996°average high
128BlackwellKay County · 6,029 people24°9694°average high
129Ponca CityKay County · 24,225 people24°8993°average high
130PawhuskaOsage County · 2,923 people24°8992°average high
131AlvaWoods County · 4,880 people23°10695°average high
132WoodwardWoodward County · 11,635 people22°9595°average high
133GuymonTexas County · 12,241 people22°12294°average high
Quick answers

Questions people ask

Which Oklahoma town has the mildest winters?

Calera (Bryan County): January nights average a low of 32°. Durant (32°) and Marietta (32°) follow.

How are these towns ranked?

By the average January low (the coldest month’s nights), highest first, on NOAA’s 1991–2020 normals, read from its 5 km grid at each town’s center. Towns with the same figure share a rank (T); the figure and the state rank are the ones on each town’s Climate page. How grades work.

Why isn’t my town on this list?

The list covers towns of 2,500+ residents, one for each of NOAA’s 5 km grid cells (133 in Oklahoma): where towns share a cell, one of them stands for it, since the grid gives them the same figures. Every town’s own figures are on its Climate page. 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

Mildest winters in other states