Sign up ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Based on a previous question, Can I download the entire NRCS SSURGO database?, it appears that it is difficult to import the entire USDA SSURGO database.

The Web Soil Survey provides the ability to draw a polygon and then download data. But the polygon has to be fairly small, and there is a lot of pointing, clicking, and waiting to get the desired data. There is also a Geospatial data gateway where it is possible download county-level data.

However, these do not meet my needs. This is what I want to do:

  1. I start with the lat/lon coordinates of the corners of a rectangle
  2. find the area of each soil type in the rectangle
  3. find % clay, sand, silt, organic matter as a function of depth for each soil type

Is there a way that I can do this programatically?

(Solutions in R preferred, but any open-source solution will be useful)

share|improve this question
Please keep in mind that the Web Soil Survey has always updated their site so there will be new features show up new. – PROBERT Apr 23 '14 at 15:03

4 Answers 4

up vote 6 down vote accepted

Can download SSURGO data by State:

enter image description here

Downloading the entire

Order Area (Where):All counties, Alaska Order Map Layers (What): Soil Survey Spatial and Tabular Data (SSURGO 2.2)

444.310 Megabytes, 25 Maps Order Format (How):One ESRI Shape Order Projection (How):Geographic WGS84 Order Inclusion (How):Standard Order Delivery Method (How):FTP

Note: The format choices 'One Esri Shape' and 'One ESRI File GeoDataBase Feature Class' combine all features in a layer into a single shape or feature class instead of one for each HUC or county. See Help.

So would be easier to merge into US dataset.

The reason there is no web API is the size of some of the datasets.

You will have to load them into your own spatial database (postgis) and use a GIS (QGIS) or use your R skills to pull stats out of your database.

share|improve this answer
Is this still true? When attempting to download SSURGO for all of Alaska, my only option is gSSURGO, which is in ArcGIS format. I'm not seeing an option to download it in shapefile format. – denaje Mar 21 '13 at 14:30
They have updated their website with a notice – Mapperz Mar 21 '13 at 14:59
Yes, it would be much easier download by state and normally it is hard for one to download by using lat/long like what Mapperz was saying here. – PROBERT Apr 23 '14 at 15:06
Don't forget to add the database to join with the dataset since it has the attribute for all of the map units necessary. – PROBERT Apr 23 '14 at 15:09

You have a couple of options:

  1. For an R-based solution, see the AQP family of packages, in particular "soilDB"

  2. If you feel like reverse-engineering WMS, and related AJAX-style queries see SoilWeb

  3. The "soil data access" website (not enough rep. points to provide a link) provides a limited SQL interface to the SSURGO tabular data. The SDA_query() function from the soilDB R package provides a simple interface to this web service.

Be sure to search the Ca Soil Resource site (linked above) for misc. blog entries on the topic.

I will be posting details on downloading and loading the entire SSURGO database into PostGIS later this year. Note that most of the solutions above rely on SoilWeb, which is based on a an annual snapshot of SSURGO. SoilWeb will be in sync with FY2014 data later this week.

Full disclosure, I am the author of SoilWeb and an NRCS employee.

share|improve this answer
Have you posted further details on downloading and loading SSURGO into PostGIS? – Abe Jun 26 at 22:07

Dylan has created the best method to date using soilDB in the R package.

New features in the Soil Data Access site will be released soon (July) allowing the use of REST/POST commands to extract data.
In addition, new sql commands will be available for point, bounding box, and coordinates using Web Mercator or WGS84 coordinates.
Read the Web Services Help page at SDM Data Access for further information. Bookmark this site because it will be updated in July 2015.

share|improve this answer
can you expand on the "Dylan has created..."? – Brad Nesom Jun 18 at 15:24
Could you please provide an example of how to request a soil physical property (say water holding capacity) for a point (e.g. 44.5N, 88.5W) either using the SDM Data Access page? – Abe Jun 26 at 22:06

have you seen this?

there are nice interfaces for BB with lat/long - for your specific request you might need to scrape the resulting data/link but the interface is set up for handling requests via the URL - quite easy. I've written some additional php/javascript to allow a mobile device to grab data out in the field.

note that the directory above this states that the site is re-organizing so you might want to make a note when you code that into your interface.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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