Frost dates in Pennsylvania
Across Pennsylvania's 160 NOAA stations with a frost every year, the typical last spring frost ranges from March 30 at Marcus Hook (10 feet above sea level) to May 24 at Kane 1 NNE (1,750 feet above sea level). The middle station's date is April 29.
Look up your ZIP code
Last frost across Pennsylvania
The frost-free season runs from 126 days at Kane 1 NNE to 232 days at Phila Franklin Inst.
These are typical dates: in half of springs the last frost comes later. Each place's page, and each ZIP code lookup, also gives the late-year date, after which only 1 spring in 10 has a frost. That's the safer date for tender plants.
Frost dates for Pennsylvania's larger places
| Place | Last spring frost | First fall frost | Season | Zone |
|---|---|---|---|---|
| Allentown | April 20 | October 24 | 184 days | |
| Philadelphia | April 4 | November 7 | 216 days | 7b |
| Pittsburgh | April 24 | October 27 | 186 days | 6b |
Typical (1-in-2) dates. Each place's page has the early and late years, a planting calendar and a printable planner. Zones are for the ZIP code nearest each place's center.
Hardiness zones in Pennsylvania
Pennsylvania's 2,106 ZIP codes in the USDA list fall in zones 5b to 8a: 5b (3 percent), 6a (24 percent), 6b (36 percent), 7a (29 percent), 7b (7 percent) and 8a (under 1 percent). Compared with the 2012 map, 65 percent of them moved to a warmer half zone (25 by a full zone or more), 35 percent stayed the same and 2 moved to a colder one.
A hardiness zone is about the coldest night of winter, which decides which shrubs, trees and perennials survive. Frost dates are about spring and fall, which decide when to plant. You need both. Read more about what the zones mean and what changed in 2023.
Every NOAA station in Pennsylvania
All 160 stations in Pennsylvania with frost statistics in NOAA's 1991 to 2020 normals, from A to Z. Station names are usually a town, an airport, or a distance and direction from a town. Find one near you and at a similar elevation.
| Station | Elevation (feet) | Last spring frost | First fall frost | Season (days) |
|---|---|---|---|---|
| Acmetonia Lock 3 | 750 | April 16 | November 1 | 197 |
| Allentown International Airport | 390 | April 20 | October 24 | 184 |
| Altoona 3 W | 1,320 | April 25 | October 21 | 176 |
| Altoona 7 SW | 1,180 | April 25 | October 20 | 177 |
| Altoona Blair Co Airport | 1,480 | April 23 | October 21 | 177 |
| Alvin R Bush Dam | 930 | April 29 | October 21 | 177 |
| Avondale 2 N | 400 | April 19 | October 26 | 189 |
| Bear Gap | 1,010 | April 27 | October 20 | 172 |
| Beaver Falls 1 NE | 760 | April 27 | October 25 | 178 |
| Benton 3 NE | 1,100 | May 4 | October 11 | 159 |
| Biglerville | 720 | April 15 | October 27 | 194 |
| Bloserville 1 N | 700 | April 18 | October 26 | 191 |
| Blue Marsh Lake | 350 | April 26 | October 19 | 176 |
| Braddock Lock 2 | 730 | April 5 | November 10 | 219 |
| Bradford 4 SW Research 5 | 1,660 | May 18 | October 4 | 140 |
| Bradford Regional Airport | 2,120 | May 18 | October 1 | 136 |
| Bucksville | 390 | April 29 | October 16 | 170 |
| Butler 2 SW | 1,000 | May 7 | October 14 | 159 |
| Canton | 1,140 | May 16 | October 2 | 139 |
| Carlisle WTP | 430 | April 23 | October 18 | 177 |
| Cashtown 1 S | 710 | April 28 | October 17 | 170 |
| Chalk Hill 2 ENE | 1,980 | May 19 | October 1 | 135 |
| Chambersburg 1 ESE | 640 | April 18 | October 25 | 188 |
| Chandlers Valley 1 SE | 1,490 | May 22 | September 30 | 131 |
| Charleroi Lock 4 | 750 | April 13 | November 5 | 205 |
| Clarence | 1,390 | May 21 | September 27 | 130 |
| Clarion 3 SW | 1,040 | May 9 | October 11 | 154 |
| Clearfield Lawrence Airport | 1,520 | May 4 | October 11 | 161 |
| Clermont 1 NW | 2,080 | May 15 | October 3 | 140 |
| Coatesville 2 W | 640 | April 19 | October 25 | 190 |
| Confluence 1 SW Dam | 1,490 | April 30 | October 18 | 171 |
| Connellsville 2 SSW | 900 | April 22 | October 27 | 187 |
| Cooksburg 2 NW | 1,450 | May 13 | October 7 | 143 |
| Coudersport 1 SW | 1,650 | May 22 | October 1 | 130 |
| Coudersport 7 SE | 2,150 | May 14 | October 4 | 143 |
| Cowanesque Dam | 1,150 | May 9 | October 12 | 155 |
| Dehart Dam | 540 | May 1 | October 16 | 168 |
| Donegal 2 NW | 1,800 | April 30 | October 17 | 170 |
| Donora 1 SW | 760 | April 27 | October 22 | 177 |
| Doylestown Airport | 390 | April 13 | October 30 | 198 |
| Dubois Jefferson Co Airport | 1,810 | May 6 | October 14 | 160 |
| Dushore | 1,530 | May 14 | October 2 | 143 |
| E Stroudsburg | 470 | May 1 | October 12 | 163 |
| Ebensburg Sewage Plant | 1,940 | May 17 | October 2 | 136 |
| Eisenhower NHS | 540 | April 24 | October 21 | 180 |
| Emporium | 1,040 | May 7 | October 15 | 160 |
| Emsworth L/D Ohio River | 720 | April 24 | October 27 | 186 |
| Erie International Airport | 730 | April 26 | November 4 | 192 |
| Everett | 1,000 | April 27 | October 17 | 170 |
| Ford City 4 S Dam | 930 | May 4 | October 16 | 164 |
| Francis E Walter Dam | 1,510 | May 7 | October 6 | 153 |
| Franklin | 1,010 | May 2 | October 23 | 171 |
| Glen Hazel 2 NE Dam | 1,720 | May 14 | October 6 | 143 |
| Glenmoore | 500 | April 11 | November 1 | 205 |
| Glenwillard Dashields L&D | 710 | April 8 | November 8 | 212 |
| Grampian 1 E | 1,510 | May 4 | October 13 | 160 |
| Graterford 1 E | 280 | April 24 | October 15 | 173 |
| Grays Landing | 800 | April 28 | October 21 | 175 |
| Hamburg | 370 | April 16 | October 25 | 189 |
| Hanover 4 SW | 560 | April 24 | October 20 | 177 |
| Harrisburg 1 NE | 420 | April 15 | October 23 | 189 |
| Harrisburg Capitol Cy Airport | 340 | April 9 | November 1 | 205 |
| Hawley 1 E | 890 | May 10 | October 4 | 146 |
| Hidden Valley | 2,880 | May 2 | October 17 | 168 |
| Hopewell Morgantown | 550 | April 16 | October 27 | 193 |
| Indiana 3 SE | 1,100 | May 8 | October 13 | 157 |
| Jamestown 2 NW | 1,040 | May 4 | October 14 | 161 |
| Johnstown Cambria Co Airport | 2,280 | April 29 | October 21 | 176 |
| Kane 1 NNE | 1,750 | May 24 | September 28 | 126 |
| Lancaster 2 NE Filter Plant | 270 | April 19 | October 24 | 186 |
| Lancaster Airport | 400 | April 18 | October 25 | 186 |
| Landisville 2 NW | 360 | April 30 | October 10 | 162 |
| Laporte | 1,970 | May 6 | October 7 | 154 |
| Laurel Mountain | 2,760 | April 26 | October 17 | 172 |
| Laurel Summit | 2,730 | May 6 | October 12 | 159 |
| Laurelton Center | 800 | April 25 | October 19 | 175 |
| Lebanon 2 W | 450 | April 20 | October 25 | 185 |
| Lehighton 1 SSW | 460 | April 21 | October 23 | 184 |
| Lewisburg | 500 | April 26 | October 20 | 176 |
| Lewistown | 460 | April 21 | October 24 | 185 |
| Linesville 1 S | 1,030 | April 30 | October 23 | 177 |
| Lock Haven Sewage Plant | 570 | April 30 | October 20 | 173 |
| Loyalhanna Lake | 990 | May 2 | October 14 | 163 |
| Mahanoy City 2 N | 1,710 | April 30 | October 22 | 175 |
| Marcus Hook | 10 | March 30 | November 16 | 230 |
| Matamoras | 460 | May 2 | October 12 | 164 |
| Mckeesport | 740 | May 2 | October 20 | 170 |
| Mercer | 1,220 | May 15 | October 3 | 140 |
| Meyersdale 2 SSW | 2,000 | May 12 | October 5 | 146 |
| Middletown Harrisburg International Airport | 310 | April 9 | November 2 | 206 |
| Milanville | 760 | May 3 | October 9 | 156 |
| Millheim | 1,120 | May 5 | October 6 | 153 |
| Montgomery L&D | 690 | April 28 | October 26 | 178 |
| Montrose | 1,420 | May 14 | October 2 | 141 |
| Moon Township | 1,170 | April 28 | October 18 | 172 |
| Mount Pleasant | 1,000 | May 1 | October 13 | 164 |
| Mount Pocono Mountains Airport | 1,920 | May 6 | October 8 | 154 |
| Murrysville 2 SW | 860 | April 22 | October 25 | 186 |
| Natrona Lock 4 | 760 | April 16 | November 2 | 199 |
| Neshaminy Falls | 40 | April 21 | October 25 | 185 |
| New Castle 1 N | 830 | April 30 | October 23 | 175 |
| New Holland 2 SE | 600 | April 14 | November 1 | 198 |
| Norristown | 60 | April 8 | October 31 | 203 |
| Octoraro Lake | 260 | April 26 | October 22 | 179 |
| Oswayo 1 ENE | 1,710 | May 20 | September 29 | 130 |
| Phila Franklin Inst | 60 | March 30 | November 17 | 232 |
| Philadelphia International Airport | 10 | April 2 | November 10 | 224 |
| Philadelphia Ne Airport | 100 | April 4 | November 7 | 216 |
| Philipsburg 2 S | 1,720 | May 13 | October 1 | 142 |
| Phoenixville 1 E | 90 | April 18 | October 27 | 192 |
| Pittsburgh Allegheny Co Airport | 1,250 | April 18 | October 28 | 193 |
| Pittsburgh International Airport | 1,200 | April 23 | October 23 | 181 |
| Pleasant Mount 1 W | 1,800 | May 14 | October 1 | 140 |
| Point Marion Lock 8 | 810 | April 30 | October 23 | 177 |
| Port Allegany | 1,480 | May 15 | October 6 | 144 |
| Port Meadville Airport | 1,400 | April 30 | October 23 | 175 |
| Pottstown Limerick Airport | 290 | April 20 | October 23 | 186 |
| Prince Gallitzin SP | 1,520 | May 10 | October 5 | 149 |
| Putneyville 2 SE Dam | 1,280 | May 10 | October 12 | 155 |
| Raystown HQ | 990 | April 19 | October 29 | 194 |
| Raystown Lake 2 | 1,000 | April 19 | October 28 | 191 |
| Reading 4 NNW | 360 | April 10 | October 31 | 202 |
| Reading Spaatz Field | 340 | April 14 | October 29 | 197 |
| Rector 3 SSW | 1,330 | May 5 | October 6 | 152 |
| Renovo | 660 | April 30 | October 22 | 173 |
| Ridgway | 1,360 | May 13 | October 11 | 150 |
| Rodale Research Center | 550 | April 26 | October 14 | 171 |
| S Mountain | 1,520 | April 27 | October 20 | 177 |
| Safe Harbor Dam | 190 | April 1 | November 10 | 221 |
| Salina 3 W | 1,110 | April 29 | October 20 | 171 |
| Schenley Lock 5 | 780 | April 21 | October 30 | 190 |
| Selinsgrove 2 S | 420 | April 25 | October 22 | 178 |
| Selinsgrove Penn Vly Airport | 440 | April 27 | October 16 | 172 |
| Sellersville | 300 | April 26 | October 17 | 175 |
| Shawnee SP | 1,280 | May 4 | October 10 | 158 |
| Shippensburg | 680 | April 19 | October 24 | 188 |
| Slippery Rock 1 SSW | 1,260 | May 7 | October 14 | 158 |
| Springboro 3 WNW | 1,000 | May 8 | October 16 | 160 |
| Springtown 1 NNE | 860 | April 21 | October 22 | 184 |
| State College | 1,170 | April 20 | October 26 | 187 |
| Stevenson Dam | 930 | May 10 | October 16 | 157 |
| Sunbury | 570 | April 30 | October 13 | 166 |
| Tioga Hammond Dam | 1,230 | May 6 | October 10 | 158 |
| Tionesta 2 SE Lake | 1,200 | May 1 | October 25 | 176 |
| Titusville Water Works | 1,220 | May 12 | October 10 | 149 |
| Towanda 1 S | 760 | May 2 | October 15 | 165 |
| Union City Filtration Plant | 1,400 | May 7 | October 10 | 155 |
| Uniontown 1 NE | 950 | April 30 | October 18 | 171 |
| W Chester 2 NW | 370 | April 26 | October 18 | 174 |
| Warren | 1,210 | May 4 | October 21 | 168 |
| Washington 3 NE | 1,300 | April 24 | October 23 | 181 |
| Waynesburg 1 E | 940 | May 3 | October 15 | 164 |
| Wellsboro 4 SW | 1,820 | May 10 | October 5 | 148 |
| Wilkes-Barre International Airport | 930 | April 23 | October 20 | 178 |
| Williamsport | 520 | April 24 | October 23 | 180 |
| Williamsport 2 | 520 | April 25 | October 24 | 181 |
| Willow Grove NAS | 360 | April 11 | November 1 | 205 |
| Wolfsburg | 1,180 | April 29 | October 13 | 167 |
| York 3 SSW Pump Station | 390 | April 26 | October 19 | 177 |
| York Airport | 490 | April 27 | October 18 | 174 |
Typical (1-in-2) dates at 32°F. For the early and late years, and a planting calendar built from your own dates, look up your ZIP code.