Methodology
Everything on the lookup comes from public datasets, used as published. Here is exactly what we use and how.
1. Frost dates: NOAA 1991–2020 Climate Normals
Source: NOAA National Centers for Environmental Information (NCEI), U.S. Climate Normals 1991–2020, annual/seasonal normals by station (version 1.0.1, archive dated 2023-04-04). Field definitions are in NOAA's documentation.
For each station we use these published fields, without recalculating them:
ANN-TMIN-PRBLST-T{28,32,36}FP{10…90}: spring dates of the last 28°F, 32°F and 36°F minimum temperature at 10%–90% probability.ANN-TMIN-PRBFST-T{28,32,36}FP{10…90}: the same for the first fall occurrence.ANN-TMIN-PRBGSL-T32FP50: median growing-season length at 32°F.ANN-TMIN-PRBOCC-LSTH0{28,32,36}: percentage of years in which the temperature reached that threshold at all.
How we read the probabilities. In the published data, the 10% spring date is always the latest and the 90% spring date the earliest; in fall the 10% date is the earliest. We therefore present them as in NCEI's traditional freeze/frost tables: "10% chance of a freeze after [spring date]" and "10% chance of a freeze before [fall date]". (NOAA's field list describes each value as "probability date of last 32F occurrence or earlier"; the ordering of the actual values is what our wording follows.)
Which stations. We include a station only if all nine 32°F spring and fall probability dates are present and not flagged by NOAA as missing (M), year-round frost risk (V), insufficient data (Y) or inconsistent (Z). That leaves 6,949 stations. NOAA's completeness flags (Standard, Representative, Estimated, Provisional) are kept in our data files.
Warm places. Where freezing temperatures don't happen every year, we show NOAA's percentage of years with a freeze next to the dates.
2. Matching a ZIP code to a station
ZIP codes are matched by location using the U.S. Census Bureau's 2020 ZCTA Gazetteer, which gives an internal point (approximate center) for each ZIP Code Tabulation Area. We pick the nearest qualifying NOAA station by great-circle distance and show the station name, ID, distance and elevation.
If the nearest station is more than 80 km away, we don't show frost dates. Of 40,685 ZIP codes in our files, 32,987 have a ZCTA location and a matched station. PO-box-only ZIP codes have no ZCTA and get a hardiness zone only.
Limitation: we don't adjust for elevation or terrain. A garden in a frost pocket, on a hillside or near a large lake can differ from the station by a week or more. Treat the dates as a guide, and watch the actual forecast.
3. Hardiness zones: 2023 USDA Plant Hardiness Zone Map ZIP listing
Source: the 2023 Plant Hardiness Zone ZIP code listing produced by the PRISM Climate Group at Oregon State University for the USDA Agricultural Research Service. OSU retains ownership of these datasets, which may be freely reproduced and redistributed under OSU's terms of use.
We display the zone and temperature range for each ZIP exactly as listed, without alteration. We do not draw maps from it. For the official interactive map, visit the USDA Plant Hardiness Zone Map. The listing covers the contiguous United States; it doesn't include Alaska, Hawaii or Puerto Rico.
4. Processing and updates
A script downloads the source files, filters the stations as described above, matches ZIP codes, and writes small JSON files grouped by the first three digits of the ZIP code. Your browser loads only the file for the ZIP prefix you look up. We spot-checked the processed values against NOAA's per-station files for several ZIP codes (New York 10001, Denver 80202, Seattle 98101, Burlington VT 05401, Phoenix 85004); all matched exactly.
Data files built: 2026-10-14. NOAA updates Climate Normals once per decade; we will update when a new set is published.
Corrections
If something looks wrong for your area, please tell us, ideally with your ZIP code and what you've observed.