IP geolocation APIs have a big part to play in modern corporations. Using IP lookup, they can be used to match the IP address with the physical location a user is connecting from. This then drives better user experiences such as displaying a user’s locale. It can also play a part in a range of other use cases, some of them exclusively internal.
Whether they face inward or outward, a developer will need to implement them. API developers’ success relies on both performance and uptime. Documentation is also rated as important. Therefore, this summary of the best 8 IP geolocation APIs for developers will focus on these aspects.
Table of Contents
Abstract IP Geolocation API
Abstract’s geolocation API uses IP lookup to source geodata in real-time such as city, ZIP or postal code, latitude/longitude, country flag, and more. It can output this data in JSON or XML. It supports IPv4 and IPv6 addresses. The free plan supports up to 20,000 API calls per month.
Abstract’s IP geolocation is a REST API that’s designed to be lightweight to minimize latency and be easy to implement to begin enhancing workflows. Abstract supplies fast technical support and great uptime. If you have an enterprise use case, then Abstract is also able to supply SLAs (Service Level Agreements) to give you confidence in uptime, especially important if you decide to use IP geolocation for cybersecurity applications. Documentation is readily accessible from their website to help get you started.
Maxmind GeoIP2 Precision Services
Maxmind’s IP geolocation API can source a visitor’s geographical location including continent, country, city, ISP, and time zone. The three paid tiers are priced per API call. There’s a free version, but it’s limited in functionality and data is less accurate. Also, data more accurate than country only becomes available at the second paid tier product.
Maxmind’s global servers help ensure high performance and a claimed 99.99% uptime since launching in 2010. A quick start guide that provides code samples in all supported languages including JAVA, PHP and Python.
IP2Location Web Service
This is a RESTful API capable of sourcing geolocation data including ZIP code or postal code, latitude/longitude, local weather station, and elevation. This is a granular product where you buy credits and then allocate them how you wish to source the level of data your use case requires. A free trial is available.
Unfortunately, no information could be found on speed/latency or SLAs, so you might need to contact IP2Location to assess. Sample code is easily accessible in Ruby, PHP and JAVA, though.
ipapi.com
ipapi’s IP geolocation API can source a user’s location data including country flag, city, language, and calling code. A free API key is available which supports up to 1,000 API requests per month, but it’s limited to location data. However, paid plans start at just 10 US dollars.
Based on JSON and XML, this is a lightweight API. Code samples in PHP (Curl) and JavaScript are available on the website. However, no mention can be found of speed or SLAs.
DB-IP
This IP geolocation database service can source geodata including continent code, currency code, language code, ISP (internet service provider). There’s a limited free IP geolocation trial available. There are three paid tiers with increasing functionality. Each tier is also split into three levels to enable increasing numbers of API calls.
It’s built on a scalable, global network to maximize speed. SLAs of 99.95% and 99.99% uptime become available with level two and level three products in each tier. Documentation with sample code is also available for this RESTful API.
ipgeolocation.io
This API can provide data including country code, latitude/longitude, ISP, and time zone. The free API key supports up to 30,000 API requests per month at up to 1,000 per day. Paid tiers appear to offer all functionality and can support up to 50 million API requests per month with an enterprise tier above that.
Unfortunately, there doesn’t appear to be any information on speed/latency or uptime/SLAs. There are code examples in PHP, JAVA, jQuery, and more on the website, though.
ip-info
This geolocation API can supply region, city, ZIP or postal code, and ASN (ISP) data. There’s a free version supporting up to 50,000 API returns per month, though whether it supports all location information isn’t clear. The paid tiers support increasing levels of data and increased numbers of calls.
The enterprise tier offers SLAs, an account manager (think customer success manager) and onboarding/implementation support. Documentation provides support for implementation in Django, Ruby, Go, and more.
Positionstack
Positionstack can supply geolocation information including calling code, currency, latitude/longitude, and language. It can also supply embeddable maps. The free version can support up to 25,000 API requests per month. Paid tiers supply increasing levels of data and API calls.
Positionstack is built on a scalable cloud infrastructure to offer response times of 10ms to 100ms. No information on SLAs is readily available. However, there are code examples in PHP, Python, Ruby, and more.
Conclusion
Most of the Geolocation APIs listed here cover the same types of data. Where products tend to differentiate themselves from each other is in whether all functionality is available at all pricing tiers. There’s also differences in the level of information offered on SLAs and the extent/ease of access to code examples to help you get started.
Make sure to include a representative of your API developers in your selection process. After all, these are the people you’ll be dependent on to implement API services.