node package manager
Easy sharing. Manage teams and permissions with one click. Create a free org »


This repository is part of the Pelias project. Pelias is an open-source, open-data geocoder built by Mapzen that also powers Mapzen Search. Our official user documentation is here.

Pelias Geonames importer

Gitter Build Status Greenkeeper badge

This Node.js package imports data from Geonames into Pelias. It includes utilities for downloading and cleaning up the data before import.


  • Node.js '4.0' or greater


git clone
cd geonames
npm install
npm run download_metadata


The importer can be configured from your local pelias-config (defaults to ~/pelias.json) in the imports.geonames object:

    "imports": {
        "geonames": {
            "datapath": "/path/to/geonames/data",
            "countryCode": "MX"

The following are all optional:

  • datapath: the path to geonames data. Defaults to a directory inside the importer.
  • countryCode: the two digit (ISO 3166-1 alpha-2) country code for the country for which data will be downloaded and imported. Use ALL for all countries.

Admin Lookup

Pelias has the ability to compute the admin hierarchy (county, region, country, etc) from Who's on First data. For more info on how admin lookup works, see the documentation for pelias/wof-admin-lookup. By default, adminLookup is enabled. To disable, set imports.adminLookup.enabled to false in Pelias config.

Note: Admin lookup requires loading around 5GB of data into memory.


A list of supported countries and their codes can be viewed with npm run countryCodes

$> npm run countryCodes
│ ISO │ Country                                      │ Capital              │ Continent │ geonameid │
│ AD  │ Andorra                                      │ Andorra la Vella     │ EU        │           │
│ AE  │ United Arab Emirates                         │ Abu Dhabi            │ AS        │ 290557    │
│ AF  │ Afghanistan                                  │ Kabul                │ AS        │ 1149361   │
│ AG  │ Antigua and Barbuda                          │ St. John's           │ NA        │ 3576396   │

Download the data

The data corresponding to the countryCode in the pelias config file will be downloaded. npm run download

Import the downloaded data

npm start

Updating Metadata

The metadata is not shipped with the repo, to pull the latest metadata run

npm run download_metadata