Data & Methodology
How GardeningByZone calculates planting dates, and the open dataset behind it.
Not every planting date on this site is computed: 54 crops show extension-guide windows. This page documents the data sources, the calculation, what's covered, and the known limitations, so the numbers are reproducible and citable.
Plant pages: state extension guides
For 54 vegetables, each plant page gives the planting windows from the state extension services' own planting calendars, the same sources our regional planting calendars restate: 78 guide pages covering states, regions within states, and elevation bands. Each row names its guide and links to it. The windows are shown as each guide gives them, including late-summer and fall plantings; selecting a zone shows the guides for places in that zone. Where a guide is silent on a crop, the page doesn't fill the gap.
The estimate described below applies only to the plant pages for crops the extension guides don't cover, mostly herbs, flowers, and fruit. Those are being moved to sourced values.
Data sources for the estimates
- USDA Plant Hardiness Zones: the standard 13-zone (a/b half-zone) system based on average annual minimum winter temperature.
- Last spring frost and first fall frost per zone: the median last spring frost and first fall frost for each zone, listed in full below.
- Per-crop timing offsets: for each of 100+ crops, how many weeks before or after the last spring frost to start seeds indoors, transplant, and direct sow.
How an estimated planting date is calculated
For a given crop and zone, each estimated date is the zone's last spring frost shifted by the crop's offset:
date = zone last spring frost + (crop offset in weeks)
A negative offset means before the last frost (e.g. cool-season crops and indoor seed starting); a positive offset means after it (e.g. transplanting heat-loving crops once the soil has warmed). The offsets are zone-independent (the zone supplies the frost date, the crop supplies the shift), which is why the same crop's calendar slides earlier in warm zones and later in cold ones.
Frost dates by zone
The foundational dataset. Frost-free days count the stretch between the last spring frost and first fall frost that stays freeze-free in about 9 years out of 10.
The dates come from NOAA NCEI, U.S. Climate Normals 1991-2020, annual/seasonal normals, version 1.0.1 (Palecki, Durre, Applequist, Arguez and Lawrimore, 2021), doi:10.25921/4ek7-fk11. Last spring frost is the column ANN-TMIN-PRBLST-T32FP10: a spring freeze is unlikely after the last spring frost, with only a 1 in 10 chance of one on or after it. First fall frost is ANN-TMIN-PRBFST-T32FP10: a fall freeze is unlikely before the first fall frost, with only a 1 in 10 chance of one on or before it. Both use the 32°F threshold.
7,247 US stations report both columns. Each station takes the 2023 USDA zone of the nearest Census 2020 ZIP code area (ZCTA) center in the site's ZIP table, within 50 km (median 5.1 km; 90% within 15.3 km). 29 stations beyond 50 km and 75 in zones the site has no page for are left out, so 7,143 are used. A zone's date is the median over its stations; a tie takes the later spring date and the earlier fall date.
A station that freezes in fewer than 1 year in 10 has no date (NOAA's floor) and counts as frost-free; a station with freeze risk on every day of the year counts as the latest spring and earliest fall date. Zones 10b, 11a and 11b come out frost-free and are shown as Jan 1 and Dec 31.
Dates vary within a zone: the middle half of stations spans up to 20 days (zone 5a's last spring frost runs May 15 to Jun 4). A ZIP code's center can sit at a different elevation from its station. Zone 2a is all Alaska. Seasons are shorter than average by design (zone 6a: 135 frost-free days, was 177).
| Zone | Region (representative) | Last Spring Frost | First Fall Frost | Frost-free days |
|---|---|---|---|---|
| Zone 2A | great plains | Jun 12 | Aug 17 | 66 |
| Zone 3B | great plains | Jun 1 | Sep 8 | 99 |
| Zone 4A | midwest | May 29 | Sep 13 | 107 |
| Zone 4B | midwest | May 28 | Sep 15 | 110 |
| Zone 5A | midwest | May 26 | Sep 18 | 115 |
| Zone 5B | midwest | May 21 | Sep 24 | 126 |
| Zone 6A | midwest | May 17 | Sep 29 | 135 |
| Zone 6B | midwest | May 11 | Oct 5 | 147 |
| Zone 7A | southeast | May 6 | Oct 9 | 156 |
| Zone 7B | southeast | Apr 24 | Oct 17 | 176 |
| Zone 8A | southeast | Apr 16 | Oct 23 | 190 |
| Zone 8B | southeast | Apr 7 | Oct 29 | 205 |
| Zone 9A | texas | Mar 26 | Nov 6 | 225 |
| Zone 9B | florida | Mar 8 | Nov 22 | 259 |
| Zone 10A | florida | Feb 16 | Dec 10 | 297 |
| Zone 10B | florida | Jan 1 | Dec 31 | 364 |
| Zone 11A | florida | Jan 1 | Dec 31 | 364 |
| Zone 11B | florida | Jan 1 | Dec 31 | 364 |
Coverage
Estimates now cover 46 crops × 18 half-zones × three windows = 2,484 dates (about 2,500); the other 54 crops show extension-guide windows. Browse the individual plant guides or planting schedules by zone.
Limitations
- Frost dates are zone-level medians, not your exact location. Local microclimate, elevation, and a given year's weather can shift them by a week or more. Always check local conditions.
- The planting tool finds the zone and opens its zone page; it gives no ZIP-specific dates.
- Dates assume typical outdoor culture; season-extension (row cover, greenhouse) changes them.
Use & citation
The frost-date dataset is available as JSON:
/data/frost-dates.json. It is offered under
CC BY 4.0, free to
reuse with attribution:
Frost-date data: computed by GardeningByZone from NOAA NCEI U.S. Climate Normals 1991-2020; not an official NOAA product (gardeningbyzone.com/methodology)
To put the planting date finder itself on your site, use the embed code.
Last updated October 10, 2026.