Latlong maps API more accurate than Google maps API
Updated: Mar 10
IIT Kanpur’s National Geodesy Centre has verified a benchmarking study, which finds average accuracy of Latlong’s Geo-coding API to be 2x better than Google Maps API.
A few months ago, our family was driving in interior Karnataka visiting several temples. We had to get directions from a small village to visit the temple in Goruru, on the banks of Hemavathi in Hassan District. My son opened Google Maps and started giving directions. After driving a couple of kilometres, I sensed that we were heading in the wrong direction. So, I stopped the car and checked the map. I found that we were headed towards another village called Goruru near Bengaluru, in the opposite direction. Before I could open my mouth, my son calmly said that he was blemish-less and Google Maps was to blame. Those maps had Goruru (near Bengaluru) and Gorur (near Hassan) as 2 different villages with different English spelling, when the reality is that both villages have the exact same name in Kannada – ಗೊರೂರು (गोरूरु). If only, the search had shown both as identical possibilities, he argued, he would have stopped to think, rather than choose the one where the English spelling was a better match to the Kannada name.
This triggered a conversation with our CTO, Rahul Sindaghatta on how do we use intuitive knowledge about place names. During this conversation, he pointed out that people view addresses telescopically downwards from country to house number, while addresses are written microscopically upwards from house number to country. The way the address is written, impacts converting address strings to location (a latitude-longitude co-ordinate pair or lat-long) in a very big way.
So, we decided to translate our ‘tribal’ knowledge (a term coined by a friend of ours) to APIs in our platform. The result was to set an objective for our engineering team, led by Rahul, to better the average accuracy provided by the Application Programming Interfaces (APIs) of the world’s leading maps platforms like Google, Microsoft Bing and TomTom.
In a ground-breaking piece of work in deep technology, I am delighted to announce that our engineering team at Latlong, has achieved superior accuracy levels as compared to the world’s leading maps platforms. Specifically, our Geocoding API (Application Programming Interface) has average accuracy levels 2x better than a similar Google Maps API. A benchmarking exercise was carried out in this regard, using several thousand addresses. These addresses represent different possibilities across the country – residential and businesses; hospitals and schools; cities and villages; Tier 1 and Tier 4 cities; apartments and individual houses.
I am grateful to Prof Onkar Dikshit, who heads the National Centre for Geodesy at IIT Kanpur. He and his team reviewed the process followed by Latlong and verified the results of the benchmarking effort. We are also grateful to Prof Abhay Karandikar for the opportunity to work with his team at IIT Kanpur.
What is geo-coding and why is it important?
Process of converting an address into a latitude-longitude co-ordinate pair.
This is one of the more complex processes within geospatial work and is a foundational element for all geospatial use cases.
It is well-known that Indian addresses are some of the hardest to geo-code.
Enterprises use Geocoding API to understand where customers are. This forms the basis for improving their demand generation and fulfilment processes. So, getting the customer location wrong can be disastrous.
Note that results from front-end search boxes could be quite different from API results, due to autosuggest and location-preference; while focus for enterprises is API
Result of benchmarking exercise
In his review report, Prof Onkar Dikshit of National Centre of Geodesy at IIT Kanpur said – “average position error pattern remains: Latlong < Google < Bing < TomTom”
Latlong’s Geocoding API has 2x better average accuracy than that of Google Maps API.
Latlong’s API accuracy is 35x better than that of Microsoft Bing API.
Latlong’s API accuracy is almost 200x better than that of TomTom API.
Note: The Table provides average error from actuals, and the lower the error the better the accuracy.
What are we doing differently – “Depth of Area”
At the heart of the API is the intuitive understanding that humans think of addresses telescopically downwards from the Milky Way to the house number! One can think of each geographical area in an hierarchical fashion: Country (India) -> State (Karnataka) -> City (Bengaluru) -> Locality (Jayanagara) -> Neighbourhood (Yediyuru). The challenge is in implementing the insight due to a host of reasons like overlapping boundaries across these geographical areas: for example, Yediyur belongs to Banashankari and Jayanagara in Bengaluru. The most important reason this has been difficult to implement is that such ‘geospatial shapes’ become compute-expensive to implement. This is where a concept of “Depth of Area” was created by our engineers to be able to quickly select the possibility with the best match. This delivers superior accuracy and performance.
Latlong’s strength is having curated area data (called polygons in maps), across India. This helps eliminate all the non-fitting locations very quickly, as they don’t fit into the ‘area’. For example, an address for a village needs the area of the village mapped out, which allows Latlong to quickly zero in on locations with greater degree of accuracy. The ‘depth of area’ concept is made possible by curated area data. It becomes difficult to implement when the ‘area data’ is non-curated and dynamically created through concave / convex hulls.
Multiple possibilities of English spelling for Indian names of areas, is a challenge which has been beautifully handled. Latlong uses Indian language scripts appropriately for string matches. For example: Jainagar / Jayanagara / Jayanagar all map to जयनगर (ಜಯನಗರ). Here we acknowledge the APIs of AI4Bharat for this purpose.
Such ‘tribal knowledge’, is at the heart of how we have been able create a suite of world-class maps APIs.
Try out the Geocoding API and all other APIs at https://apihub.latlong.ai/
A few examples of geocoding API output are presented on Latlong Maps
A Tier-1 city address
A Tier-2 city address
A village address
It gives us an immense satisfaction that in a relatively complex and deep technology domain like APIs for maps, we compete with the best and deliver great accuracy. We are excited by the possibilities of what we can deliver going forward.