Des Moines, Iowa Climate

Des Moines weather by month — average highs and lows, rainfall, all-time records, and the warming record since 1946

Hottest month
86°FJuly average high
Coldest month
14°FJanuary average low
Precipitation
36.5 ina year
Snowfall
36.5 ina year

1991–2020 NOAA climate normals

At 12:30 AM CDT on Sep 21 it was 61°F in Des Moines — 2° above the 59°F typical for that hour (estimated from the Sep 21 normal high of 74°F and low of 53°F, interpolated from the monthly normals).

Des Moines weather by month

Average high, low, and rainfall for every month, from Des Moines’s 1991–2020 climate normals, the standard 30-year reference period. Each band runs from the month’s average low to its average high: a tall band is a big day-to-night swing.

Average high → low (°F)Rainfall (inches)1991–2020 normals
Des Moines monthly weather averages — average high, average low, and rainfall for each month, from the 1991–2020 U.S. Climate Normals (NOAA).
MonthAvg HighAvg LowRainfall
January31°F14°F1.1 in
February36°F18°F1.3 in
March49°F30°F2.2 in
April62°F41°F4.0 in
May72°F52°F5.2 in
June82°F62°F5.3 in
July86°F66°F3.8 in
August84°F64°F4.2 in
September77°F55°F3.2 in
October63°F43°F2.8 in
November48°F30°F1.9 in
December36°F20°F1.6 in
Annual61°F41°F36.5 in

Des Moines’s warming record since 1946

1946: 52.0°F (+1.4°F vs 1946–2025 mean)1947: 50.1°F (-0.5°F vs 1946–2025 mean)1948: 50.3°F (-0.3°F vs 1946–2025 mean)1949: 50.3°F (-0.3°F vs 1946–2025 mean)1950: 47.4°F (-3.2°F vs 1946–2025 mean)1951: 46.9°F (-3.7°F vs 1946–2025 mean)1952: 50.1°F (-0.5°F vs 1946–2025 mean)1953: 51.7°F (+1.1°F vs 1946–2025 mean)1954: 51.7°F (+1.1°F vs 1946–2025 mean)1955: 50.5°F (-0.1°F vs 1946–2025 mean)1956: 50.8°F (+0.2°F vs 1946–2025 mean)1957: 49.9°F (-0.7°F vs 1946–2025 mean)1958: 49.2°F (-1.4°F vs 1946–2025 mean)1959: 49.4°F (-1.2°F vs 1946–2025 mean)1960: 48.4°F (-2.2°F vs 1946–2025 mean)1961: 48.7°F (-1.9°F vs 1946–2025 mean)1962: 49.0°F (-1.6°F vs 1946–2025 mean)1963: 49.1°F (-1.5°F vs 1946–2025 mean)1964: 49.5°F (-1.1°F vs 1946–2025 mean)1965: 48.9°F (-1.7°F vs 1946–2025 mean)1966: 48.6°F (-2.0°F vs 1946–2025 mean)1967: 48.9°F (-1.7°F vs 1946–2025 mean)1968: 49.2°F (-1.4°F vs 1946–2025 mean)1969: 48.6°F (-2.0°F vs 1946–2025 mean)1970: 50.2°F (-0.4°F vs 1946–2025 mean)1971: 50.4°F (-0.2°F vs 1946–2025 mean)1972: 47.2°F (-3.4°F vs 1946–2025 mean)1973: 51.7°F (+1.1°F vs 1946–2025 mean)1974: 50.6°F (-0.0°F vs 1946–2025 mean)1975: 50.7°F (+0.1°F vs 1946–2025 mean)1976: 50.3°F (-0.3°F vs 1946–2025 mean)1977: 51.9°F (+1.3°F vs 1946–2025 mean)1978: 48.3°F (-2.3°F vs 1946–2025 mean)1979: 48.1°F (-2.5°F vs 1946–2025 mean)1980: 50.6°F (-0.0°F vs 1946–2025 mean)1981: 52.0°F (+1.4°F vs 1946–2025 mean)1982: 49.0°F (-1.6°F vs 1946–2025 mean)1983: 51.0°F (+0.4°F vs 1946–2025 mean)1984: 50.2°F (-0.4°F vs 1946–2025 mean)1985: 48.3°F (-2.3°F vs 1946–2025 mean)1986: 50.9°F (+0.3°F vs 1946–2025 mean)1987: 53.2°F (+2.6°F vs 1946–2025 mean)1988: 51.4°F (+0.8°F vs 1946–2025 mean)1989: 49.1°F (-1.5°F vs 1946–2025 mean)1990: 51.7°F (+1.1°F vs 1946–2025 mean)1991: 51.5°F (+0.9°F vs 1946–2025 mean)1992: 50.6°F (-0.0°F vs 1946–2025 mean)1993: 48.1°F (-2.5°F vs 1946–2025 mean)1994: 50.0°F (-0.6°F vs 1946–2025 mean)1995: 49.9°F (-0.7°F vs 1946–2025 mean)1996: 47.2°F (-3.4°F vs 1946–2025 mean)1997: 49.2°F (-1.4°F vs 1946–2025 mean)1998: 52.5°F (+1.9°F vs 1946–2025 mean)1999: 52.0°F (+1.4°F vs 1946–2025 mean)2000: 51.1°F (+0.5°F vs 1946–2025 mean)2001: 51.5°F (+0.9°F vs 1946–2025 mean)2002: 51.4°F (+0.8°F vs 1946–2025 mean)2003: 50.7°F (+0.1°F vs 1946–2025 mean)2004: 50.8°F (+0.2°F vs 1946–2025 mean)2005: 52.4°F (+1.8°F vs 1946–2025 mean)2006: 53.4°F (+2.8°F vs 1946–2025 mean)2007: 51.5°F (+0.9°F vs 1946–2025 mean)2008: 48.6°F (-2.0°F vs 1946–2025 mean)2009: 50.4°F (-0.2°F vs 1946–2025 mean)2010: 51.8°F (+1.2°F vs 1946–2025 mean)2011: 52.3°F (+1.7°F vs 1946–2025 mean)2012: 56.1°F (+5.5°F vs 1946–2025 mean)2013: 50.9°F (+0.3°F vs 1946–2025 mean)2014: 49.7°F (-0.9°F vs 1946–2025 mean)2015: 53.5°F (+2.9°F vs 1946–2025 mean)2016: 54.8°F (+4.2°F vs 1946–2025 mean)2017: 54.0°F (+3.4°F vs 1946–2025 mean)2018: 51.1°F (+0.5°F vs 1946–2025 mean)2019: 49.9°F (-0.7°F vs 1946–2025 mean)2020: 51.9°F (+1.3°F vs 1946–2025 mean)2021: 53.0°F (+2.4°F vs 1946–2025 mean)2022: 50.6°F (-0.0°F vs 1946–2025 mean)2023: 53.9°F (+3.3°F vs 1946–2025 mean)2024: 54.9°F (+4.3°F vs 1946–2025 mean)2025: 52.6°F (+2.0°F vs 1946–2025 mean)
Des Moines has warmed 3.3°F since 1946 (+0.42°F per decade, 1946–2025 trend)

