Every station in the Michigan State Climatologist's frost probability table, searchable and sorted your way, with typical fall dates and season lengths. Maintained by Chris Izworski in Bay City.
Ask when Michigan's last frost is and you will get a shrug or a wrong answer, because the honest answer is a table, not a date. The state's frost map runs from Detroit's city core, where the median last freeze lands April 24, to the high interior around Vanderbilt, where it lands June 20, a spread of eight weeks inside one state. Below is the complete table: for each of 78 stations, the earliest last frost on record, the 75, 50, and 25 percent probability dates, and the latest freeze ever recorded there. The bolded median is the planning date; everything else tells you how much the place likes to surprise you.
Reading it: at Bay City the median is May 2, meaning half of springs still frost after that date. The cautious 25 percent date is May 9. The latest freeze on record is May 26, which is why the old timers wait for Memorial Day. Source: Michigan State Climatologist Office, published by MSU Extension.
| Station | Region | 75% | Median (50%) | Cautious (25%) | Latest ever | Planting dates |
|---|---|---|---|---|---|---|
| Adrian | Southeast | Apr 27 | May 3 | May 9 | May 23 | calendar |
| Allegan | Southwest | Apr 28 | May 6 | May 14 | Jun 12 | calendar |
| Alma | Central | May 3 | May 10 | May 17 | May 27 | calendar |
| Alpena | Northeast Lower | May 1 | May 8 | May 15 | May 29 | calendar |
| Alpena WSO | Northeast Lower | May 22 | May 31 | Jun 8 | Jun 21 | calendar |
| Ann Arbor | Southeast | Apr 22 | Apr 29 | May 6 | May 27 | calendar |
| Atlanta | Northeast Lower | May 24 | Jun 2 | Jun 11 | Jul 6 | calendar |
| Bad Axe | Thumb | May 8 | May 15 | May 22 | Jun 8 | calendar |
| Battle Creek | Southwest | Apr 28 | May 5 | May 11 | May 27 | calendar |
| Bay City | Saginaw Valley | Apr 25 | May 2 | May 9 | May 26 | calendar |
| Big Rapids | West Central | May 13 | May 20 | May 26 | Jun 12 | calendar |
| Bloomingdale | Southwest | May 1 | May 10 | May 19 | Jun 12 | calendar |
| Cadillac | Northwest Lower | May 21 | Jun 1 | Jun 12 | Jul 11 | calendar |
| Caro | Thumb | May 15 | May 23 | May 31 | Jun 22 | calendar |
| Charlotte | Central | May 5 | May 13 | May 21 | Jun 12 | calendar |
| Chatham | Upper Peninsula | Jun 1 | Jun 11 | Jun 21 | Jul 31 | calendar |
| Cheboygan | Northeast Lower | May 10 | May 17 | May 24 | Jun 21 | calendar |
| Coldwater | South Central | Apr 29 | May 7 | May 14 | May 27 | calendar |
| Detroit Metro | Southeast | Apr 25 | May 3 | May 11 | May 29 | calendar |
| Detroit city | Southeast | Apr 18 | Apr 24 | Apr 30 | May 12 | calendar |
| East Jordan | Northwest Lower | May 22 | May 30 | Jun 6 | Jun 22 | calendar |
| East Tawas | Northeast Lower | May 14 | May 22 | May 30 | Jun 14 | calendar |
| Eau Claire | Southwest | Apr 25 | May 2 | May 9 | May 29 | calendar |
| Escanaba | Upper Peninsula | May 5 | May 11 | May 17 | May 30 | calendar |
| Fayette | Upper Peninsula | May 9 | May 16 | May 23 | Jun 8 | calendar |
| Fife Lake | Northwest Lower | May 29 | Jun 7 | Jun 17 | Jul 6 | calendar |
| Flint | East Central | May 2 | May 8 | May 15 | May 27 | calendar |
| Frankfort | Northwest Lower | May 10 | May 18 | May 26 | Jun 23 | calendar |
| Gladwin | North Central | May 13 | May 20 | May 28 | Jun 22 | calendar |
| Grand Haven | Lakeshore | Apr 25 | May 1 | May 8 | May 18 | calendar |
| Grand Marais | Upper Peninsula | May 23 | Jun 4 | Jun 15 | Jul 20 | calendar |
| Grand Rapids | West | Apr 24 | May 2 | May 10 | May 27 | calendar |
| Grayling | North Central | May 21 | May 31 | Jun 10 | Jul 21 | calendar |
| Greenville | West | May 1 | May 9 | May 18 | Jun 12 | calendar |
| Gull Lake | Southwest | May 1 | May 7 | May 13 | May 29 | calendar |
| Hale Loud Dam | Northeast Lower | May 16 | May 23 | May 30 | Jun 20 | calendar |
| Harbor Beach | Thumb | May 2 | May 9 | May 16 | May 26 | calendar |
| Harrisville | Northeast Lower | May 14 | May 23 | Jun 1 | Jun 25 | calendar |
| Hart | Lakeshore | May 12 | May 20 | May 27 | Jun 13 | calendar |
| Hastings | Southwest | May 6 | May 13 | May 21 | Jun 12 | calendar |
| Hillsdale | South Central | May 4 | May 12 | May 20 | Jun 12 | calendar |
| Holland | Lakeshore | Apr 29 | May 8 | May 17 | Jun 12 | calendar |
| Houghton | Upper Peninsula | May 15 | May 23 | May 31 | Jul 10 | calendar |
| Houghton Lake | North Central | May 22 | Jun 2 | Jun 14 | Jun 20 | calendar |
| Iron Mountain | Upper Peninsula | May 23 | May 30 | Jun 6 | Jun 22 | calendar |
| Ironwood | Upper Peninsula | May 17 | May 24 | May 31 | Jun 14 | calendar |
| Ishpeming | Upper Peninsula | May 21 | May 28 | Jun 4 | Jun 18 | calendar |
| Jackson | South Central | May 1 | May 8 | May 15 | May 31 | calendar |
| Kalamazoo | Southwest | Apr 26 | May 3 | May 11 | May 27 | calendar |
| Lake City | North Central | May 19 | May 29 | Jun 8 | Jul 11 | calendar |
| Lansing | Central | Apr 30 | May 8 | May 17 | Jun 12 | calendar |
| Lapeer | East Central | May 5 | May 14 | May 23 | Jun 8 | calendar |
| Ludington | Lakeshore | May 4 | May 13 | May 22 | Jun 14 | calendar |
| Manistee | Lakeshore | May 3 | May 11 | May 18 | May 31 | calendar |
| Marquette WSO | Upper Peninsula | May 7 | May 13 | May 19 | May 29 | calendar |
| Midland | Saginaw Valley | Apr 30 | May 8 | May 17 | Jun 12 | calendar |
| Milford | Southeast | May 1 | May 8 | May 15 | May 30 | calendar |
| Mio | Northeast Lower | May 24 | Jun 1 | Jun 10 | Jun 21 | calendar |
| Monroe | Southeast | Apr 19 | Apr 26 | May 2 | May 13 | calendar |
| Mt. Clemens | Southeast | Apr 19 | Apr 27 | May 5 | May 23 | calendar |
| Mt. Pleasant | Central | May 8 | May 14 | May 21 | May 30 | calendar |
| Munising | Upper Peninsula | Jun 2 | Jun 10 | Jun 17 | Jul 4 | calendar |
| Muskegon | Lakeshore | Apr 28 | May 6 | May 14 | Jun 12 | calendar |
| Newaygo | West Central | May 18 | May 26 | Jun 3 | Jun 22 | calendar |
| Newberry | Upper Peninsula | May 19 | May 26 | Jun 2 | Jun 18 | calendar |
| Onaway | Northeast Lower | May 17 | May 25 | Jun 1 | Jun 15 | calendar |
| Owosso | Central | May 5 | May 12 | May 19 | May 30 | calendar |
| Paw Paw | Southwest | May 4 | May 11 | May 19 | Jun 12 | calendar |
| Pontiac | Southeast | Apr 30 | May 6 | May 13 | May 25 | calendar |
| Port Huron | Thumb | Apr 25 | May 3 | May 11 | Jun 5 | calendar |
| Saginaw | Saginaw Valley | Apr 27 | May 4 | May 11 | May 28 | calendar |
| Sault Ste. Marie | Upper Peninsula | May 14 | May 22 | May 29 | Jun 21 | calendar |
| South Haven | Southwest | Apr 26 | May 3 | May 9 | May 23 | calendar |
| Three Rivers | Southwest | Apr 30 | May 8 | May 15 | May 29 | calendar |
| Traverse City | Northwest Lower | May 15 | May 23 | Jun 1 | Jul 6 | calendar |
| Vanderbilt | North Central | Jun 10 | Jun 20 | Jun 30 | Jul 31 | calendar |
| West Branch | North Central | May 19 | May 27 | Jun 4 | Jun 18 | calendar |
| Willis | Southeast | May 2 | May 10 | May 17 | May 29 | calendar |
Fall works differently. The spring table above is the State Climatologist's probability math; comparable official fall probabilities are not published in one table, so the dates below are typical medians drawn from the 1991 to 2020 NOAA climate normals, good to about a week either way. Two patterns dominate. The big lakes hold summer's heat, so the Lake Michigan shore, Saginaw Bay, and the Superior shoreline stay frost free one to three weeks longer than ground a few miles inland. And cold air drains into the sandy interior highlands, which is why Gaylord can freeze in the first days of September while Detroit grows tomatoes to Halloween.
| City | Typical first fall frost | Local note |
|---|---|---|
| Alpena | Sep 25 | |
| Ann Arbor | Oct 12 | |
| Bad Axe | Oct 3 | Thumb interior cools early |
| Battle Creek | Oct 6 | |
| Bay City | Oct 3 | Saginaw Bay moderates the shoreline |
| Benton Harbor and South Haven | Oct 15 | Lakeshore holds warmth |
| Big Rapids | Sep 22 | |
| Cadillac | Sep 18 | Inland cold pocket |
| Cheboygan | Sep 28 | |
| Detroit (city) | Oct 25 | Urban heat island runs late |
| Detroit Metro | Oct 15 | |
| East Tawas | Oct 3 | Lake Huron shoreline |
| Escanaba | Oct 3 | Bay de Noc moderates |
| Flint | Oct 5 | |
| Gaylord and Vanderbilt | Sep 8 | High interior plateau, earliest in the Lower |
| Gladwin | Sep 22 | |
| Grand Haven | Oct 15 | Lakeshore holds warmth |
| Grand Rapids | Oct 8 | |
| Grayling | Sep 12 | Sandy outwash plain, severe cold pocket |
| Holland | Oct 12 | Lakeshore holds warmth |
| Houghton | Sep 28 | Keweenaw lake effect |
| Houghton Lake | Sep 15 | |
| Iron Mountain | Sep 18 | |
| Ironwood | Sep 15 | |
| Jackson | Oct 5 | |
| Kalamazoo | Oct 8 | |
| Lansing | Oct 3 | |
| Ludington | Oct 10 | Lakeshore holds warmth |
| Marquette | Oct 1 | Lake Superior shoreline runs later than inland |
| Midland | Oct 1 | |
| Monroe | Oct 15 | |
| Mt. Clemens | Oct 18 | |
| Mt. Pleasant | Sep 28 | |
| Munising | Sep 25 | Superior shoreline |
| Muskegon | Oct 12 | Lakeshore holds warmth |
| Newberry | Sep 12 | Interior UP cold pocket |
| Pontiac | Oct 10 | |
| Port Huron | Oct 12 | Lake Huron moderates |
| Saginaw | Oct 5 | |
| Sault Ste. Marie | Sep 22 | |
| Traverse City | Oct 8 | Bay moderates; inland pockets frost weeks earlier |
| West Branch | Sep 18 |
Subtract the median last spring frost from the typical first fall frost and you get the honest length of the frost free season. The table sorts longest to shortest, and the spread says everything about gardening in this state: a Detroit gardener gets more than twice the frost free days of a Vanderbilt gardener, 130 miles apart.
| City | Median last spring frost | Typical first fall frost | Frost free season |
|---|---|---|---|
| Detroit city | Apr 24 | Oct 25 | 184 days |
| Monroe | Apr 26 | Oct 15 | 172 days |
| Grand Haven | May 1 | Oct 15 | 167 days |
| Ann Arbor | Apr 29 | Oct 12 | 166 days |
| Port Huron | May 3 | Oct 12 | 162 days |
| Grand Rapids | May 2 | Oct 8 | 159 days |
| Muskegon | May 6 | Oct 12 | 159 days |
| Kalamazoo | May 3 | Oct 8 | 158 days |
| Pontiac | May 6 | Oct 10 | 157 days |
| Holland | May 8 | Oct 12 | 157 days |
| Battle Creek | May 5 | Oct 6 | 154 days |
| Saginaw | May 4 | Oct 5 | 154 days |
| Bay City | May 2 | Oct 3 | 154 days |
| Flint | May 8 | Oct 5 | 150 days |
| Jackson | May 8 | Oct 5 | 150 days |
| Ludington | May 13 | Oct 10 | 150 days |
| Lansing | May 8 | Oct 3 | 148 days |
| Midland | May 8 | Oct 1 | 146 days |
| Escanaba | May 11 | Oct 3 | 145 days |
| Bad Axe | May 15 | Oct 3 | 141 days |
| Marquette WSO | May 13 | Oct 1 | 141 days |
| Alpena | May 8 | Sep 25 | 140 days |
| Traverse City | May 23 | Oct 8 | 138 days |
| Mt. Pleasant | May 14 | Sep 28 | 137 days |
| East Tawas | May 22 | Oct 3 | 134 days |
| Cheboygan | May 17 | Sep 28 | 134 days |
| Houghton | May 23 | Sep 28 | 128 days |
| Gladwin | May 20 | Sep 22 | 125 days |
| Big Rapids | May 20 | Sep 22 | 125 days |
| Sault Ste. Marie | May 22 | Sep 22 | 123 days |
| West Branch | May 27 | Sep 18 | 114 days |
| Ironwood | May 24 | Sep 15 | 114 days |
| Iron Mountain | May 30 | Sep 18 | 111 days |
| Cadillac | Jun 1 | Sep 18 | 109 days |
| Newberry | May 26 | Sep 12 | 109 days |
| Munising | Jun 10 | Sep 25 | 107 days |
| Houghton Lake | Jun 2 | Sep 15 | 105 days |
| Grayling | May 31 | Sep 12 | 104 days |
| Vanderbilt | Jun 20 | Sep 8 | 80 days |
The strangest rows in the spring table are not in the Upper Peninsula. Marquette's median is May 13; Vanderbilt, 200 miles south of it, is June 20. Grayling, Fife Lake, Atlanta, and Houghton Lake all run two to four weeks colder than their latitude suggests. The reason is landform: the northern Lower Peninsula's high sandy outwash plains sit above the lake influence, radiate heat on clear nights, and collect the cold air that drains off the surrounding hills. If you garden in that country, the local wisdom that frost can come any month of the year is not folklore, it is the station record. Grayling's latest spring freeze on record is July 21.
The mirror image is the shoreline. Grand Haven, Holland, Muskegon, and South Haven pick up spring frost protection from a cold Lake Michigan that suppresses early warmth, then repay it in fall when the warm lake holds frost off well into October, which is exactly why the fruit belt is where it is. Saginaw Bay does the same smaller favor for Bay City: the shoreline gardens run a week or more past the ground five miles inland. If you can see big water from your garden, trust the later fall dates; if you are in a low spot behind the first ridge, do not.
Frost dates and hardiness zones answer different questions. Zones describe average winter minimums and tell you which perennials survive; the 2023 USDA update shifted much of lower Michigan about half a zone warmer, putting the Bay City area on the 6a to 6b line. None of that moves a frost date. For deciding when to sow and transplant, use the tables on this page, or better, the planting calendar, which turns any station above into a full schedule for 47 crops.
A frost date is a probability; a frost forecast is a Tuesday. When one is coming, the cheap defenses work: water the beds in the afternoon because damp soil holds and releases more heat overnight, cover tender crops before sunset with row cover, sheets, or overturned buckets so the ground's warmth is trapped rather than the plant alone, and pull the covers after sunrise. A degree or two of protection is usually the whole game, and most frost nights in the shoulder seasons are one bad hour just before dawn.
The city station's median is April 24, with April 30 as the cautious date and May 12 the latest on record. The metro airport runs about a week colder: May 3 median.
May 2 median, May 10 cautious, May 27 latest recorded.
May 23 median, June 1 cautious, and the record is July 6, a reminder that the bay moderates the town while the inland hills do their own thing.
One to three weeks after your station's median, once nights hold above 50. The calendar computes it per station.