Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I need to parse single-field addresses into multiple fields such as address number, street name, street type, etc. Esri has the Standardize Addresses tool in the Geocoding Tools toolbox, but I am curious if anything similar is possible with Google's API. It looks like it is wonderful at geocoding and reverse geocoding, but I haven't found any info on standardizing input addresses. I understand that for commercial purposes I would need to pay for some sort of licensing, but first I want to know if it is possible in the first place.

share|improve this question
4  
Check the terms for Google Maps API in regards to Geocoding - Note: the Geocoding API may only be used in conjunction with a Google map; geocoding results without displaying them on a map is prohibited. you might better of using Yahoo PlaceFinder or Mapquest Open –  Mapperz May 30 '12 at 19:04

4 Answers 4

Google's Terms of Use does not permit commercial (esp. automated) use of the data. Yes, Google appears to parse single-line street addresses and geocodes them, but it is not appropriate for commercial purposes as Mapperz has noted.

Also, standardizing addresses will be a bit of a bugger with Google's API. Google Maps is an address approximation service, not a standardization or verification service.

For example, have you ever done street view by a house on the edge of town, or out in the suburbs, even in rural areas? Often, it will only show the street name and say "Address is approximate" -- if you had that house's actual address and typed it in Google Maps, it would probably adjust the address to the incorrect location. This happened to me yesterday near a city/county border. The mailing address I had was correct but Google got the wrong city and placed me about a mile away from the delivery point. Oops?

Fortunately that wasn't for commercial use (I only needed directions), but if you need reliable data, even their commercial license doesn't provide actual verification. You're probably looking for something like a CASS-Certified service to standardize and geocode addresses. Such a service is authorized by the USPS to correct and "fill out" address data so it is in a standard format, and must pass rigorous quality tests every so often.

I work with one such provider called SmartyStreets. We service LiveAddress API which doesn't have any restrictions against commercial usage. You can reference this other GIS question to investigate its performance and capabilities, or see our website.

And I'll let you in on a little secret: while it doesn't yet appear that we parse single-line addresses, we actually do (as of this week). Submit an entire address in the "street 1" field through our API and you'll get a CASS-Certified result. Note that this isn't yet implemented on our site's demos except in your account pages.

share|improve this answer
    
Is LiveAddress API US only? 250 lookups per month is limiting - but better than none at all. –  Mapperz May 31 '12 at 14:41
    
Yep, US addresses only -- technically, any area the USPS delivers to, including certain territories and outlying states (PR, American Samoa, etc). –  Matt May 31 '12 at 20:51

Yes, it is possible.

Google, Bing, MapQuest will all return address fields on a geocoding request. For some you have to add an extra flag that you want the fields (MapQuest).

Note that they all return the fields labeled differently and in different structures. e.g. one API will return "street" value as just The street "Main", where another will return "street" value with the Number and Suffix e.g. "100 Main Ave". So pay attention to that.

share|improve this answer
    
Thanks for the info. I'll look into it more. –  Tanner Jun 1 '12 at 18:01

Yes you can parse and standardize your address using either Google geocoding API or Bing mapping API. However both of them has some API call limitation per day. Better check out their TOS.

Input format- House #, Street, City, State, and Zip ( Bold: mandatory, recommends to provide for confidence on parsed address) Response format- JSON, XML /Corrected output fields- House #, Street, City, State, Zip

Reference- http://bit.ly/1cvsZ3N

share|improve this answer

Single line addresses, also known as freeform addresses, are a tough nut to crack using regex or any other type of "guessing or approximation". The trouble is that without comparing to a master list, you can't know how the following address is meant:

100 North Main St Helena CA 90210 (fake address)

Is it really 100 North Main St Helena, CA 90210 or is it 100 North Main St. Helena, CA 90210

So, does St mean Street or is it part of Saint Helena?

Google does an exceptional job at address approximation, especially considering the types of addresses people throw at it. @Mapperz is right that Google can't be use for commercial use without displaying a map. It violates their Terms of Service.

There is a free service that might work for you. They do pretty good at the freeform addresses. They have lower limits but it's free.

If you have a higher volume that you need to work with and have a budget, there are a number of very good commercial services. I work at one of them called SmartyStreets.

share|improve this answer

Your Answer

 
discard

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.