Zone 4a Planting Calendar
In zone 4a, the median last spring frost falls around May 12 and the first fall frost around Sep 30, giving roughly 140 frost-free days. Average annual minimum temperature is -30°F to -25°F. Every date in the table below is calculated from those two frost dates.
Comparable areas: Fargo, ND, Duluth, MN, Caribou, ME. Anchored on NWS 1991-2020 normals for Fargo, ND (last spring 32F May 10, first fall 32F Oct 2, ~143 frost-free days) and Grand Forks, ND (May 14 / Sep 28, ~137 days). Lakeshore sites (Duluth, coastal Maine) run later in fall and later in spring than inland sites in the same zone.
What to plant and when in zone 4a
Sorted by when you start each crop. Dates are calculated from a median last frost of May 12 and a first frost of Sep 30.
| Crop | Start indoors | Plant outside | Fall sowing | Harvest from |
|---|---|---|---|---|
| Celery | Feb 17 – Mar 3 | May 26 – Jun 8 | — | Sep 3 – Oct 3 |
| Leek | Feb 17 – Mar 17 | Apr 14 – Apr 27 | — | Jul 13 – Sep 11 |
| Onion | Feb 17 – Mar 3 | Apr 21 – May 4 | — | Jul 30 – Aug 19 |
| Rosemary | Feb 17 – Mar 3 | May 26 – Jun 8 | — | Aug 14 – Sep 3 |
| Kale | Feb 24 – Mar 17 | Apr 14 – Apr 27 | Jul 8 – Jul 21 | Jun 3 – Jul 5 |
| Broccoli | Mar 3 – Mar 24 | Apr 21 – May 4 | Jul 1 – Jul 14 | Jun 10 – Jul 20 |
| Cabbage | Mar 3 – Mar 24 | Apr 21 – May 4 | Jul 1 – Jul 14 | Jun 20 – Jul 30 |
| Pepper (sweet/bell) | Mar 3 – Mar 31 | Jun 2 – Jun 15 | — | Aug 11 – Aug 26 |
| Chives | Mar 3 – Mar 17 | May 12 – May 25 | — | Jul 31 – Aug 10 |
| Common Thyme | Mar 3 – Mar 17 | May 12 – May 25 | — | Jul 11 – Aug 10 |
| Greek Oregano | Mar 3 – Mar 17 | May 12 – May 25 | — | Jul 31 – Aug 10 |
| Cauliflower | Mar 10 – Mar 31 | Apr 28 – May 11 | Jul 1 – Jul 14 | Jun 17 – Jul 17 |
| Eggplant | Mar 17 – Mar 31 | May 26 – Jun 8 | — | Jul 20 – Aug 14 |
| Sweet Potato | Mar 17 – Mar 31 | Jun 2 – Jun 15 | — | Aug 31 – Sep 30 |
| Basil | Mar 17 – Mar 31 | May 19 – Jun 1 | — | Jul 25 – Aug 24 |
| Garden Sage | Mar 17 – Mar 31 | May 12 – May 25 | — | Jul 21 – Jul 31 |
| Parsley | Mar 17 – Mar 31 | May 12 – May 25 | Jul 22 – Aug 4 | Jul 21 – Jul 31 |
| Spearmint | Mar 17 – Mar 31 | May 12 – May 25 | — | Jul 11 – Aug 10 |
| Calendula / Pot Marigold | Mar 17 – Mar 31 | Apr 28 – May 11 | Aug 5 – Aug 18 | Jun 17 – Jun 27 |
| French Marigold | Mar 17 – Apr 14 | May 19 – Jun 1 | — | Jul 3 – Jul 18 |
| Sweet Alyssum | Mar 17 – Mar 31 | Apr 28 – May 11 | Aug 5 – Aug 18 | Jun 9 – Jun 23 |
| Tomato | Mar 24 – Apr 7 | May 19 – Jun 1 | — | Jul 13 – Aug 17 |
| Bok Choy | Mar 31 – Apr 14 | Apr 28 – May 11 | Aug 5 – Aug 18 | May 28 – Jun 27 |
| Collard Greens | Mar 31 – Apr 14 | Apr 28 – May 11 | Jul 8 – Jul 21 | Jun 27 – Jul 17 |
| Kohlrabi | Mar 31 – Apr 14 | Apr 21 – May 4 | Jul 29 – Aug 11 | Jun 17 – Jun 27 |
| Lettuce | Mar 31 – Apr 14 | Apr 21 – May 4 | Jul 22 – Aug 4 | Jun 17 – Jul 7 |
| Spinach | Mar 31 – Apr 7 | Apr 21 – May 4 | Aug 12 – Aug 25 | Jun 18 – Jun 29 |
| Swiss Chard | Mar 31 – Apr 14 | Apr 28 – May 11 | Sep 2 – Sep 15 | Jun 7 – Jun 22 |
| Pea | — | Apr 7 – Apr 20 | Jul 29 – Aug 11 | Jun 1 – Jun 21 |
| Rhubarb | — | Apr 7 – Apr 20 | — | Apr 6 |
| Watermelon | Apr 7 – Apr 28 | May 26 – Jun 8 | — | Aug 4 – Aug 29 |
| Arugula | — | Apr 14 – Apr 27 | Aug 19 – Sep 1 | May 14 – Jun 3 |
| Asparagus | — | Apr 14 – Apr 27 | — | Apr 13 |
| Cucumber | Apr 14 – Apr 28 | May 26 – Jun 8 | — | Jul 15 – Aug 4 |
| Pumpkin | Apr 14 – Apr 21 | May 26 – Jun 8 | — | Aug 19 – Sep 23 |
| Turnip | — | Apr 14 – Apr 27 | Jul 29 – Aug 11 | May 24 – Jun 28 |
| Nasturtium | Apr 14 – Apr 21 | May 19 – Jun 1 | — | Jul 13 – Jul 23 |
| Beet | — | Apr 21 – May 4 | Jul 22 – Aug 4 | Jun 10 – Jun 30 |
| Carrot | — | Apr 21 – May 4 | Jul 15 – Jul 28 | Jun 20 – Jul 10 |
| Potato | — | Apr 21 – May 4 | — | Jun 30 – Aug 19 |
| Radish | — | Apr 21 – May 4 | Aug 19 – Sep 1 | May 12 – Jun 5 |
| Sunflower | Apr 21 – Apr 28 | May 19 – Jun 1 | — | Jul 28 – Aug 27 |
| Parsnip | — | Apr 28 – May 11 | — | Aug 16 – Sep 5 |
| Winter Squash (Butternut) | Apr 28 – May 5 | May 26 – Jun 8 | — | Aug 14 – Sep 3 |
| Cantaloupe (Muskmelon) | Apr 28 – May 5 | May 26 – Jun 8 | — | Aug 2 – Aug 19 |
| Strawberry | — | Apr 28 – May 11 | — | May 26 – May 28 |
| Dill | — | May 5 – May 18 | Jul 22 – Aug 4 | Jun 14 – Jun 29 |
| Bush bean | — | May 12 – May 25 | Jul 22 – Aug 4 | Jul 1 – Jul 11 |
| Pole bean | — | May 12 – May 25 | — | Jul 9 – Jul 14 |
| Sweet corn | — | May 12 – May 25 | — | Jul 11 – Aug 20 |
| Borage | — | May 12 – May 25 | — | Jul 1 – Jul 11 |
| Cilantro / Coriander | — | May 12 – May 25 | Aug 5 – Aug 18 | Jun 26 – Jul 21 |
| Summer squash / zucchini | — | May 19 – Jun 1 | — | Jun 23 – Jul 13 |
| Okra | — | May 26 – Jun 8 | — | Jul 25 – Aug 4 |
| Brussels Sprouts | — | Jul 21 – Aug 3 | Jun 24 – Jul 7 | Oct 14 – Nov 8 |
| Garlic | — | — | Sep 30 – Oct 13 | — |
Print this page for a calendar you can pin up in the shed.
Get reminded at the right week
FreePlanting dates are only useful if you remember them. Tell us your zone and we'll email you when it's time to start seeds indoors, when your last frost is close, and when the autumn sowing window opens — dated for your climate, not someone else's.
Seasonal sends only — roughly one a month, more in spring. No selling your address, unsubscribe in one click. Don't know your zone?
One zone is not one climate. USDA hardiness zones are drawn from average winter minimum temperature and nothing else, so they do not determine frost dates. Two gardens in zone 4a can differ by two or three weeks depending on elevation, distance from water, and local topography. Treat this page as a starting schedule and adjust it to what your own garden has actually done. How these dates were derived →
Other zones
Not sure which zone you're in? Look it up by ZIP code →