Guest, Sign inJoin
Francis West Smith HouseBrodhead, #1 on this list · Photo: Tgkrause · CC BY-SA 3.0
Wisconsin rankings · Climate

Towns with the hottest summers in Wisconsin

Brodhead has the hottest summers of Wisconsin’s 377 towns of 2,500+: July afternoons average a high of 84° (NOAA 1991–2020 normals). The typical town here averages 82°; none of the 377 average 90° or more.

The average July high. 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

Brodhead

Green County · 3,214 people
84°

July high·January low 12°·12 days of 90°+ a year

#T3

Beloit

Rock County · 36,649 people
83°

July high·January low 13°·10 days of 90°+ a year

All 377 towns

July high, highest first. Towns with the same figure share a rank (T = tied; 365 towns here).

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

#TownJuly highDays ≥90°January low
1BrodheadGreen County · 3,214 people84°1212°average low
2RockRock County · 2,988 people83°1313°average low
T3BeloitRock County · 36,649 people83°1013°average low
T3BeloitRock County · 8,014 people83°1013°average low
T5CampbellLa Crosse County · 4,092 people83°188°average low
T5French Islandunincorporated, La Crosse County · 4,188 people83°188°average low
T5JanesvilleRock County · 66,929 people83°1312°average low
T5Prairie du ChienCrawford County · 5,408 people83°1110°average low
T5Sauk CitySauk County · 3,439 people83°910°average low
T10BoscobelGrant County · 3,250 people83°1910°average low
T10JanesvilleRock County · 3,699 people83°1312°average low
T10La CrosseLa Crosse County · 50,784 people83°189°average low
T10Prairie du SacSauk County · 4,316 people83°910°average low
T10TurtleRock County · 2,392 people83°1013°average low
T15BloomfieldWalworth County · 6,369 people83°913°average low
T15EdgertonRock County · 6,121 people83°1012°average low
T15EvansvilleRock County · 5,837 people83°1012°average low
T15FultonRock County · 3,715 people83°1012°average low
T15Genoa CityWalworth County · 2,866 people83°914°average low
T15MiltonRock County · 3,129 people83°1112°average low
T15RandallKenosha County · 3,276 people83°714°average low
T15Salem LakesKenosha County · 14,271 people83°1114°average low
T15Twin LakesKenosha County · 6,338 people83°914°average low
T24BurlingtonRacine County · 10,951 people83°714°average low
T24BurlingtonRacine County · 6,403 people83°714°average low
T24Delavan Lakeunincorporated, Walworth County · 2,757 people83°1312°average low
T24Fort AtkinsonJefferson County · 12,388 people83°1112°average low
T24HollandLa Crosse County · 4,512 people83°88°average low
T24Lake GenevaWalworth County · 8,818 people83°2113°average low
T24LyonsWalworth County · 3,635 people83°713°average low
T24North HudsonSt. Croix County · 3,803 people83°186°average low
T24OnalaskaLa Crosse County · 5,809 people83°188°average low
T24RochesterRacine County · 3,786 people83°913°average low
T24WheatlandKenosha County · 3,337 people83°714°average low
T35BellevilleDane County · 2,705 people83°1011°average low
T35BurkeDane County · 3,089 people83°910°average low
T35DeerfieldDane County · 2,619 people83°1211°average low
T35DelavanWalworth County · 5,210 people83°1313°average low
T35HarmonyRock County · 2,608 people83°1312°average low
T35JeffersonJefferson County · 7,814 people83°1212°average low
T35Lake Wisconsinunincorporated, Columbia County · 5,384 people83°1610°average low
T35LinnWalworth County · 2,707 people83°2113°average low
T35MadisonDane County · 286,233 people83°911°average low
T35MiltonRock County · 6,024 people83°1112°average low
T35Pleasant SpringsDane County · 2,968 people83°1011°average low
T35Williams BayWalworth County · 2,935 people83°2113°average low
T47Cottage GroveDane County · 3,677 people83°911°average low
T47DelavanWalworth County · 9,228 people83°1312°average low
T47Johnson CreekJefferson County · 3,435 people83°1212°average low
T47McFarlandDane County · 9,145 people83°1011°average low
T47MononaDane County · 8,664 people83°1011°average low
T47PacificColumbia County · 2,769 people83°910°average low
T47PortageColumbia County · 9,956 people83°910°average low
T47Richland CenterRichland County · 5,020 people83°910°average low
T47StoughtonDane County · 13,256 people83°1012°average low
T47Tichiganunincorporated, Racine County · 5,052 people83°913°average low
T47WalworthWalworth County · 2,759 people83°1313°average low
T47WaterfordRacine County · 6,025 people83°913°average low
T47WhitewaterWalworth County · 16,038 people83°912°average low
T60BarabooSauk County · 13,224 people82°1010°average low
T60BristolKenosha County · 5,300 people82°1115°average low
T60DeForestDane County · 13,094 people82°810°average low
T60DoverRacine County · 4,202 people82°914°average low
T60East TroyWalworth County · 4,988 people82°713°average low
T60East TroyWalworth County · 4,002 people82°713°average low
T60Lake MillsJefferson County · 6,655 people82°1212°average low
T60MarshallDane County · 3,696 people82°911°average low
T60MondoviBuffalo County · 2,853 people82°156°average low
T60OaklandJefferson County · 3,215 people82°1212°average low
T60Paddock LakeKenosha County · 2,974 people82°1114°average low
T60Sugar CreekWalworth County · 3,888 people82°1312°average low
T60TroyWalworth County · 2,331 people82°913°average low
T60WaterlooJefferson County · 3,600 people82°911°average low
T60West SalemLa Crosse County · 5,288 people82°188°average low
T60Wind Lakeunincorporated, Racine County · 4,836 people82°913°average low
T60YorkvilleRacine County · 3,253 people82°914°average low
T77BristolDane County · 4,347 people82°810°average low
T77Cottage GroveDane County · 8,930 people82°911°average low
T77DunnDane County · 4,676 people82°1011°average low
T77ElkhornWalworth County · 10,045 people82°1313°average low
T77GenevaWalworth County · 5,443 people82°2113°average low
T77HolmenLa Crosse County · 12,105 people82°188°average low
T77Lake DeltonSauk County · 3,451 people82°109°average low
T77LodiColumbia County · 3,259 people82°1610°average low
T77MonroeGreen County · 10,581 people82°1612°average low
T77MuskegoWaukesha County · 25,602 people82°1213°average low
T77PoynetteColumbia County · 2,924 people82°810°average low
T77ReedsburgSauk County · 10,641 people82°79°average low
T89HudsonSt. Croix County · 15,019 people82°186°average low
T89LodiColumbia County · 3,190 people82°1610°average low
T89MiddletonDane County · 23,115 people82°711°average low
T89MukwonagoWaukesha County · 8,544 people82°913°average low
T89NorwayRacine County · 7,856 people82°914°average low
T89PrescottPierce County · 4,581 people82°87°average low
T89ShelbyLa Crosse County · 4,668 people82°39°average low
T89Union GroveRacine County · 5,370 people82°914°average low
T89Vernon7,464 people82°1113°average low
T89WaterfordRacine County · 6,507 people82°913°average low
T89WaunakeeDane County · 16,411 people82°910°average low
T100ColumbusColumbia County · 5,400 people82°610°average low
T100DeltonSauk County · 2,441 people82°109°average low
T100FranklinMilwaukee County · 36,687 people82°1214°average low
T100La GrangeWalworth County · 2,475 people82°912°average low
T100New LisbonJuneau County · 2,577 people82°77°average low
T100OregonDane County · 2,994 people82°1011°average low
T100OttawaWaukesha County · 3,642 people82°1112°average low
T100PlattevilleGrant County · 11,815 people82°611°average low
T100SpartaMonroe County · 9,974 people82°117°average low
T100WindsorDane County · 10,085 people82°810°average low
T100Wisconsin DellsColumbia County · 3,149 people82°109°average low
T111ArcadiaTrempealeau County · 3,840 people82°107°average low
T111Cross PlainsDane County · 4,182 people82°710°average low
T111EagleWaukesha County · 3,536 people82°1112°average low
T111HudsonSt. Croix County · 8,736 people82°76°average low
T111IxoniaJefferson County · 5,083 people82°712°average low
T111MaustonJuneau County · 4,133 people82°78°average low
T111Mineral PointIowa County · 2,555 people82°610°average low
T111MukwonagoWaukesha County · 7,763 people82°1113°average low
T111OconomowocWaukesha County · 20,119 people82°712°average low
T111RaymondRacine County · 4,006 people82°914°average low
T111SomersetSt. Croix County · 4,536 people82°186°average low
T111SummitWaukesha County · 5,323 people82°712°average low
T111Sun PrairieDane County · 39,227 people82°910°average low
T111WatertownJefferson County · 22,704 people82°712°average low
T125AltoonaEau Claire County · 9,376 people82°105°average low
T125Eau ClaireEau Claire County · 72,465 people82°105°average low
T125GreendaleMilwaukee County · 14,426 people82°1214°average low
T125GreenfieldMilwaukee County · 37,159 people82°914°average low
T125Hales CornersMilwaukee County · 7,740 people82°1214°average low
T125Mount PleasantRacine County · 28,253 people82°615°average low
T125OconomowocWaukesha County · 8,849 people82°712°average low
T125Okauchee Lakeunincorporated, Waukesha County · 4,733 people82°712°average low
T125OnalaskaLa Crosse County · 20,297 people82°188°average low
T125OregonDane County · 12,015 people82°1011°average low
T125OsceolaPolk County · 2,890 people82°115°average low
T125Pleasant PrairieKenosha County · 21,798 people82°716°average low
T125SpringfieldDane County · 2,800 people82°710°average low
T125VeronaDane County · 16,821 people82°711°average low
T125VeronaDane County · 2,092 people82°711°average low
T125Waukesha8,507 people82°1113°average low
T141BerlinGreen Lake County · 5,588 people82°89°average low
T141Black River FallsJackson County · 3,555 people82°56°average low
T141BrookfieldWaukesha County · 6,515 people82°713°average low
T141CliftonPierce County · 2,289 people82°76°average low
T141GeneseeWaukesha County · 7,235 people82°1112°average low
T141HamiltonLa Crosse County · 2,311 people82°188°average low
T141MenomonieDunn County · 16,664 people82°85°average low
T141MenomonieDunn County · 3,514 people82°85°average low
T141New BerlinWaukesha County · 39,953 people82°1713°average low
T141PewaukeeWaukesha County · 8,216 people82°712°average low
T141PewaukeeWaukesha County · 16,375 people82°712°average low
T141River FallsPierce County · 17,916 people82°76°average low
T141St. JosephSt. Croix County · 4,408 people82°186°average low
T141UnionEau Claire County · 2,556 people82°106°average low
T155Beaver DamDodge County · 4,105 people82°610°average low
T155DelafieldWaukesha County · 7,314 people82°712°average low
T155DelafieldWaukesha County · 8,012 people82°712°average low
T155FitchburgDane County · 34,615 people82°1011°average low
T155HartlandWaukesha County · 10,740 people82°712°average low
T155LancasterGrant County · 4,031 people82°410°average low
T155Menomonee FallsWaukesha County · 41,291 people82°713°average low
T155MukwaWaupaca County · 2,793 people82°69°average low
T155SturtevantRacine County · 6,852 people82°615°average low
T155WaukeshaWaukesha County · 70,872 people82°1112°average low
T155West AllisMilwaukee County · 60,119 people82°1714°average low
T155WinneconneWinnebago County · 2,498 people82°810°average low
T155WinneconneWinnebago County · 2,681 people82°810°average low
T168BrockwayJackson County · 2,991 people82°56°average low
T168BrookfieldWaukesha County · 41,448 people82°1713°average low
T168DaytonWaupaca County · 2,608 people82°88°average low
T168Fond du LacFond du Lac County · 44,541 people82°510°average low
T168HoriconDodge County · 3,917 people82°610°average low
T168MertonWaukesha County · 8,319 people82°712°average low
T168MiddletonDane County · 6,833 people82°711°average low
T168NeenahWinnebago County · 27,638 people82°710°average low
T168North Fond du LacFond du Lac County · 5,425 people82°510°average low
T168OmroWinnebago County · 3,639 people82°810°average low
T168OshkoshWinnebago County · 67,460 people82°810°average low
T168RichmondSt. Croix County · 4,276 people82°185°average low
T168SaratogaWood County · 5,141 people82°97°average low
T168Star PrairieSt. Croix County · 3,771 people82°45°average low
T168TroySt. Croix County · 5,686 people82°76°average low
T168WaupacaWaupaca County · 6,352 people82°88°average low
T168WauwatosaMilwaukee County · 48,649 people82°1714°average low
T185AshippunDodge County · 2,666 people82°711°average low
T185Beaver DamDodge County · 16,542 people82°610°average low
T185FriendshipFond du Lac County · 2,774 people82°510°average low
T185GermantownWashington County · 21,050 people82°712°average low
T185HortonvilleOutagamie County · 3,340 people82°69°average low
T185JacksonWashington County · 8,322 people82°1012°average low
T185JuneauDodge County · 2,706 people82°610°average low
T185KenoshaKenosha County · 99,239 people82°716°average low
T185Lake HallieChippewa County · 7,396 people82°105°average low
T185MilwaukeeMilwaukee County · 562,407 people82°915°average low
T185Mount HorebDane County · 7,725 people82°710°average low
T185SomersKenosha County · 8,171 people82°616°average low
T185SpartaMonroe County · 3,277 people82°118°average low
T185SussexWaukesha County · 12,779 people82°1312°average low
T185TainterDunn County · 2,690 people82°85°average low
T185WalesWaukesha County · 2,885 people82°1112°average low
T185WaupunDodge County · 11,150 people82°610°average low
T202AldenPolk County · 3,019 people82°45°average low
T202AlgomaWinnebago County · 6,956 people82°810°average low
T202CaledoniaRacine County · 25,229 people82°715°average low
T202DaleOutagamie County · 2,902 people82°69°average low
T202Fond du LacFond du Lac County · 3,780 people82°510°average low
T202Fox CrossingWinnebago County · 19,320 people82°710°average low
T202Lisbon11,150 people82°1312°average low
T202MequonOzaukee County · 25,120 people82°714°average low
T202MertonWaukesha County · 3,676 people82°1312°average low
T202New RichmondSt. Croix County · 10,988 people82°185°average low
T202Pleasant ValleyEau Claire County · 3,878 people82°156°average low
T202RomeAdams County · 3,420 people82°97°average low
T202TomahMonroe County · 9,600 people82°67°average low
T202West MilwaukeeMilwaukee County · 3,984 people82°1815°average low
T202Wisconsin RapidsWood County · 18,654 people82°97°average low
T217AppletonOutagamie County · 75,452 people81°710°average low
T217Chippewa FallsChippewa County · 15,293 people81°105°average low
T217ErinWashington County · 3,835 people81°711°average low
T217FarmingtonWaupaca County · 3,501 people81°88°average low
T217FennimoreGrant County · 2,775 people81°410°average low
T217Greenville13,388 people81°710°average low
T217HartfordWashington County · 3,359 people81°711°average low
T217JacksonWashington County · 3,950 people81°1012°average low
T217KaukaunaOutagamie County · 18,517 people81°710°average low
T217KimberlyOutagamie County · 7,556 people81°710°average low
T217Lake Wazeechaunincorporated, Wood County · 2,850 people81°97°average low
T217Little ChuteOutagamie County · 11,800 people81°710°average low
T217MayvilleDodge County · 5,184 people81°610°average low
T217New LondonWaupaca County · 7,726 people81°69°average low
T217RiponFond du Lac County · 7,738 people81°410°average low
T217SeymourEau Claire County · 3,261 people81°105°average low
T217WashingtonEau Claire County · 7,478 people81°86°average low
T234Brown DeerMilwaukee County · 12,821 people81°1714°average low
T234ClaytonWinnebago County · 5,303 people81°710°average low
T234DodgevilleIowa County · 5,076 people81°610°average low
T234Grand RapidsWood County · 7,622 people81°97°average low
T234HarrisonCalumet County · 14,492 people81°710°average low
T234Lake Wissotaunincorporated, Chippewa County · 3,184 people81°105°average low
T234MenashaWinnebago County · 18,385 people81°710°average low
T234OsceolaPolk County · 3,125 people81°115°average low
T234RichfieldWashington County · 11,785 people81°712°average low
T234TrentonWashington County · 4,721 people81°912°average low
T234WheatonChippewa County · 2,785 people81°105°average low
T245AmeryPolk County · 2,927 people81°44°average low
T245BartonWashington County · 2,769 people81°711°average low
T245BuchananOutagamie County · 6,793 people81°710°average low
T245EllingtonOutagamie County · 3,307 people81°69°average low
T245FreedomOutagamie County · 6,354 people81°710°average low
T245Grand ChuteOutagamie County · 24,579 people81°710°average low
T245HartfordWashington County · 16,005 people81°711°average low
T245LafayetteChippewa County · 6,430 people81°105°average low
T245West BendWashington County · 32,268 people81°711°average low
T245WrightstownBrown County · 4,169 people81°610°average low
T255ClintonvilleWaupaca County · 4,499 people81°68°average low
T255FarmingtonWashington County · 3,586 people81°711°average low
T255KewaskumWashington County · 4,561 people81°710°average low
T255PloverPortage County · 14,274 people81°47°average low
T259AddisonWashington County · 3,416 people81°710°average low
T259CedarburgOzaukee County · 6,169 people81°613°average low
T259CenterOutagamie County · 3,706 people81°710°average low
T259Oak CreekMilwaukee County · 38,296 people81°916°average low
T259PolkWashington County · 4,041 people81°1011°average low
T259River FallsPierce County · 2,278 people81°76°average low
T259SherwoodCalumet County · 3,311 people81°710°average low
T259SlingerWashington County · 6,495 people81°411°average low
T259ThiensvilleOzaukee County · 3,267 people81°714°average low
T259West BendWashington County · 4,401 people81°711°average low
T269HammondSt. Croix County · 2,732 people81°45°average low
T269LawrenceBrown County · 6,937 people81°610°average low
T269Stevens PointPortage County · 26,377 people81°47°average low
T272AnsonChippewa County · 2,330 people81°45°average low
T272CedarburgOzaukee County · 12,916 people81°613°average low
T272ChiltonCalumet County · 4,183 people81°610°average low
T272EmpireFond du Lac County · 2,790 people81°510°average low
T272HullPortage County · 5,239 people81°47°average low
T272PlymouthSheboygan County · 8,821 people81°711°average low
T272PlymouthSheboygan County · 3,038 people81°711°average low
T272TaycheedahFond du Lac County · 4,690 people81°510°average low
T272WescottShawano County · 3,287 people81°77°average low
T281LimaSheboygan County · 2,920 people81°613°average low
T281LomiraDodge County · 2,686 people81°510°average low
T283BarronBarron County · 3,634 people81°63°average low
T283BloomerChippewa County · 3,634 people81°84°average low
T283BrillionCalumet County · 3,327 people81°710°average low
T283Eagle PointChippewa County · 3,267 people81°45°average low
T283ShawanoShawano County · 9,693 people81°78°average low
T283StocktonPortage County · 3,019 people81°47°average low
T289CudahyMilwaukee County · 17,655 people80°916°average low
T289De PereBrown County · 25,590 people80°611°average low
T289EllsworthPierce County · 3,336 people80°56°average low
T289KielManitowoc County · 3,973 people80°611°average low
T289MosineeMarathon County · 4,529 people80°56°average low
T289OneidaOutagamie County · 4,568 people80°610°average low
T289SeymourOutagamie County · 3,628 people80°69°average low
T289South MilwaukeeMilwaukee County · 20,191 people80°916°average low
T289StanleyBarron County · 2,492 people80°63°average low
T298BaldwinSt. Croix County · 4,347 people80°45°average low
T298GlendaleMilwaukee County · 14,795 people80°1715°average low
T298GraftonOzaukee County · 4,343 people80°314°average low
T298RacineRacine County · 77,908 people80°616°average low
T298RothschildMarathon County · 5,627 people80°56°average low
T298SaukvilleOzaukee County · 4,554 people80°314°average low
T298StephensonMarinette County · 3,654 people80°87°average low
T305GraftonOzaukee County · 13,389 people80°614°average low
T305HobartBrown County · 11,674 people80°611°average low
T305New HolsteinCalumet County · 3,040 people80°610°average low
T305Oconto FallsOconto County · 3,012 people80°49°average low
T305Rice LakeBarron County · 8,882 people80°63°average low
T305Sheboygan FallsSheboygan County · 8,687 people80°613°average low
T305St. FrancisMilwaukee County · 8,955 people80°916°average low
T305ViroquaVernon County · 4,435 people80°38°average low
T305WrightstownBrown County · 1,240 people80°610°average low
T314AshwaubenonBrown County · 17,398 people80°611°average low
T314KronenwetterMarathon County · 8,413 people80°56°average low
T314PittsfieldBrown County · 2,838 people80°610°average low
T314PulaskiBrown County · 4,048 people80°69°average low
T314Rice LakeBarron County · 2,897 people80°63°average low
T314WestonMarathon County · 15,931 people80°56°average low
T320ChaseOconto County · 3,373 people80°69°average low
T320DenmarkBrown County · 2,875 people80°410°average low
T320LedgeviewBrown County · 9,642 people80°611°average low
T320WausauMarathon County · 40,188 people80°56°average low
T320Whitefish BayMilwaukee County · 14,489 people80°1716°average low
T325MenomineeMenominee County · 4,199 people80°57°average low
T325Rib MountainMarathon County · 7,280 people80°56°average low
T327BaysideMilwaukee County · 4,331 people80°1716°average low
T327Fox PointMilwaukee County · 6,583 people80°1716°average low
T327MarshfieldWood County · 18,980 people80°45°average low
T327PeshtigoMarinette County · 3,423 people80°39°average low
T331MerrillLincoln County · 9,389 people80°55°average low
T331MerrillLincoln County · 2,856 people80°54°average low
T331MosineeMarathon County · 2,275 people80°56°average low
T331StanleyChippewa County · 3,876 people80°34°average low
T331WilsonSheboygan County · 3,401 people80°214°average low
T336Howards GroveSheboygan County · 3,190 people80°613°average low
T336Port WashingtonOzaukee County · 12,658 people80°515°average low
T336StettinMarathon County · 2,593 people80°55°average low
T339AllouezBrown County · 13,838 people80°611°average low
T339SheboyganSheboygan County · 8,615 people80°914°average low
341LuxemburgKewaunee County · 2,784 people80°210°average low
T342HaywardSawyer County · 2,614 people79°82°average low
T342MaineMarathon County · 2,621 people79°55°average low
T344LadysmithRusk County · 3,172 people79°33°average low
T344Little SuamicoOconto County · 5,794 people79°410°average low
346BellevueBrown County · 16,776 people79°611°average low
T347Bass LakeSawyer County · 2,896 people79°82°average low
T347OostburgSheboygan County · 3,056 people79°615°average low
349AntigoLanglade County · 8,060 people79°24°average low
T350MedfordTaylor County · 4,589 people79°24°average low
T350SheboyganSheboygan County · 49,376 people79°915°average low
352HaywardSawyer County · 3,928 people79°52°average low
T353MedfordTaylor County · 2,506 people78°23°average low
T353TomahawkLincoln County · 3,387 people78°14°average low
T355HowardBrown County · 22,233 people78°613°average low
T355MarinetteMarinette County · 11,168 people78°411°average low
357Two RiversManitowoc County · 11,222 people78°113°average low
T358Green BayBrown County · 106,675 people78°613°average low
T358PelicanOneida County · 2,840 people78°33°average low
T358RhinelanderOneida County · 8,242 people78°33°average low
T361AshlandAshland County · 7,927 people78°56°average low
T361ManitowocManitowoc County · 34,671 people78°314°average low
T361OcontoOconto County · 4,640 people78°412°average low
T361ScottBrown County · 3,650 people78°612°average low
T361SuamicoBrown County · 13,153 people78°613°average low
366Pine LakeOneida County · 2,733 people78°33°average low
367PeshtigoMarinette County · 4,087 people78°312°average low
T368AlgomaKewaunee County · 3,225 people77°113°average low
T368Lac du FlambeauVilas County · 3,659 people77°22°average low
T370MinocquaOneida County · 5,062 people77°23°average low
T370NewboldOneida County · 2,869 people77°33°average low
372LincolnVilas County · 2,737 people77°23°average low
T373Arbor VitaeVilas County · 3,503 people77°22°average low
T373KewauneeKewaunee County · 2,793 people77°213°average low
T373Sturgeon BayDoor County · 9,917 people77°213°average low
376SevastopolDoor County · 2,835 people77°213°average low
377SuperiorDouglas County · 26,397 people76°36°average low
Quick answers

Questions people ask

Which Wisconsin town has the hottest summers?

Brodhead (Green County): July afternoons average a high of 84°. Rock (83°) and Beloit (83°) follow.

How are these towns ranked?

By the average July high (the warmest month’s afternoons), 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 (377 in Wisconsin): 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 Wisconsin page.

Go deeper

More Wisconsin lists

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

All Wisconsin rankings →
Other states

Hottest summers in other states