FreeGeoIP
IP geolocation JSON
City, region, country and timezone from an IP address. Simple keyless JSON at /json/{ip}.
GET https://freegeoip.app/json/8.8.8.8
{
"ip": "8.8.8.8",
"country_code": "US",
"country_name": "United States",
"region_code": "US-CA",
"region_name": "California",
"city": "Mountain View",
"zip_code": "94035",
"time_zone": "America/Los_Angeles"
}curl "https://freegeoip.app/json/8.8.8.8"const res = await fetch("https://freegeoip.app/json/8.8.8.8");
const data = await res.json();
console.log(data);import requests
res = requests.get("https://freegeoip.app/json/8.8.8.8")
print(res.json())/json/8.8.8.8PROBEDIP geolocation JSON
/jsonJson — documented GET route.
/json/1Json details by ID (example: 1).
/json?limit=10Json — documented GET route.
/json/search?q=testSearch by query parameters.
We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.
Stable. No schema drift observed since monitoring began — the response shape has not changed under our checks.
FreeGeoIP: common questions
Is FreeGeoIP free to use?
Yes — FreeGeoIP is a free geo & maps API. Free tier: Free — limits not published. Whether the free tier allows commercial use is unclear — check the provider docs.
Does FreeGeoIP need an API key?
No — FreeGeoIP needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).
Can I call FreeGeoIP from the browser?
Yes — FreeGeoIP returns CORS headers over HTTPS, so front-end code can fetch it directly with no backend proxy. Use the fetch snippet on this page, or hit "Run live" to try it now.
Is FreeGeoIP up right now?
As of our last scheduled check, FreeGeoIP is healthy with 96.1% uptime over 90 days and a 242 ms median response. We re-probe it every sweep — the status badge and uptime chart above always show the latest.