25 Small Towns in Illinois With the Mildest Winters
Ranked by january average low (°f) among 238 towns of 500–10,000 people in Illinois. #1 is Anna, IL (January lows average 25.4°F).
-
25Johnston City, Illinois
January lows average 23.4°F
Johnston City is a city of 3,384 people in Williamson County, Illinois. January lows average 23.4°F and July highs 88.1°F, with about 38 days a year at 90°F+ and 10 inches of snow.
3,384 people · Williamson County · median home $88,100 · income $42,465 · Jan low 23°F · 10 in snow
Full Johnston City, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Carbondale Sewage Plt station. -
24Carterville, Illinois
January lows average 23.4°F
Carterville is a city of 5,848 people in Williamson County, Illinois. January lows average 23.4°F and July highs 88.1°F, with about 38 days a year at 90°F+ and 11 inches of snow.
5,848 people · Williamson County · median home $197,100 · income $62,337 · Jan low 23°F · 11 in snow
Full Carterville, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Carbondale Sewage Plt station. -
23Pinckneyville, Illinois
January lows average 23.9°F

Photo: Nyttend (public domain, Wikimedia Commons) Pinckneyville is a city of 5,066 people in Perry County, Illinois. January lows average 23.9°F and July highs 87.2°F, with about 38 days a year at 90°F+ and 9 inches of snow.
5,066 people · Perry County · median home $133,500 · income $69,583 · Jan low 24°F · 9 in snow
Full Pinckneyville, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Du Quoin 4 Se station. -
22Du Quoin, Illinois
January lows average 23.9°F
Du Quoin is a city of 5,827 people in Perry County, Illinois. January lows average 23.9°F and July highs 87.2°F, with about 38 days a year at 90°F+ and 12 inches of snow.
5,827 people · Perry County · median home $83,100 · income $54,409 · Jan low 24°F · 12 in snow
Full Du Quoin, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Du Quoin 4 Se station. -
21Eldorado, Illinois
January lows average 24.0°F
Eldorado is a city of 3,743 people in Saline County, Illinois. January lows average 24.0°F and July highs 89.1°F, with about 43 days a year at 90°F+ and 9 inches of snow.
3,743 people · Saline County · median home $66,200 · income $37,154 · Jan low 24°F · 9 in snow
Full Eldorado, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Harrisburg station. -
20Red Bud, Illinois
January lows average 24.0°F
Red Bud is a city of 3,804 people in Randolph County, Illinois. January lows average 24.0°F and July highs 89.1°F, with about 58 days a year at 90°F+ and 10 inches of snow.
3,804 people · Randolph County · median home $171,000 · income $71,850 · Jan low 24°F · 10 in snow
Full Red Bud, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Kaskaskia Rvr Navigation Lock station. -
19Chester, Illinois
January lows average 24.0°F
Chester is a city of 6,814 people in Randolph County, Illinois. January lows average 24.0°F and July highs 89.1°F, with about 58 days a year at 90°F+ and 12 inches of snow.
6,814 people · Randolph County · median home $111,700 · income $80,625 · Jan low 24°F · 12 in snow
Full Chester, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Kaskaskia Rvr Navigation Lock station. -
18Harrisburg, Illinois
January lows average 24.0°F

