geocoding and geolocalisation webservices for Geonames, Openstreetmap, and quattroshapes data
Java JavaScript FreeMarker CSS HTML PHP Other
Latest commit f8e04c4 Jan 10, 2017 @gisgraphy add unlock key for address parsing
fix bug (about 20 % of house numbers was not imported)
fill is in fields for pois

Free, open source, and ready to use geocoder, reverse geocoder and geolocalisation webservices

Since 2006, Gisgraphy is a free, open source framework that offers the possibility to do geolocalisation and geocoding via Java APIs or REST webservices. Because geocoding is nothing without data, it provides an easy to use importer that will automatically download and import the necessary (free) data to your local database (OpenStreetMap, Geonames and Quattroshapes : more than 100 million entries). You can also add your own data with the Web interface or the importer connectors provided. Gisgraphy is production ready, and has been designed to be scalable(load balanced), performant and used in other languages than just java : results can be output in XML, JSON, PHP, Python, Ruby, YAML, GeoRSS, and Atom. One of the most popular GPS tracking System (OpenGTS) also includes a Gisgraphy client...Gisgraphy is a framework. As a result it's flexible and powerful enough to be used in a lot of different use cases. read more


demo on map (leaflet plugin)

play with webservices

gisgraphy web site

Who I am

My name is David Masclet, I have developed Gisgraphy since 2006, My goal is to provide a realistic alternative for geocoding and geolocalisation. Feel free to contact me at davidmasclet[at]

Webservices overview :

All the webservice are world wide (243 countries) and support pagination. Actually there are 6 (web)services, and all are availables for free at (c). It also gives some HTML pages that uses the webservices under the hood. Find bellow a summary for each webservices :


Give an Address, structured or not, and get GPS position in 243 countries.

Doc | REST API | Java API | Demo | Free access

Reverse geocoding

Give a GPS position and get the corresponding address

Doc | REST API | Java API | Demo | Free access

Street search

Find streets and the associated informations, for a given GPS point (and an optionnal name). It is very useful for tracking software like Open Gts, but a lot of other use cases.

Doc | REST API | Java API | Demo | Free access

Find nearby

Find places, streets, whatever you want, around a GPS point for a given radius. Results can be sorted by distance.

Doc | REST API | Java API | Demo | Free access

Fulltext search / Autocompletion

For a given text and an optionnal GPS point, Find places, cities, streets, zip codes,... with informations (coordinates, states, population, elevation, alternate names in many languages). Auto completion, location bias, spellchecking, all words required or not...

Doc | REST API | Java API | Demo | Free access

Address parser

Divide a single address (as string) into its individual component parts : house number, street type (bd, street, ..), street name, unit (apt, batiment, ...), zipcode, state, country, city.

Doc | REST API | Java API | Demo | Free access

Openstreetmap data download

Gisgraphy want to simplify the access to the Openstreetmap data. The model of the openstreetmap data is in XML or PBF and is not simple to manage. To simplify this, We have :

  • Extract all the streets(76 millions), cities (4.3 millions of cities / 216 000 shapes), Points of interest (7 millions), and house numbers(34 Milions) for each 240 country, and put it in a CSV/TSV format.
  • Split the main PBF file for each countries.
  • Extract the shape of more than 160 000 cities and localities extracted from Quatroshapes with their associated geonames Id

All those files are freely available on our download server

In addition to the native openstreetmap data, some pre-calculated fields (length, middle point) are added... Read more


Gisgraphoid is a library to do geocoding on your Android mobile or tablet with the same Geocoder API as Google but with Gisgraphy. Run on all Android versions, free, no Google API needed by the phone, no API key, no limit. You can display the result on Openstreetmap or Google maps (Google API key required)

Learn More | Download library | Download Demo app

Leaflet Plugins

Demo with the two plugins on a map.

Geocoding : It allows to add a geocoding to add a geocoding input with autocompletion on a leaflet map. It wraps the Gisgraphy js API.

Learn More | View demo | Documentation

Reverse geocoding : It reverse geocode when you rightclick on the map. it is a sample and you can personalize it.

Learn More | View demo | Documentation

A little bit further

  • Importers from geonames CSV files. Just give the country(ies) you wish to import and / or the placetypes, and Gisgraphy download the files and import them with all the alternate names (optional) and sync the database with a fulltext search engine
  • All Openstreetmap data processed in csv format (view data)
  • Importers for Openstreetmap data in csv (view data)
  • Importers for Quattroshapes data in csv (view data)
  • Leaflet plugins
  • WorldWide geocoding / worldWide reverse geocoding / street search WebServices;
  • REST WebService
  • Several output formats supported : XML, json, PHP, ruby, python, Atom, RSS / GeoRSS
  • Full text search (based on Lucene / Solr with default filters optimized for city search (case insensitivity, separator characters stripping, ..) via an Java API or a webservice
  • Findnearby function (with limits, pagination, restrict to a specific country and/or language and other useful options) via a Java API or a Web Service
  • An admin / back office whith statistics interface
  • Fully replicated / scalable / high performances / cached services
  • Search for zipcode name, IATA, ICAO
  • Internationalized (with support of cyrillique, arabic, chinese,... alphabet)
  • Dojo widgets / prototype / Ajax to ease search but can be use it even if javascript is not enabled on the client side
  • Opensearch module
  • Plateform / language independent
  • Provides all the countries flags in svg and png format
  • ...

License and attributions