GIS Geocoding experiments

I’ve been evaluating a couple different mapping software packages recently and the other day I noticed that the same addresses geocoded (for those who don’t know what geocoding is you can find out more about it here) to different locations. They are mostly the same but I figured it was interesting enough to do some more digging and see how different mapping services compared.I looked at the following services. Some of them are commercial services with open apis (ESRI and mapquest) and some of them are non-commercial services with open apis (yahoo and google although google does not have a geocoding api).

For google I viewed the resulting values for latitude and longitude that were generated from a search for the address. For yahoo and ESRI I used their REST geocoding apis and for mapquest I used their java api to their commercial service since their openapi service is only in beta currently.I took 5 addresses located at different points in the US and one in Canada and mapped the returned latitude and longitude from each service. Here are the results:

Missiondata, 2300 Hurstbourne Village Drive, Suite 1100, Louisville, KY, 40299 mapquest: 38.215303, -85.578698 google: 38.215601, -85.578852 yahoo: 38.215496, -85.578669 esri: 38.216273, -85.579028

Missiondata Results

Googleplex, 1600 Amphitheatre Parkway, Mountain View, CA, 94043 mapquest: 37.4238, -122.0901 google: 37.422845, -122.085035 yahoo: 37.42386, -122.090332 esri: 37.42386, -122.090332

Googleplex Results

IBM New York, 590 Madison Ave, New York, NY, 10022 mapquest: 40.7623, -73.972399 google: 40.762267, -73.972535 yahoo: 40.762245, -73.972644 esri: 40.762245, -73.972644

IBM NY Results

Lockheed Martin, 6304 Spine Rd, Boulder, CO, 80301 mapquest: 40.0672, -105.206711 google: 40.067084, -105.206555 yahoo: 40.067063, -105.20654 esri: 40.067063, -105.20654

Lockheed Martin Results

Red Hat Canada, 2323 Yonge Street, Suite #300, Toronto, Ontario M4P 2C9, Canada yahoo: none mapquest: 43.708137, -79.3985 google: 37.062500, -95.677068 esri: 79.398592, -43.7081

Redhat Canada Mapquest Results Redhat Canada Google Results

For the most part all of the services provide very similar results for geocoding in the US. From the limited number of locations I tested it seems that the larger cities have a more reliable set of outputs. In NY for example they almost completely stack on top of each other. I find it interesting too that in 4 out of 6 cases yahoo came back with the exact same results as ESRI provided.

The last thing to notice of course is that the results for Canada are not as good. First off I couldn’t get yahoo’s service to work with a Canadian address for some reason. Also notice that the ESRI latitude and longitude results are swapped. And viewing the results from google for latitude and longitude gave me some wildly incorrect values but the map was actually correct (thus the two maps). The only completely reliable service for Canada was mapquest and google (although google doesn’t do geocoding) with ESRI coming in next just because the results were swapped. All in all I think all 3 did a good job.

I’m not sure why google hasn’t produced something in the way of geocoding yet. I think they have the mapping nailed down but their lack of geocoding will put them at somewhat of a disadvantage at some point since the other 3 services are in the open now and both ESRI and mapquest already have commercial versions of their services that people use widely.