Photo: Ruhe1986 (talk) (public domain, Wikimedia Commons) Harrisburg is a city of 8,219 people in Saline County, Illinois. January lows average 24.0°F and July highs 89.1°F, with about 43 days a year at 90°F+ and 7 inches of snow.
8,219 people · Saline County · median home $84,100 · income $43,415 · Jan low 24°F · 7 in snow
Full Harrisburg, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Harrisburg station. -
17Washington Park, Illinois
January lows average 24.1°F
Washington Park is a village of 2,592 people in St. Clair County, Illinois. January lows average 24.1°F and July highs 89.0°F, with about 46 days a year at 90°F+ and 14 inches of snow.
2,592 people · St. Clair County · median home $37,500 · income $38,750 · Jan low 24°F · 14 in snow
Full Washington Park, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Cahokia St Louis Ap station. -
16Madison, Illinois
January lows average 24.1°F
Madison is a city of 3,171 people in Madison County, Illinois. January lows average 24.1°F and July highs 89.0°F, with about 46 days a year at 90°F+ and 13 inches of snow.
3,171 people · Madison County · median home $58,900 · income $49,326 · Jan low 24°F · 13 in snow
Full Madison, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Cahokia St Louis Ap station. -
15Millstadt, Illinois
January lows average 24.1°F
Millstadt is a village of 4,071 people in St. Clair County, Illinois. January lows average 24.1°F and July highs 89.0°F, with about 46 days a year at 90°F+ and 9 inches of snow.
4,071 people · St. Clair County · median home $230,500 · income $90,901 · Jan low 24°F · 9 in snow
Full Millstadt, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Cahokia St Louis Ap station. -
14Caseyville, Illinois
January lows average 24.1°F
Caseyville is a village of 4,400 people in St. Clair County, Illinois. January lows average 24.1°F and July highs 89.0°F, with about 46 days a year at 90°F+ and 12 inches of snow.
4,400 people · St. Clair County · median home $96,800 · income $60,669 · Jan low 24°F · 12 in snow
Full Caseyville, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Cahokia St Louis Ap station. -
13Trenton, Illinois
January lows average 24.3°F
Trenton is a city of 2,690 people in Clinton County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 10 inches of snow.
2,690 people · Clinton County · median home $178,200 · income $80,795 · Jan low 24°F · 10 in snow
Full Trenton, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
12New Baden, Illinois
January lows average 24.3°F
New Baden is a village of 3,428 people in Clinton County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 10 inches of snow.
3,428 people · Clinton County · median home $172,200 · income $81,393 · Jan low 24°F · 10 in snow
Full New Baden, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
11Scott AFB, Illinois
January lows average 24.3°F

Photo: United States Geological Survey (USGS) (public domain, Wikimedia Commons) Scott AFB is a community of 3,688 people in St. Clair County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 11 inches of snow.
3,688 people · St. Clair County · median home — · income $103,390 · Jan low 24°F · 11 in snow
Full Scott AFB, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
10Smithton, Illinois
January lows average 24.3°F
Smithton is a village of 4,006 people in St. Clair County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 12 inches of snow.
4,006 people · St. Clair County · median home $256,300 · income $135,455 · Jan low 24°F · 12 in snow
Full Smithton, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
9Freeburg, Illinois
January lows average 24.3°F
Freeburg is a village of 4,582 people in St. Clair County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 11 inches of snow.
4,582 people · St. Clair County · median home $241,200 · income $92,065 · Jan low 24°F · 11 in snow
Full Freeburg, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
8Lebanon, Illinois
January lows average 24.3°F
Lebanon is a city of 4,691 people in St. Clair County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 11 inches of snow.
4,691 people · St. Clair County · median home $170,700 · income $88,750 · Jan low 24°F · 11 in snow
Full Lebanon, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
7Mascoutah, Illinois
January lows average 24.3°F
Mascoutah is a city of 8,754 people in St. Clair County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 11 inches of snow.
8,754 people · St. Clair County · median home $224,900 · income $97,375 · Jan low 24°F · 11 in snow
Full Mascoutah, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
6Highland, Illinois
January lows average 24.3°F
Highland is a city of 9,991 people in Madison County, Illinois. January lows average 24.3°F and July highs 90.2°F, with about 53 days a year at 90°F+ and 10 inches of snow.
9,991 people · Madison County · median home $202,900 · income $82,551 · Jan low 24°F · 10 in snow
Full Highland, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Belleville Siu Rsch station. -
5Fairfield, Illinois
January lows average 24.5°F

