Specifications

The data feed provides a downloadable geolocation database in the format of blocks with detailed information of each of approximately 32,000,000 records.

The database output form

The database provides a newline separated JSON's list:

...
{"mark":19549440,"isp":"Optus","country":"AU","region":"New South Wales","city":"Bass Hill","lat":-33.8986,"lng":150.9954,"postalCode":"2197","timezone":"+10:00","geonameId":2176648}
{"mark":19549696,"isp":"Optus","country":"AU","region":"New South Wales","city":"Terrigal","lat":-33.4482,"lng":151.4467,"postalCode":"2260","timezone":"+10:00","geonameId":2147023}
...

Downloading the datafeed files

To get access to the Database files from the paths, you need to provide valid credentials. Username and password are equal to your personal API Key which you can obtain from the My subscriptions page.

  • Base path: https://geo-database.ipify.org/datafeeds
  • Format in which each database with IPv4 only is named: "geoipify_%DATE%.jsonl.gz", e.g. "geoipify_2018_07_30.jsonl.gz".
  • Format in which each database with both IPv4 and IPv6 is named: "geoipify_%DATE%_v6.jsonl.gz", e.g. "geoipify_2018_07_30_v6.jsonl.gz".
  • Latest databases are also available by names: "latest.gz" and "latest.v6.gz".
  • A new file is created: daily at 08:00 am (UTC).

Average file sizes

Current IPv4 database Current IPv6 database
gzip 240Mb 340Mb
unpacked 2.6Gb 3.4Gb
rows 26M 32M

Output fields’ descriptions

mark Integer representation of the left border of the range (e.g. 19549440 for 1.42.77.0), this range continues up to 'mark' from next row
isp Internet Service Provider
country ISO‌-3166 2 letter Country Code (ZZ stands for unknown)
region Region
city City
lat Latitude
lng Longitude
postalCode Postal Code
timezone Timezone in the format "+10:00"
geonameId Id of location in the GeoNames database. The field is omitted if the record is not found.
Access full information on a given IP address
Get started
Have questions?

Or shoot us an email to