UPDATED MARCH 2026

Free IP Geolocation API Comparison

Honest comparison of 5 free IP geolocation APIs. HTTPS support, accuracy, rate limits, and working code examples. We include our own API alongside the best alternatives.

Last updated: March 6, 2026. Limits verified against official documentation.

YOUR IP ADDRESS
Detecting...
Loading location...

Quick Comparison

The critical differences between free IP geolocation APIs, at a glance.

Provider Free Tier Rate Limit HTTPS CORS Signup? Data Fields
ip-api.com Free 45 req/min HTTP only Yes No 14 fields
ipinfo.io 50K/mo 1,000 req/day Yes Yes Token required 10 fields
ipify.org Free Unlimited* Yes Yes No IP only (no geo)
ipdata.co 1,500/day 1,500 req/day Yes Yes API key required 20+ fields
Frostbyte This API Free / 50 req/day 120 req/min Yes Yes No (optional key) 12 fields

* Note: ipify.org only returns your IP address, not geolocation data. It's included because many developers searching for "IP API" start with ipify and then need a geolocation solution.

Provider Deep Dive

Detailed pros and cons for each free IP geolocation API.

ip-api.com

Most popular free IP geolocation API

45 req/min 14 data fields No signup
  • No signup needed
  • Rich data (ISP, AS, mobile)
  • Batch lookups (100 IPs)
  • Very popular, battle-tested
  • No HTTPS on free tier
  • Breaks on HTTPS sites
  • 45/min is limiting
  • Commercial use requires paid

ipinfo.io

Industry standard, used by big companies

50K/month 10 data fields Token required
  • HTTPS supported
  • 50K monthly is generous
  • Excellent accuracy
  • ASN and company data
  • Token required (signup)
  • 1K daily limit within 50K
  • No VPN detection on free
  • Paid starts at $99/mo

ipify.org

Simple "what's my IP" service

Unlimited 1 field (IP only) No signup
  • Truly unlimited, no key
  • HTTPS + CORS
  • Ultra-simple API
  • Very reliable
  • IP address ONLY
  • No geolocation data
  • No ISP or timezone
  • Need second API for geo

Frostbyte

IP + geolocation with zero friction

120 req/min 12 data fields No signup
  • HTTPS + CORS
  • No signup required
  • IP + geo in one call
  • ipify-compatible /ip route
  • Newer provider
  • No ASN on free tier
  • 200 credit limit (with key)
  • Smaller database

The HTTPS Problem (Why ip-api.com Breaks)

The most common mistake developers make when choosing an IP geolocation API.

Mixed Content Error

If your website uses HTTPS (which it should), you cannot call ip-api.com from client-side JavaScript. Browsers block HTTP requests from HTTPS pages:

// This FAILS on any HTTPS website
fetch('http://ip-api.com/json')  // Mixed content blocked!

// This WORKS (Frostbyte uses HTTPS)
fetch('https://agent-gateway-kappa.vercel.app/ip/json')  // OK

ip-api.com reserves HTTPS for paid plans ($12/month+). If you need client-side IP detection, use an API that supports HTTPS on the free tier.

Try It Right Now

Enter any IP address to see a live geolocation response. No API key needed.

Enter an IP and click "Lookup" to see live geolocation data

Response from GET /ip/geo/:address via Frostbyte API

Code Examples

Three ways to use the free IP geolocation API. No API key required.

# Get your own IP (plain text, like ipify)
curl https://agent-gateway-kappa.vercel.app/ip

# Get your IP + geolocation (JSON)
curl https://agent-gateway-kappa.vercel.app/ip/json

# Look up any IP address
curl https://agent-gateway-kappa.vercel.app/ip/geo/8.8.8.8

# Returns: country, region, city, timezone, lat/lng, EU status
// Detect visitor's IP + location (works in browser)
const res = await fetch('https://agent-gateway-kappa.vercel.app/ip/json');
const data = await res.json();

console.log(`IP: ${data.ip}`);
console.log(`Location: ${data.city}, ${data.country}`);
console.log(`Timezone: ${data.timezone}`);