Not what a typical year looks like, but how the typical year has changed. Each stripe is one complete year’s average temperature at the station, 1946 to 2025, colored against the mean of those years: blue for cooler years, red for warmer ones. The figure under the stripes is the least-squares trend line fitted to 1946–2025 — Des Moines averages about 3.3°F warmer by that trend than in 1946.

Compared with the national rankingThe fastest-warming cities ranking fits every city to the same years, 1970–2025, so rates compare like for like. Over that window Des Moines warms at +0.57°F per decade, #32 of 66. The figure above uses the station’s own record, 1946–2025, so the two rates differ.

Des Moines rainfall by month

January: 1.08 inJFebruary: 1.34 inFMarch: 2.17 inMApril: 4.02 inAMay: 5.24 inMJune: 5.26 inJJuly: 3.82 inJAugust: 4.17 inASeptember: 3.18 inSOctober: 2.78 inONovember: 1.91 inNDecember: 1.58 inD36.5per year

Des Moines averages 36.5 inches of precipitation a year. The wettest month is June and the driest is January.

Des Moines also averages 36.5 inches of snowfall a year.

Des Moines temperature records

All-time record high
108°Fset August 16, 1983
All-time record low
-26°Fset February 3, 1996

Records are drawn from the nearest long-term weather station’s full daily history, so they capture the most extreme single day Des Moines has recorded — not a typical seasonal high or low.

Frequently asked

What is the hottest month in Des Moines?
July is Des Moines's hottest month, with the highest average daily high of the year. The month-by-month table above shows Des Moines's exact average high and low for each month, based on the 1991–2020 climate normals — the standard 30-year reference period meteorologists use.
What is the coldest month in Des Moines?
January is Des Moines's coldest month, with the lowest average daily low of the year. The averages-by-month chart above gives the exact average high and low for every month, so you can see how cold a typical winter day runs.
How much does it rain in Des Moines?
Des Moines's total annual precipitation and its wettest and driest months are shown in the rainfall-by-month section above. Those figures are 1991–2020 normals — the average monthly precipitation total across that 30-year window — so they reflect a typical year rather than any single wet or dry season.
What months are best to visit Des Moines?
The most comfortable months in Des Moines are usually the shoulder seasons — spring and fall — when temperatures sit between the summer peak and winter low and rainfall is moderate. Compare the average high, low, and precipitation for each month in the table above to pick the window that fits the weather you want.
Has Des Moines gotten hotter?
Yes. The warming-stripes chart above plots Des Moines's annual mean temperature for every complete year of station data from 1946 to 2025, and the trend line fitted to 1946–2025 rises about 3.3°F (+0.42°F per decade) — recent decades average warmer than the start of that window.
What is the record high temperature in Des Moines?
Des Moines's all-time record high — the hottest single day in the station record — is shown in the records section above, along with the date it occurred. Records are drawn from the nearest long-term weather station's full daily history, which begins in 1945, so they capture the most extreme heat on record, not just a typical summer day.
What is the record low temperature in Des Moines?
Des Moines's all-time record low and the date it was set appear in the records section above. Like the record high, it comes from the station's full daily history back to 1945, so it reflects the coldest day on record rather than an average winter low.