If you want better accuracy, higher update frequency, an enterprise-ready solution, and more lenient license and copyright terms, you might be interested in our free IP data downloads. This guide shows how to migrate from MaxMind’s GeoLite2™ Country database to the IPinfo Lite database, which combines country and ASN data in one file.
Installation Process
Compared to the MaxMind database, migrating to IPinfo Lite is a breeze.
| Factors | MaxMind | IPinfo Lite |
|---|---|---|
| Download link | https://download.maxmind.com/app/geoip_download?edition_id=GeoLite2-Country&license_key=YOUR_LICENSE_KEY&suffix=tar.gz |
https://ipinfo.io/data/ipinfo_lite.mmdb?token=YOUR_TOKEN |
| Token | Get your license key from your profile page. The license key is viewable only once after it’s generated, so save it — otherwise you’ll need to generate a new one. | Use your IPinfo access token to download your accessible databases. View it anytime from your account dashboard: Log in to your account | IPinfo.io |
| Compression | The downloaded database is tar-compressed and then gzip-compressed. | The MMDB file is not compressed by default and is small (well under the size of MaxMind’s package). CSV, JSON, and Parquet formats are also available, gzip-compressed for CSV/JSON. |
| Files | The unzipped database contains a directory with the database and 2 license files. | You get a single MMDB (or CSV/JSON/Parquet) file — no directory, no extra license files. |
| License | You must be conscious of the MaxMind license agreement, which grants limited usage. | IPinfo Lite is released under CC BY-SA 4.0, requiring only an attribution statement, and grants both personal and commercial use. |
IPinfo Lite MMDB Output
IPinfo Lite returns country and ASN information in a single lookup:
{
"network": "8.8.8.0/24",
"country": "United States",
"country_code": "US",
"continent": "North America",
"continent_code": "NA",
"asn": "AS15169",
"as_name": "Google LLC",
"as_domain": "google.com"
}
MaxMind MMDB Output
MaxMind provides data in multiple language translations, and the database uses a nested format, which makes queries more involved:
{
"continent": {
"code": "NA",
"geoname_id": 6255149,
"names": {
"de": "Nordamerika",
"en": "North America",
"es": "Norteamérica",
"fr": "Amérique du Nord",
"ja": "北アメリカ",
"pt-BR": "América do Norte",
"ru": "Северная Америка",
"zh-CN": "北美洲"
}
},
"country": {
"geoname_id": 6252001,
"iso_code": "US",
"names": {
"de": "Vereinigte Staaten",
"en": "United States",
"es": "Estados Unidos",
"fr": "États Unis",
"ja": "アメリカ",
"pt-BR": "EUA",
"ru": "США",
"zh-CN": "美国"
}
},
"registered_country": {
"geoname_id": 6252001,
"iso_code": "US",
"names": {
"de": "Vereinigte Staaten",
"en": "United States",
"es": "Estados Unidos",
"fr": "États Unis",
"ja": "アメリカ",
"pt-BR": "EUA",
"ru": "США",
"zh-CN": "美国"
}
}
}
Migration to IPinfo Lite from GeoLite2™ Country (Value Access)
To migrate from MaxMind to IPinfo Lite, note how each database structures its fields. MaxMind stores core information 2–3 levels deep. IPinfo Lite’s flat structure makes each value accessible through a single key.
| Value | IPinfo Lite | MaxMind | Output |
|---|---|---|---|
| Continent Code | response["continent_code"] |
response["continent"]["code"] |
NA |
| Continent Name | response["continent"] |
response["continent"]["names"]["en"] |
North America |
| Country Code | response["country_code"] |
response["country"]["iso_code"] |
US |
| Country Name | response["country"] |
response["country"]["names"]["en"] |
United States |
| ASN | response["asn"] |
(not included in GeoLite2 Country) | AS15169 |
| AS Name | response["as_name"] |
(not included in GeoLite2 Country) | Google LLC |
| AS Domain | response["as_domain"] |
(not included in GeoLite2 Country) | google.com |
IPinfo Lite includes ASN data alongside country data in the same lookup — something GeoLite2 Country does not provide on its own (MaxMind splits this across separate GeoLite2 Country and GeoLite2 ASN databases).
If you’re using an MMDB reader library, note that most MMDB reader libraries are schema-agnostic. The library you used for MaxMind’s MMDB files works the same with IPinfo’s — you just need to account for the schema differences and access the correct keys.
Other Formats
IPinfo Lite is also available in CSV, JSON, and Parquet:
curl -L https://ipinfo.io/data/ipinfo_lite.csv.gz?token=$TOKEN -o ipinfo_lite.csv.gz
curl -L https://ipinfo.io/data/ipinfo_lite.mmdb?token=$TOKEN -o ipinfo_lite.mmdb
curl -L https://ipinfo.io/data/ipinfo_lite.json.gz?token=$TOKEN -o ipinfo_lite.json.gz
curl -L https://ipinfo.io/data/ipinfo_lite.parquet?token=$TOKEN -o ipinfo_lite.parquet
If you need further assistance, feel free to open a thread in our community support channel.
