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've got a batch of addresses to geocode (on the order of 10,000), I've looked at various services for doing the geocoding, and each service seems to be able to locate a portion between 50% and 90% of the addresses with address-level specificity. Are there any advantages/disadvantages to getting the results from multiple services and trying to combine them?

share|improve this question
    
Combining the best results from various services will probably require some advanced GIS knowledge, or proficiency with scripting/programming, or serious Excel ninja skills. The advantages/disadvantages may be different depending on which of these ways you prefer. –  Matt Apr 15 '13 at 16:55
    
@Matt: Yeah, I'm planning to tackle that from the scripting/programming side—I'm thinking that I can use a framework-provided distance-between-locations function to see how far apart the lat-lon pairs from different services are to sort out the addresses that come up roughly matching across services from those that don't. –  Isaac Apr 15 '13 at 17:11
    
How many of the services return accuracy estimates? (Ideally, you would just pick the most accurate geocode results based on the accuracy reports.) –  Matt Apr 15 '13 at 17:23
    
They all return some form of accuracy information, I think, though it's often category-level; but I'm also concerned about the case where two different services both claim to have found an address-level match, but they put the address in significantly different places. –  Isaac Apr 15 '13 at 17:25
    
We check our own database by geocoding with google/yahoo/mapquest (we have buisness/enterprise licenses) and compare using FME - any that are flagged as incorrect are checked in another process (sometimes manually) –  Mapperz Apr 15 '13 at 17:34
add comment

2 Answers 2

up vote 3 down vote accepted

I work at SmartyStreets and I've been working on a similar comparison for over two years now. As it turns out, even the almighty google gets some addresses wrong. I've compared google to ten other services that provide geocoding.
Here's the comparison:

https://docs.google.com/spreadsheet/ccc?key=0AidEWya_p6XFdGw1RmZ6TjB1ajZxVk81d2pISDMzVUE&usp=sharing

Now, certainly it would be nice to paint my company to look better than the others, but I opted for brutal honesty instead of spin.

The results (small set but it was enough for me) show that overall, the google geocoding service was significantly better in almost every instance. (The green fields show the best for that address while the red fields show the worst for that address). Google averaged a mere 28ft variance.

(update - among the 10 addresses I checked actually Yahoo had the closest average geocoding. wow!)

Keep in mind that there are also instances that I have tested where some of the other services were actually closer than googlemaps. These "other" services rely on the US Census Bureau TIGER data which is generally only updated every 10 years, with the census, while the googlemaps data is constantly updated.

I would recommend picking either google or bing, based on your preference and stick with them. I'm happy to give you more details if you need them.

share|improve this answer
add comment

You might take a look at geopy, a Python library for several of the popular geocoding services. You can get some results to see the differences and maybe go from there:

>>> from geopy import geocoders

>>> p = "1600 Pennsylvania Ave, Washington DC"
>>> g = geocoders.GoogleV3()
>>> us = geocoders.GeocoderDotUS()

>>> place, (lat, lng) = g.geocode(p)
>>> print "%s: %.5f, %.5f" % (place, lat, lng)
1600 Pennsylvania Ave Northwest, President's Park, Washington, DC 20500, USA: 38.89710, -77.03654

>>> place, (lat, lng) = us.geocode(p)
>>> print "%s: %.5f, %.5f" % (place, lat, lng)
1600 Pennsylvania Ave NW, Washington, DC 20502: 38.89875, -77.03768
share|improve this answer
add comment

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.