Pennsylvania Frost Dates: Last and First Frost by Town
Across Pennsylvania's 160 NOAA stations with regular frost, the median last spring frost is April 29 and the median first fall frost is October 20. Last frost dates range from March 30 at Marcus Hook to May 24 at Kane 1NNE, so enter your ZIP code below for the station nearest you.
How frost dates vary across Pennsylvania
- Elevation matters: across Pennsylvania's stations, each 1,000 ft of elevation delays the median last frost by about 13 days.
- North vs south: stations in the northern third of the state (north of 41.0°N) reach their median last frost about 13 days later than the southern third (south of 40.2°N).
- Safety margin: the median 10%-risk date (May 16) is about 17 days after the median last frost. Waiting until then cuts the chance of a killing frost on tender transplants from 1 in 2 to 1 in 10.
Frost dates at Pennsylvania's major weather stations
These National Weather Service stations, mostly at airports, have the longest and most complete records in the state.
| Allentown Intl Airport | 390 | Apr 20 | May 6 | Oct 24 | 184 |
| Altoona Blair County Airport | 1,480 | Apr 23 | May 11 | Oct 21 | 177 |
| Avondale 2 N | 400 | Apr 19 | May 3 | Oct 26 | 189 |
| Bradford Regional Airport | 2,117 | May 18 | May 31 | Oct 1 | 136 |
| Clearfield Lawrence Airport | 1,516 | May 4 | May 22 | Oct 11 | 161 |
| Doylestown Airport | 394 | Apr 13 | Apr 27 | Oct 30 | 198 |
| Dubois Jefferson County Airport | 1,814 | May 6 | May 23 | Oct 14 | 160 |
| Erie Intl Airport | 730 | Apr 26 | May 13 | Nov 4 | 192 |
| Harrisburg Cptl Cy Airport | 340 | Apr 9 | Apr 25 | Nov 1 | 205 |
| Johnstown Cambria County Airport | 2,284 | Apr 29 | May 17 | Oct 21 | 176 |
| Lancaster Airport | 403 | Apr 18 | May 5 | Oct 25 | 186 |
| Middletown Harrisburg Intl Airport | 312 | Apr 9 | Apr 25 | Nov 2 | 206 |
| Mount Pocono Mountains Airport | 1,916 | May 6 | May 23 | Oct 8 | 154 |
| Philadelphia Intl Airport | 10 | Apr 2 | Apr 13 | Nov 10 | 224 |
| Philadelphia NE Airport | 100 | Apr 4 | Apr 17 | Nov 7 | 216 |
| Pittsburgh Allegheny County Airport | 1,248 | Apr 18 | May 6 | Oct 28 | 193 |
| Pittsburgh Intl Airport | 1,203 | Apr 23 | May 12 | Oct 23 | 181 |
| Port Meadville Airport | 1,400 | Apr 30 | May 18 | Oct 23 | 175 |
| Pottstown Limerick Airport | 291 | Apr 20 | May 6 | Oct 23 | 186 |
| Reading Spaatz Field | 341 | Apr 14 | Apr 30 | Oct 29 | 197 |
| Selinsgrove Penn Valley Airport | 444 | Apr 27 | May 12 | Oct 16 | 172 |
| Wilkes-barre Intl Airport | 930 | Apr 23 | May 10 | Oct 20 | 178 |
| Williamsport | 520 | Apr 24 | May 11 | Oct 23 | 180 |
| Willow Grove NAS | 361 | Apr 11 | Apr 27 | Nov 1 | 205 |
| York Airport | 486 | Apr 27 | May 11 | Oct 18 | 174 |
All 160 stations in Pennsylvania
Last frost and first frost are medians: a 50% chance of a 32°F night after (spring) or before (fall) that date. 10% risk is the spring date with only a 1-in-10 chance of a later frost. Click a column to sort.
| Acmetonia Lock 3 | 748 | Apr 16 | May 4 | Nov 1 | 197 |
| Allentown Intl Airport | 390 | Apr 20 | May 6 | Oct 24 | 184 |
| Altoona 3 W | 1,320 | Apr 25 | May 11 | Oct 21 | 176 |
| Altoona 7 SW | 1,180 | Apr 25 | May 14 | Oct 20 | 177 |
| Altoona Blair County Airport | 1,480 | Apr 23 | May 11 | Oct 21 | 177 |
| Alvin R Bush Dam | 930 | Apr 29 | May 14 | Oct 21 | 177 |
| Avondale 2 N | 400 | Apr 19 | May 3 | Oct 26 | 189 |
| Bear Gap | 1,015 | Apr 27 | May 15 | Oct 20 | 172 |
| Beaver Falls 1 NE | 760 | Apr 27 | May 16 | Oct 25 | 178 |
| Benton 3 NE | 1,095 | May 4 | May 19 | Oct 11 | 159 |
| Biglerville | 720 | Apr 15 | May 4 | Oct 27 | 194 |
| Bloserville 1 N | 700 | Apr 18 | May 8 | Oct 26 | 191 |
| Blue Marsh Lake | 350 | Apr 26 | May 12 | Oct 19 | 176 |
| Braddock Lock 2 | 730 | Apr 5 | Apr 22 | Nov 10 | 219 |
| Bradford 4SW Rsch 5 | 1,660 | May 18 | May 31 | Oct 4 | 140 |
| Bradford Regional Airport | 2,117 | May 18 | May 31 | Oct 1 | 136 |
| Bucksville | 387 | Apr 29 | May 15 | Oct 16 | 170 |
| Butler 2 SW | 1,000 | May 7 | May 23 | Oct 14 | 159 |
| Canton | 1,140 | May 16 | May 29 | Oct 2 | 139 |
| Carlisle Wtp | 430 | Apr 23 | May 9 | Oct 18 | 177 |
| Cashtown 1S | 710 | Apr 28 | May 16 | Oct 17 | 170 |
| Chalk Hill 2 ENE | 1,980 | May 19 | Jun 2 | Oct 1 | 135 |
| Chambersburg 1 ESE | 640 | Apr 18 | May 5 | Oct 25 | 188 |
| Chandlers Valley 1SE | 1,490 | May 22 | Jun 5 | Sep 30 | 131 |
| Charleroi Lock 4 | 749 | Apr 13 | May 5 | Nov 5 | 205 |
| Clarence | 1,390 | May 21 | Jun 1 | Sep 27 | 130 |
| Clarion 3 SW | 1,040 | May 9 | May 24 | Oct 11 | 154 |
| Clearfield Lawrence Airport | 1,516 | May 4 | May 22 | Oct 11 | 161 |
| Clermont 1 NW | 2,080 | May 15 | May 31 | Oct 3 | 140 |
| Coatesville 2 W | 640 | Apr 19 | May 4 | Oct 25 | 190 |
| Confluence 1 SW Dam | 1,490 | Apr 30 | May 18 | Oct 18 | 171 |
| Connellsville 2 SSW | 900 | Apr 22 | May 11 | Oct 27 | 187 |
| Cooksburg 2 NW | 1,450 | May 13 | May 28 | Oct 7 | 143 |
| Coudersport 1 SW | 1,650 | May 22 | Jun 6 | Oct 1 | 130 |
| Coudersport 7SE | 2,150 | May 14 | May 30 | Oct 4 | 143 |
| Cowanesque Dam | 1,150 | May 9 | May 25 | Oct 12 | 155 |
| Dehart Dam | 537 | May 1 | May 20 | Oct 16 | 168 |
| Donegal 2 NW | 1,800 | Apr 30 | May 18 | Oct 17 | 170 |
| Donora 1 SW | 762 | Apr 27 | May 15 | Oct 22 | 177 |
| Doylestown Airport | 394 | Apr 13 | Apr 27 | Oct 30 | 198 |
| Dubois Jefferson County Airport | 1,814 | May 6 | May 23 | Oct 14 | 160 |
| Dushore | 1,530 | May 14 | May 27 | Oct 2 | 143 |
| E Stroudsburg | 471 | May 1 | May 18 | Oct 12 | 163 |
| Ebensburg Sewage Plt | 1,940 | May 17 | Jun 1 | Oct 2 | 136 |
| Eisenhower Nhs | 540 | Apr 24 | May 10 | Oct 21 | 180 |
| Emporium | 1,040 | May 7 | May 23 | Oct 15 | 160 |
| Emsworth L/d Ohio River | 717 | Apr 24 | May 11 | Oct 27 | 186 |
| Erie Intl Airport | 730 | Apr 26 | May 13 | Nov 4 | 192 |
| Everett | 1,000 | Apr 27 | May 16 | Oct 17 | 170 |
| Ford City 4 S Dam | 930 | May 4 | May 20 | Oct 16 | 164 |
| Francis E Walter Dam | 1,509 | May 7 | May 23 | Oct 6 | 153 |
| Franklin | 1,015 | May 2 | May 20 | Oct 23 | 171 |
| Glen Hazel 2 NE Dam | 1,720 | May 14 | May 29 | Oct 6 | 143 |
| Glenmoore | 500 | Apr 11 | Apr 29 | Nov 1 | 205 |
| Glenwillard Dashields L&d | 710 | Apr 8 | Apr 26 | Nov 8 | 212 |
| Grampian 1E | 1,510 | May 4 | May 21 | Oct 13 | 160 |
| Graterford 1 E | 279 | Apr 24 | May 9 | Oct 15 | 173 |
| Grays Landing | 800 | Apr 28 | May 14 | Oct 21 | 175 |
| Hamburg | 369 | Apr 16 | May 3 | Oct 25 | 189 |
| Hanover 4 SW | 558 | Apr 24 | May 11 | Oct 20 | 177 |
| Harrisburg 1 NE | 420 | Apr 15 | May 2 | Oct 23 | 189 |
| Harrisburg Cptl Cy Airport | 340 | Apr 9 | Apr 25 | Nov 1 | 205 |
| Hawley 1 E | 890 | May 10 | May 26 | Oct 4 | 146 |
| Hidden Valley | 2,876 | May 2 | May 18 | Oct 17 | 168 |
| Hopewell Morgantown | 550 | Apr 16 | Apr 30 | Oct 27 | 193 |
| Indiana 3 SE | 1,102 | May 8 | May 24 | Oct 13 | 157 |
| Jamestown 2 NW | 1,040 | May 4 | May 22 | Oct 14 | 161 |
| Johnstown Cambria County Airport | 2,284 | Apr 29 | May 17 | Oct 21 | 176 |
| Kane 1NNE | 1,750 | May 24 | Jun 7 | Sep 28 | 126 |
| Lancaster 2NE Fltr Plt | 270 | Apr 19 | May 7 | Oct 24 | 186 |
| Lancaster Airport | 403 | Apr 18 | May 5 | Oct 25 | 186 |
| Landisville 2 NW | 360 | Apr 30 | May 13 | Oct 10 | 162 |
| Laporte | 1,966 | May 6 | May 22 | Oct 7 | 154 |
| Laurel Mountain | 2,760 | Apr 26 | May 13 | Oct 17 | 172 |
| Laurel Summit | 2,730 | May 6 | May 23 | Oct 12 | 159 |
| Laurelton Center | 800 | Apr 25 | May 11 | Oct 19 | 175 |
| Lebanon 2 W | 450 | Apr 20 | May 7 | Oct 25 | 185 |
| Lehighton 1SSW | 455 | Apr 21 | May 9 | Oct 23 | 184 |
| Lewisburg | 500 | Apr 26 | May 11 | Oct 20 | 176 |
| Lewistown | 460 | Apr 21 | May 9 | Oct 24 | 185 |
| Linesville 1 S | 1,030 | Apr 30 | May 17 | Oct 23 | 177 |
| Lock Haven Sewage Plt | 566 | Apr 30 | May 15 | Oct 20 | 173 |
| Loyalhanna Lake | 990 | May 2 | May 18 | Oct 14 | 163 |
| Mahanoy City 2 N | 1,710 | Apr 30 | May 18 | Oct 22 | 175 |
| Marcus Hook | 10 | Mar 30 | Apr 9 | Nov 16 | 230 |
| Matamoras | 459 | May 2 | May 17 | Oct 12 | 164 |
| McKeesport | 740 | May 2 | May 20 | Oct 20 | 170 |
| Mercer | 1,220 | May 15 | Jun 1 | Oct 3 | 140 |
| Meyersdale 2 SSW | 2,000 | May 12 | May 28 | Oct 5 | 146 |
| Middletown Harrisburg Intl Airport | 312 | Apr 9 | Apr 25 | Nov 2 | 206 |
| Milanville | 760 | May 3 | May 21 | Oct 9 | 156 |
| Millheim | 1,120 | May 5 | May 24 | Oct 6 | 153 |
| Montgomery L&d | 690 | Apr 28 | May 15 | Oct 26 | 178 |
| Montrose | 1,420 | May 14 | May 28 | Oct 2 | 141 |
| Moon Twp | 1,172 | Apr 28 | May 15 | Oct 18 | 172 |
| Mount Pleasant | 1,003 | May 1 | May 19 | Oct 13 | 164 |
| Mount Pocono Mountains Airport | 1,916 | May 6 | May 23 | Oct 8 | 154 |
| Murrysville 2 SW | 860 | Apr 22 | May 12 | Oct 25 | 186 |
| Natrona Lock 4 | 760 | Apr 16 | May 2 | Nov 2 | 199 |
| Neshaminy Falls | 40 | Apr 21 | May 7 | Oct 25 | 185 |
| New Castle 1 N | 825 | Apr 30 | May 19 | Oct 23 | 175 |
| New Holland 2 SE | 605 | Apr 14 | Apr 30 | Nov 1 | 198 |
| Norristown | 62 | Apr 8 | Apr 23 | Oct 31 | 203 |
| Octoraro Lake | 260 | Apr 26 | May 10 | Oct 22 | 179 |
| Oswayo 1 ENE | 1,710 | May 20 | Jun 2 | Sep 29 | 130 |
| Phila Franklin Inst | 60 | Mar 30 | Apr 12 | Nov 17 | 232 |
| Philadelphia Intl Airport | 10 | Apr 2 | Apr 13 | Nov 10 | 224 |
| Philadelphia NE Airport | 100 | Apr 4 | Apr 17 | Nov 7 | 216 |
| Philipsburg 2 S | 1,720 | May 13 | May 29 | Oct 1 | 142 |
| Phoenixville 1 E | 85 | Apr 18 | May 4 | Oct 27 | 192 |
| Pittsburgh Allegheny County Airport | 1,248 | Apr 18 | May 6 | Oct 28 | 193 |
| Pittsburgh Intl Airport | 1,203 | Apr 23 | May 12 | Oct 23 | 181 |
| Pleasant Mount 1 W | 1,800 | May 14 | May 29 | Oct 1 | 140 |
| Point Marion Lock 8 | 810 | Apr 30 | May 17 | Oct 23 | 177 |
| Port Allegany | 1,475 | May 15 | May 29 | Oct 6 | 144 |
| Port Meadville Airport | 1,400 | Apr 30 | May 18 | Oct 23 | 175 |
| Pottstown Limerick Airport | 291 | Apr 20 | May 6 | Oct 23 | 186 |
| Prince Gallitzin State Park | 1,520 | May 10 | May 28 | Oct 5 | 149 |
| Putneyville 2 SE Dam | 1,280 | May 10 | May 28 | Oct 12 | 155 |
| Raystown HQ | 995 | Apr 19 | May 8 | Oct 29 | 194 |
| Raystown Lake 2 | 1,000 | Apr 19 | May 7 | Oct 28 | 191 |
| Reading 4 NNW | 360 | Apr 10 | Apr 26 | Oct 31 | 202 |
| Reading Spaatz Field | 341 | Apr 14 | Apr 30 | Oct 29 | 197 |
| Rector 3 SSW | 1,330 | May 5 | May 22 | Oct 6 | 152 |
| Renovo | 660 | Apr 30 | May 17 | Oct 22 | 173 |
| Ridgway | 1,360 | May 13 | May 28 | Oct 11 | 150 |
| Rodale Rsch Center | 550 | Apr 26 | May 13 | Oct 14 | 171 |
| S Mountain | 1,520 | Apr 27 | May 14 | Oct 20 | 177 |
| Safe Harbor Dam | 195 | Apr 1 | Apr 13 | Nov 10 | 221 |
| Salina 3 W | 1,109 | Apr 29 | May 17 | Oct 20 | 171 |
| Schenley Lock 5 | 783 | Apr 21 | May 9 | Oct 30 | 190 |
| Selinsgrove 2 S | 420 | Apr 25 | May 10 | Oct 22 | 178 |
| Selinsgrove Penn Valley Airport | 444 | Apr 27 | May 12 | Oct 16 | 172 |
| Sellersville | 302 | Apr 26 | May 12 | Oct 17 | 175 |
| Shawnee State Park | 1,275 | May 4 | May 21 | Oct 10 | 158 |
| Shippensburg | 680 | Apr 19 | May 6 | Oct 24 | 188 |
| Slippery Rock 1 SSW | 1,260 | May 7 | May 25 | Oct 14 | 158 |
| Springboro 3 WNW | 1,005 | May 8 | May 23 | Oct 16 | 160 |
| Springtown 1 NNE | 860 | Apr 21 | May 6 | Oct 22 | 184 |
| State College | 1,170 | Apr 20 | May 6 | Oct 26 | 187 |
| Stevenson Dam | 932 | May 10 | May 27 | Oct 16 | 157 |
| Sunbury | 575 | Apr 30 | May 19 | Oct 13 | 166 |
| Tioga Hammond Dam | 1,230 | May 6 | May 23 | Oct 10 | 158 |
| Tionesta 2 SE Lake | 1,200 | May 1 | May 18 | Oct 25 | 176 |
| Titusville Wtr Wks | 1,220 | May 12 | May 28 | Oct 10 | 149 |
| Towanda 1 S | 760 | May 2 | May 16 | Oct 15 | 165 |
| Union City Filtration Plant | 1,400 | May 7 | May 24 | Oct 10 | 155 |
| Uniontown 1 NE | 956 | Apr 30 | May 18 | Oct 18 | 171 |
| W Chester 2 NW | 375 | Apr 26 | May 11 | Oct 18 | 174 |
| Warren | 1,210 | May 4 | May 22 | Oct 21 | 168 |
| Washington 3 NE | 1,300 | Apr 24 | May 18 | Oct 23 | 181 |
| Waynesburg 1 E | 940 | May 3 | May 21 | Oct 15 | 164 |
| Wellsboro 4 SW | 1,818 | May 10 | May 26 | Oct 5 | 148 |
| Wilkes-barre Intl Airport | 930 | Apr 23 | May 10 | Oct 20 | 178 |
| Williamsport | 520 | Apr 24 | May 11 | Oct 23 | 180 |
| Williamsport 2 | 525 | Apr 25 | May 12 | Oct 24 | 181 |
| Willow Grove NAS | 361 | Apr 11 | Apr 27 | Nov 1 | 205 |
| Wolfsburg | 1,185 | Apr 29 | May 18 | Oct 13 | 167 |
| York 3 SSW Pump Station | 390 | Apr 26 | May 13 | Oct 19 | 177 |
| York Airport | 486 | Apr 27 | May 11 | Oct 18 | 174 |
Frequently asked questions
When is the last frost in Pennsylvania?
The median last spring frost (32°F) across Pennsylvania's NOAA weather stations is April 29, based on 1991–2020 climate normals. It ranges from March 30 at Marcus Hook to May 24 at Kane 1NNE. For a safer planting date, use the 10%-risk date; the state median for that is May 16.
When is the first frost in Pennsylvania?
The median first fall frost across Pennsylvania's stations is October 20. The earliest median first frost is September 27 at Clarence, and the latest is November 17 at Phila Franklin Inst.
How long is the growing season in Pennsylvania?
The median frost-free season is 174 days across Pennsylvania's stations, from 126 days at Kane 1NNE to 232 days at Phila Franklin Inst.
When should I plant tomatoes in Pennsylvania?
Plant tomatoes outdoors after your local last frost, ideally after the 10%-risk date when nights stay above 50°F. At a typical Pennsylvania station that means starting seeds indoors 6–8 weeks before April 29 and transplanting from about May 16. Check your ZIP code, because dates vary by weeks across the state.
How to use these dates
Frost dates are 30-year averages from NOAA, not forecasts. Use them to plan seed starting and planting, then watch the 10-day forecast as the date approaches. Cold air settles in valleys and low spots, so a garden at the bottom of a slope can frost a week or more later in spring than the nearest station shows.
Ready to plan? The planting calendar by ZIP code turns these dates into start-indoors, transplant and sowing dates for 30 crops.
Sources and method
Dates are the 32°F freeze probabilities published in the NOAA NCEI 1991–2020 U.S. Climate Normals for each station. Station names are NOAA's, lightly expanded for readability. See the methodology or download the full table.
Frost dates in other states
- Alabama
- Alaska
- Arizona
- Arkansas
- California
- Colorado
- Connecticut
- Delaware
- Florida
- Georgia
- Hawaii
- Idaho
- Illinois
- Indiana
- Iowa
- Kansas
- Kentucky
- Louisiana
- Maine
- Maryland
- Massachusetts
- Michigan
- Minnesota
- Mississippi
- Missouri
- Montana
- Nebraska
- Nevada
- New Hampshire
- New Jersey
- New Mexico
- New York
- North Carolina
- North Dakota
- Ohio
- Oklahoma
- Oregon
- Rhode Island
- South Carolina
- South Dakota
- Tennessee
- Texas
- Utah
- Vermont
- Virginia
- Washington
- West Virginia
- Wisconsin
- Wyoming