// Look up any IP address
const lookup = await fetch('https://agent-gateway-kappa.vercel.app/ip/geo/1.1.1.1');
const geo = await lookup.json();
console.log(geo);
import requests

# Get your own IP + geolocation
r = requests.get('https://agent-gateway-kappa.vercel.app/ip/json')
data = r.json()
print(f"IP: {data['ip']}")
print(f"Location: {data['city']}, {data['country']}")

# Look up any IP address
r = requests.get('https://agent-gateway-kappa.vercel.app/ip/geo/8.8.8.8')
geo = r.json()
print(f"Google DNS: {geo['city']}, {geo['region']}")

Which IP API Should You Use?

Pick based on your specific use case.

Client-Side IP Detection

Detect visitor location in the browser (JavaScript). Need HTTPS and CORS.

Use: Frostbyte or ipinfo.io

Server-Side Geolocation

Backend IP lookup (Node.js, Python). HTTPS doesn't matter. Need high volume.

Use: ip-api.com or ipinfo.io

Just Get My IP

Simple "what is my IP" without geolocation. Maximum simplicity.

Use: Frostbyte /ip or ipify.org

Fraud / VPN Detection

Detect proxies, VPNs, Tor, hosting IPs. Security focused.

Use: ipdata.co or ipinfo.io (paid)

ipify Drop-In Replacement

Already using ipify but need geolocation data too. Minimal code change.

Use: Frostbyte /ip + /ip/json

AI Agent / MCP Tool

Give an AI agent IP lookup capability. Need simple JSON + MCP server.

Use: Frostbyte (also available as MCP server)

Frequently Asked Questions

Why can't I use ip-api.com on my HTTPS website?
ip-api.com's free tier only supports HTTP (not HTTPS). Modern browsers block "mixed content" — HTTP requests from HTTPS pages. This means fetch('http://ip-api.com/json') will silently fail on any HTTPS website. Solutions: use their paid plan ($12/mo for HTTPS), proxy through your backend, or switch to an API that supports HTTPS for free (Frostbyte, ipinfo.io, ipdata.co).
How accurate is IP geolocation?
Country accuracy is 95-99% across all providers. City accuracy is 50-80% and depends heavily on the ISP and region. Urban areas in North America and Europe have the best accuracy. Mobile IPs and VPNs reduce accuracy significantly. For most applications (content localization, analytics, rough location), country + region accuracy is sufficient.
Can I detect VPNs and proxies with a free API?
Basic VPN detection is possible by checking if an IP belongs to a known hosting/datacenter ASN. However, reliable VPN/proxy detection typically requires paid tiers. ipdata.co includes threat detection on paid plans. Frostbyte's full API includes datacenter detection. For serious fraud prevention, consider dedicated services like MaxMind or IPQualityScore.
What's the difference between ipify and Frostbyte's /ip endpoint?
Both GET /ip return your IP as plain text. But Frostbyte also offers GET /ip/json which returns your IP with full geolocation data (country, city, timezone, coordinates) in a single request. ipify only returns the IP address — you need a second API call to get geolocation. Frostbyte is a drop-in replacement that gives you more data.
Is there a completely free IP API with no limits?
ipify.org is the closest to truly unlimited, but it only returns your IP address (no geolocation). Every API that provides geolocation data has some form of rate limiting. The most generous free tiers: ipinfo.io (50K/month), Frostbyte (120 req/min), ip-api.com (45 req/min). For most development and small-scale production use, these limits are sufficient.
Can I use these APIs for GDPR compliance (detecting EU users)?
Yes. Frostbyte's /ip/json response includes an eu boolean field indicating EU membership. ipinfo.io provides country codes that you can map to EU membership. However, note that IP geolocation is not 100% accurate — users with VPNs may appear in different countries. For strict GDPR compliance, combine IP detection with explicit user consent mechanisms.

Get IP Geolocation in One Line of Code

No signup. No API key. HTTPS + CORS. Works in any browser.

curl https://agent-gateway-kappa.vercel.app/ip/json