Photo: Nyttend (public domain, Wikimedia Commons) Fairfield is a city of 4,883 people in Wayne County, Illinois. January lows average 24.5°F and July highs 89.6°F, with about 44 days a year at 90°F+ and 12 inches of snow.
4,883 people · Wayne County · median home $88,800 · income $41,989 · Jan low 25°F · 12 in snow
Full Fairfield, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Fairfield Radio Wfiw station. -
4Murphysboro, Illinois
January lows average 24.8°F
Murphysboro is a city of 7,093 people in Jackson County, Illinois. January lows average 24.8°F and July highs 88.4°F, with about 40 days a year at 90°F+ and 10 inches of snow.
7,093 people · Jackson County · median home $85,900 · income $44,154 · Jan low 25°F · 10 in snow
Full Murphysboro, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Carbondale Southern Il Ap station. -
3Mount Carmel, Illinois
January lows average 25.0°F

Photo: Nyttend (public domain, Wikimedia Commons) Mount Carmel is a city of 7,015 people in Wabash County, Illinois. January lows average 25.0°F and July highs 87.4°F, with about 46 days a year at 90°F+ and 9 inches of snow.
7,015 people · Wabash County · median home $89,300 · income $47,009 · Jan low 25°F · 9 in snow
Full Mount Carmel, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Mt Carmel station. -
2Metropolis, Illinois
January lows average 25.1°F
Metropolis is a city of 5,969 people in Massac County, Illinois. January lows average 25.1°F and July highs 88.6°F, with about 42 days a year at 90°F+ and 3 inches of snow.
5,969 people · Massac County · median home $86,000 · income $50,399 · Jan low 25°F · 3 in snow
Full Metropolis, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Brookport Dam 52 station. -
1Anna, Illinois
January lows average 25.4°F
Anna is a city of 4,303 people in Union County, Illinois. January lows average 25.4°F and July highs 89.7°F, with about 43 days a year at 90°F+ and 10 inches of snow.
4,303 people · Union County · median home $134,300 · income $33,137 · Jan low 25°F · 10 in snow
Full Anna, Illinois profile: weather, storms, schools, jobs →
NOAA 1991–2020 normals, Anna 2 Nne station.
More Illinois rankings
- The 25 Best Small Towns to Retire in Illinois
- The 25 Quietest Small Towns in Illinois
- The 25 Most Affordable Small Towns in Illinois
- The 25 Best Small Towns for Families in Illinois
- The 16 Best Quiet, Affordable Small Towns to Retire in Illinois
- 25 Small Towns in Illinois With the Cheapest Homes
- The 25 Most Walkable Small Towns in Illinois
- 25 Small Towns in Illinois With the Fewest Tornadoes Since 1950
- The 25 Best Small Towns for First-Time Home Buyers in Illinois
- The 22 Best Affordable Small Towns to Retire in Illinois With Mild Winters
Same ranking, other places
- 50 Small Towns in America With the Mildest Winters
- 25 Small Towns in Pennsylvania With the Mildest Winters
- 25 Small Towns in New York With the Mildest Winters
- 25 Small Towns in Michigan With the Mildest Winters
- 25 Small Towns in Texas With the Mildest Winters
- 25 Small Towns in California With the Mildest Winters
- 25 Small Towns in New Jersey With the Mildest Winters
- 25 Small Towns in Florida With the Mildest Winters
- 25 Small Towns in Wisconsin With the Mildest Winters
- 25 Small Towns in Ohio With the Mildest Winters
- U.S. Census Bureau, American Community Survey 5-year estimates (2020–2024)
- U.S. Census Bureau, 2020 Census and 2025 Gazetteer (2020 / 2025)
- NOAA NCEI U.S. Climate Normals (1991–2020)
- NOAA NCEI Storm Events Database (1950–2026)
- FEMA OpenFEMA Disaster Declarations (this product uses the FEMA OpenFEMA API but is not endorsed by FEMA) (1953–2026)
- NCES Common Core of Data (2023–24)
- BLS Quarterly Census of Employment and Wages; USDA ERS county unemployment (BLS LAUS) (2000–2024)
- The Town Files lifestyle rankings, built from federal demographic, school, crime and housing data (2025)