I want to obtain the entire dataset for all zip codes in the US along with their corresponding USDA Plant Hardiness Zone Map (PHZM) data.

There are many sites that seem to offer a zipcode lookup tool and this data is returned. Where do they get the entire database?

In my Search I found this site where I can purchase credits and do queries for multiple zip codes and get a .txt for .csv file. There has to be a better way.

enter image description here

  • Hmm ... they link to a website, which says "Climate Source is the exclusive public distributor of digital GIS versions of the U.S. Department of Agriculture’s Official 2012 Plant Hardiness Zone Map (PHZM) for the Conterminous United States, Alaska, Hawaii, and Puerto Rico" ... might have to file a FOIA request to get to the data. (data.gov only has Idaho)
    – Joe
    Commented Apr 3, 2014 at 20:48
  • 1
    I submitted a FOIA request but perhaps more requests would increase our chances. efoia-pal.usda.gov/palMain.aspx (USDA agency REE). This data should really be in the public domain.
    – philshem
    Commented Apr 4, 2014 at 14:51
  • not sure the difference between this and their db, but here ya go. if you do suck all of this down, PLEASE put it on that github repo below, or your own, whatever. and then post back here and let us know. i'd do it, but thats alot of data, and i'm lazy: prism.oregonstate.edu
    – albert
    Commented Apr 5, 2014 at 15:06
  • also possibly related oldprism.nacse.org/products
    – albert
    Commented Apr 5, 2014 at 15:44

3 Answers 3


There's an Open Plant Hardiness Zones (OPHZ) project on Github where various people have reverse-engineered a pdf of the hardiness zones (pdf, really large) to produce a GIS file (SHP) of the zone boundaries. The ophz-c version is the latest. It's public domain.

You could use GIS software or tools, and a list of the center point of each zip, to find the hardiness zone for each zip. (you're no doubt aware there are no firm boundaries for each ZIP, so this would just be an approximate answer, the latitude and longitude of a street address would be better).

Doesn't even have to be GIS software. You could convert the SHP file to geojson if needed, import it into a geo-aware database such as MongoDB or Postgres, import the zip code list as well, and use the database GIS queries to give you "zip is within .. zone" answers.

Probably a more complex solution than you'd like. Maybe somebody has done these steps already and released the results, but I'm not aware of it.


Just released on Github!!


A parser and resulting dataset for USDA plant hardiness zones. It uses the ZIP-querying API built into the U.S. Department of Agriculture’s Plant Hardiness Zone website (e.g., http://planthardiness.ars.usda.gov/PHZMWeb/ZipProxy.ashx?ZipCode=55555

Full data set:

Static Github API: (Replace 20001 with your zipcode)


enter image description here

my Twitter source

  • 1
    ha i saw that tweet. got on here a little while later and you'd updated it. nice.
    – albert
    Commented Jun 6, 2015 at 19:28
  • 1
    Yeah I was pretty excited about it
    – philshem
    Commented Jun 6, 2015 at 19:42

The GIS data is contracted out to the PRISM group at Oregon State University. One can purchase the high resolution maps they created, operating under the entity Climate Source.

I have not found a direct download from the USDA on the zipcode dataset. Instead, you can semi-auto query using this backdoor call.


The problem is that after every 5 calls, it will return a result requiring you to enter a Captcha. There are about 50K zip codes in the US. That's about 10,000 times one would have to enter a captcha.

  • 1
    so....crowd source it? if you put it on github, i'll help adding some
    – albert
    Commented Jun 11, 2014 at 19:15
  • 1
    @albert. That's a lot of work. I'll think about it. I already have one crowd-source project and I do 98% of the work (lol) - opengeocode.org/opendata Commented Jun 11, 2014 at 23:12
  • 2
    It's been done!
    – philshem
    Commented Jun 6, 2015 at 16:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.