Every year we get eager to work in the garden, but have to be patient or we will have issues with the seedlings running into a late season frost. Rochester MN is in climate zone 4B with dead of winter temperatures of -20 to -25 F (90th percentile). The Minnesota DNR posts average first and last freeze dates for all of Minnesota and here is ours for Rochester. Our average last frost date is May 13th (10% chance of it being later) or April 28th (50% chance of it being later) while the average first frost date is Sept 24th (10% chance it will be earlier) or Oct 5 (50% chance it will be earlier). So I think we will wait to put out seedlings until the middle of May. We also have a raised bed with a hooped row cover so that could probably be planted with cold tolerant crops (lettuce, cabbage) as early as May 1.
The spruce has a good guide on when to start indoor seedlings so that they are ready to transplant outside when the time is right. Lettuce takes 5 to 7 weeks depending on the temperature of your grow room. So if we wanted to plant lettuce seedlings in our hooped raised bed, they should be started between March 13th and March 17th. Tomatoes take 6 to 8 weeks and would be put into the main garden (May 13th) so they should be started indoors March 25th to April 8th.
It is interesting to note when the ground usually thaws in our area and to what depth the ground freezes. Frost depth is dependent on the air temperature along with how low the air temperature is below zero and how long the air temperature is below zero. One of the biggest factors which I had not really taken into consideration is whether or not there is snow on the ground and the depth of the snow. Snow acts as an insulator as its temperature does not drop below 32 degrees.
What we want to know is when does the ground thaw enough to do either surface preparation or work 6-12 inches into the ground to do trenching or plant potatoes. The charts below suggest that sometime between March 15th and April 1 the ground is thawed to 12 inches.
Here is a soil isotherm from the 60s for bare ground soil in St. Paul
The Minnesota Department of Agriculture maintains a 6″ soil depth temperature website, here is a graph for the current week in Rochester (mid March)
The Department of Transportation maintains several monitoring stations that track the frost depth and thaw line and posts them on a website. Here is the graph for this year and two others, one where the frost line did not go down very far (probably lots of early snow that stuck around all winter) and another year where the frost depth was really deep (no snow, but very cold temperatures). It interesting to note that the frost depth keeps going down all winter and then plateaus at the depth for the year and the reverse process does not happen (frost depth starts to go back towards surface). The ground is only completely thawed when the thaw from the surface dives down to the frost depth for the year.