Accurate IP geolocation API for any IPv4 or IPv6. Instantly locate any IP address and get city-level location, ASN, Company, currency, timezone and threat data in JSON or XML.
Pinpoint where an IP is, down to the city. The IP-to-location module returns continent, country, state, city, latitude and longitude, and zip code, plus, on paid plans, an accuracy radius and confidence value so you know how precise each result is.
For every field and type, see the full field reference in the docs.
1"location": {
2 "continent_code": "NA",
3 "continent_name": "North America",
4 "country_code2": "US",
5 "country_code3": "USA",
6 "country_name": "United States",
7 "country_name_official": "United States of America",
8 "country_capital": "Washington, D.C.",
9 "state_prov": "California",
10 "state_code": "US-CA",
11 "district": "Santa Clara",
12 "city": "Mountain View",
13 "locality": "Mountain View",
14 "accuracy_radius": "5",
15 "confidence": "High",
16 "dma_code": "807",
17 "zipcode": "94043-1351",
18 "latitude": "37.42240",
19 "longitude": "-122.08421",
20 "is_eu": false,
21 "country_flag":
22 "https://ipgeolocation.io/static/flags/us_64.png",
23 "geoname_id": "6301403",
24 "country_emoji": "🇺🇸"
25}Country metadata module provides country calling (dialing) code, country's top level domain name (ccTLD) and official spoken languages in the country associated with the queried IP address.
1"country_metadata": {
2 "calling_code": "+1",
3 "tld": ".us",
4 "languages": [
5 "en-US",
6 "es-US",
7 "haw",
8 "fr"
9 ]
10}IP Network module provides network-level details for an IP address, including the connection type (DSL, Mobile, 5g, etc.), the BGP route (CIDR) the IP belongs to, and whether the IP is anycast.
1 "network": {
2 "connection_type": "Mobile",
3 "route": "165.227.0.0/20",
4 "is_anycast": false
5 }IP ASN module provides Autonomous System information for an IP address, including the AS number, the organization name, the country where the ASN is registered, the ASN type such as ISP, HOSTING, EDUCATION, GOVERNMENT, or BUSINESS, the organization domain when available, the allocation date when the ASN was assigned to the organization, and the Regional Internet Registry (RIR) that issued the ASN.
For deeper network intelligence such as ASN peers, upstreams, downstreams, and routes, or to look up an ASN directly by its number, not just from an IP, use our dedicated ASN API.
1"asn": {
2 "as_number": "AS14061",
3 "organization": "DigitalOcean, LLC",
4 "country": "US",
5 "type": "HOSTING",
6 "domain": "digitalocean.com",
7 "date_allocated": "2025-03-04",
8 "rir": "ARIN"
9 }IP to Currency module provides currency information of the country such as currency name, currency symbol and currency code from an IP address.
1"currency": {
2 "name": "US Dollar",
3 "code": "USD",
4 "symbol": "$"
5}Know the ISP/Company behind an IP. The company module returns the company name, its type (ISP, HOSTING, EDUCATION, GOVERNMENT, or BUSINESS), and the company domain when available.
1"company": {
2 "name": "DigitalOcean, LLC",
3 "type": "HOSTING",
4 "domain": "digitalocean.com"
5 }Flag risky traffic before it converts. The security module returns a threat score plus VPN, proxy, residential proxy, Tor, relay and bot flags, the anonymizer's provider name, and whether the IP is a known attacker or a cloud provider.
For dedicated VPN, proxy and Tor detection, use the IP Security API.
1"security": {
2 "threat_score": 85,
3 "is_tor": false,
4 "is_proxy": true,
5 "proxy_provider_names": [],
6 "proxy_confidence_score": 90,
7 "proxy_last_seen": "",
8 "is_residential_proxy": false,
9 "is_vpn": true,
10 "vpn_provider_names": [
11 "Browsec VPN"
12 ],
13 "vpn_confidence_score": 90,
14 "vpn_last_seen": "2026-01-24",
15 "is_relay": false,
16 "relay_provider_name": "",
17 "is_anonymous": true,
18 "is_known_attacker": true,
19 "is_bot": false,
20 "is_spam": true,
21 "is_cloud_provider": false,
22 "cloud_provider_name": ""
23}The Abuse Module provides contact details of the responsible party for the queried IP address, including country, organization, email address and phone number. Ideal for reporting malicious activity or handling abuse complaints.
Only need the abuse contact for an IP, not a full lookup? Use our dedicated IP Abuse Contact API.
1"abuse": {
2 "route": "185.219.156.0/22",
3 "country": "LV",
4 "name": "DEAC abuse handling",
5 "organization": "",
6 "kind": "group",
7 "address": "Cuibes street 17, LV-1063, Riga, Latvia",
8 "emails": [
9 "abuse@deac.eu"
10 ],
11 "phone_numbers": [
12 "+371 67072100"
13 ]
14}IP to Time Zone module provides time and timezone related information such as timezone name, UTC/GMT offset, current date and time, daylight saving time status, daylight saving offset in hours, along with start and end details of daylight saving time.
Need more than IP-based time data? Our dedicated Timezone API also looks up by coordinates, city, airport code, or timezone name, and converts time between any two zones.
1"time_zone": {
2 "name": "America/Los_Angeles",
3 "offset": -8,
4 "offset_with_dst": -8,
5 "current_time": "2026-02-25 02:00:28.453-0800",
6 "current_time_unix": 1772013628.453,
7 "current_tz_abbreviation": "PST",
8 "current_tz_full_name": "Pacific Standard Time",
9 "standard_tz_abbreviation": "PST",
10 "standard_tz_full_name": "Pacific Standard Time",
11 "is_dst": false,
12 "dst_savings": 0,
13 "dst_exists": true,
14 "dst_tz_abbreviation": "PDT",
15 "dst_tz_full_name": "Pacific Daylight Time",
16 "dst_start": {
17 "utc_time": "2026-03-08 TIME 10:00",
18 "duration": "+1.00H",
19 "gap": true,
20 "date_time_after": "2026-03-08 TIME 03:00",
21 "date_time_before": "2026-03-08 TIME 02:00",
22 "overlap": false
23 },
24 "dst_end": {
25 "utc_time": "2026-11-01 TIME 09:00",
26 "duration": "-1.00H",
27 "gap": false,
28 "date_time_after": "2026-11-01 TIME 01:00",
29 "date_time_before": "2026-11-01 TIME 02:00",
30 "overlap": true
31 }
32 }User Agent module parses the browser user agent string and provides detailed device information such as device name, device version, device type, device operating system, device browser, browser engine and browser version. It can identify robots, crawlers and attackers.
To parse user agents on their own, use our dedicated User-Agent API.
1"user_agent": {
2 "user_agent_string": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.5 Safari/605.1.15",
3 "name": "Safari",
4 "type": "Browser",
5 "version": "13.0.5",
6 "version_major": "13",
7 "device": {
8 "name": "Apple Macintosh",
9 "type": "Desktop",
10 "brand": "Apple",
11 "cpu": "Intel"
12 },
13 "engine": {
14 "name": "AppleWebKit",
15 "type": "Browser",
16 "version": "605.1.15",
17 "version_major": "605"
18 },
19 "operating_system": {
20 "name": "Mac OS",
21 "type": "Desktop",
22 "version": "10.15.3",
23 "version_major": "10.15",
24 "build": "??"
25 }
26}With reverse IP Lookup, you can resolve the host name or domain or router dns address. This gives you detailed information about the original source of traffic.
curl 'https://api.ipgeolocation.io/v3/ipgeo?include=hostname&ip=8.8.8.8&apiKey=API_KEY'1{
2 "ip":"8.8.8.8",
3 "hostname":"dns.google",
4 "...":"..."
5}Enter the domain address in place of IP address and our API will perform a DNS Lookup to give you the web hosting provider and the geographical location of the website.
1{
2 "domain": "ipgeolocation.io",
3 "ip": "104.20.40.71",
4 "location": {
5 "country_name": "United States",
6 "state_prov": "California",
7 "city": "San Francisco",
8 "...":"..."
9 }
10}Use our Bulk IP Lookup endpoint to perform batch lookup of multiple IPs in one go. One request can have up to 50,000 IPs, and both IPv4 and IPv6 are supported.
For offline or very high volume, use our downloadable IP geolocation database; to plan spend, see what each call costs.
curl -X POST 'https://api.ipgeolocation.io/v3/ipgeo-bulk?apiKey=API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"ips": ["1.1.1.1", "1.2.3.4", "1.2.3.5", "1.2.3.6", "1.2.3.7"]
}'You can retrieve the geolocation information for an IP address in the following languages:
Adapt the content of your website to the destination of your visitors. Make your visitors feel right at home by "talking" to them in their local language and connect with them instantly. With IP geolocation, redirect users to their region-specific site and serve the right language and currency automatically, with no location pop-up.
Do you have an awesome content localization strategy in place? IP geolocation is a non-intrusive way to know where your visitors are coming from. Don't ruin your visitor's website experience by showing annoying pop-ups asking for their location. Our geolocation API will detect their location from their IP address and show them the relevant message.
Enforce digital rights of your content using IP location API. Build a virtual fence around your content and make sure that only the people inside the fence can see it.You can now confidently restrict unauthorized access while providing uninterrupted experiences to authorized users with the accuracy of our IP Geolocation API.
With our security, geolocation, and user agent module, you can identify anonymous traffic sources, known attackers, suspicious devices and tor nodes to prevent online fraud, trial abusers, forum spams and botnet attackers.
Enrich every request with precise geolocation and real-time threat intelligence, delivered on a global edge with a 99.99% uptime SLA. Start free and scale when you’re ready.
Start on the free plan with 1,000 lookups a day, no credit card. Paid plans from $19/month with no rate limits. See pricing.
Yes. The free plan gives you 1,000 API credits per day for life, with no credit card required. It covers core location, country metadata, currency, basic ASN, and time zone. Paid plans start at $19 per month and add company and network data, security and VPN/proxy detection, abuse contacts, bulk lookups, and domain lookups.
Send the IP to the unified endpoint and you get its location back in JSON or XML. A single call to https://api.ipgeolocation.io/v3/ipgeo returns city, country, coordinates, ASN, ISP/Company, currency, and time zone for any IPv4 or IPv6 address. See the API documentation for parameters and exact field paths.
One call returns location (city, state, country, coordinates), country metadata, currency, ASN, ISP/Company, and time zone. Paid plans add network and connection type, security and anonymizer detection, abuse contacts, user agent parsing, hostname, and domain lookup. You can request only the fields you need to keep responses small and fast.
Yes. The bulk endpoint accepts up to 50,000 IPv4 or IPv6 addresses in a single request, which is the fastest way to enrich logs, user tables, or event streams. For continuous high-volume processing, the same data is also available as a downloadable IP geolocation database.
Accuracy is reported per result on paid plans, where every lookup returns an accuracy radius and a confidence value so you can judge precision instead of guessing. Locations resolve to city and locality level and are built from multiple independent signals, including active measurements, that are cross-checked and refreshed continuously. The free plan covers core location without the radius and confidence fields.
Yes. The security module returns a threat score plus VPN, proxy, residential proxy, Tor, relay, and bot flags for any IP, in the same response as the location data. Security adds 2 credits per lookup on paid plans. You can score risk and locate a visitor in one call instead of stitching two services together.
No. There are no rate limits on any plan. Plans are based on monthly credits: a standard unified lookup costs 1 credit, security adds 2 credits, and abuse adds 1 credit. Every response includes an X-Credits-Charged header, so you can see exactly what each call costs.
The API returns JSON or XML over HTTPS, with official SDKs for Python, Java, Go, PHP, JavaScript, and more. Paid plans can return geolocation fields in multiple languages, including German, French, Japanese, and Spanish. The response schema stays the same across plans, so scaling up never breaks your integration.
Get the latest in geolocation tech, straight to your inbox.