Skip to content
InternetData
IP geolocation

Geolocate any IP address

The country, timezone and currency of any address, free with no key and no cap. A paid plan adds the region, the city, the postal code and the coordinates, from the same data as our IP Geolocation database.

Country-level location is free, with a key or without one. The region, city and coordinates are on every paid plan. A free account's first 100 lookups each day answer every field.

What people use it for

  • Prices and language

    Show a visitor their own currency and language on the first page they open, before they choose anything.

  • Country rules

    Licensing, sanctions or content rights that differ by country: allow, block or redirect by the visitor's country.

  • The nearest server

    Send a visitor to the closest region or point of presence from the address's coordinates.

  • Analytics without a script

    Count visitors by country and city from your own logs, with no third-party tag on the page.

What the answer says

Free fields answer with a key or without one, with no cap. Paid ones come with every paid plan, and a field your plan doesn't include is left out of the answer, never sent as false.

Every field, plan by plan, is on Pricing, and each one is described in the documentation.

location.country
The ISO 3166 country code and its nameFree
location.continent
The continentFree
location.timezone
The IANA timezone, such as Europe/ViennaFree
location.currency_code
The country's currency, with its name and symbolFree
location.region
The region or statePaid
location.city
The cityPaid
location.latitude, longitude
Coordinates, with an accuracy radiusPaid

Read it in your code

The same lookup answers every field your plan has; a field it doesn't is left out.

There are SDKs for 12 languages, a CLI and an MCP server. The API has the endpoints and limits.

import { InternetData } from "@internetdata/internetdata";
const client = new InternetData();
const r = await client.lookup(req.ip);
console.log(r.location.country); // "AT"
console.log(r.location.timezone); // "Europe/Vienna"
app.mjsnpm install @internetdata/internetdata
00 · Try

Look one up now.

Unlimited answers with no key and no cap, and a free account's first 100 lookups each day answer every field.

01 · Scale

Then pick a plan.

Every field, VPN and proxy detection included, on every paid plan.
Up to 1,000 lookups in one request.
Enterprise terms, with the databases themselves, by contract.