Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Free GeoIp provider

Build Status Latest Stable Version Total Downloads Monthly Downloads Code Coverage Quality Score Software License

This is the Free GeoIp provider from the PHP Geocoder. This is a READ ONLY repository. See the main repo for information and documentation.

Provider Website:


$httpClient = new \GuzzleHttp\Client();

// Use the default provider (
$provider = new Geocoder\Provider\FreeGeoIp\FreeGeoIp($httpClient);
// Or provide the endpoint of your instance
$provider = new Geocoder\Provider\FreeGeoIp\FreeGeoIp($httpClient, 'http://my.internal.geocoder/json/%s'); shutdown

As per the website, the provider has been purchased by IpStack. As a result, this provider no longer uses this service with the default configuration.

By default, it will now use (which provides a hosted version of the same API as

You can also use the self hosted variant and supply a host when constructing the provider.


We offer an IpStack provider which you can use if you wish to continue with the new service owner.

Full IP Provider List


composer require geocoder-php/free-geoip-provider


Contributions are very welcome! Send a pull request to the main repository or report any issues you find on the issue tracker.