skillfed

geocoder

Geocoder is a simple and consistent geocoding library.

geocoder v1.38.1 3.2M downloads/30d#2,712 on PyPI1,655
Permissive license The MIT License DORMANT released

What it is and what it does

Geocoder is a Python library that abstracts away the complexity of calling multiple online geocoding services. Instead of writing separate code for Google, Bing, OpenStreetMap, and dozens of other providers—each with its own JSON schema and authentication—you call a single consistent API. It handles forward geocoding (address to lat/lng), reverse geocoding (coordinates to address), batch queries, and IP-based geolocation across providers optimized for different regions.

The library has no runtime dependencies and installs cleanly as a pure Python wheel. It exposes results through a unified object model with properties like `latlng`, `address`, `city`, `country`, and geospatial formats (GeoJSON, WKT). It also includes a command-line interface for one-off geocoding tasks. However, most providers require API keys, and the package has been dormant since 2018—provider APIs may have changed, and you should verify that your target providers still work before relying on it in production.

Use it for:

  • Convert a user-supplied address to latitude and longitude for mapping or location-based services without writing provider-specific code.
  • Reverse-geocode GPS coordinates to retrieve the nearest city, state, country, or street address.
  • Batch-geocode a list of addresses using a single provider's batch API to reduce API calls.
  • Geolocate an IP address to approximate geographic location for analytics or content delivery.
  • Extract structured address components (house number, street, postal code) from a full address string.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Geocoder provides a unified Python interface to multiple online geocoding services, converting addresses to coordinates and vice versa without requiring you to handle each provider's different API schemas.

Yes, if you need a simple unified geocoding interface and accept the maintenance risk. The package is stable and has no security vulnerabilities, but it is dormant—last release was 2018. Before using in production, verify that your chosen providers' APIs still match the library's expectations, as provider changes after 2018 may break functionality. For new projects requiring active maintenance and up-to-date provider support, consider alternatives.

Install

geocoder on PyPI

pip

pip install geocoder

uv

uv add geocoder

poetry

poetry add geocoder

Installing geocoder

Before you install

Installation is straightforward with no runtime dependencies. However, the package is dormant—last release was in 2018 and last commit in 2024, with no active maintenance. Use only if you accept that bug fixes and provider updates will not arrive.

License in practice

Licensed under the MIT License (permissive), allowing free use, modification, and distribution with minimal restrictions.

Quickstart

pip install geocoder

import geocoder
g = geocoder.google('Mountain View, CA')
print(g.latlng)
# (37.3860517, -122.0838511)

Most providers require an API key (Google, Bing, MapQuest, etc.). Some have rate limits or usage policies. Verify your chosen provider's current authentication requirements before deploying.

Verify before relying

  • Whether all listed providers remain functional or have changed their APIs since the last release
  • Current API key requirements and rate limits for each provider
  • Whether the package works reliably with modern Python versions beyond those listed in classifiers

Package facts

License The MIT License (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance dormant — 3,054 days since the last release
Last repo commit
First released
Downloads 3,173,708/month — #2,712 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: geocoder-1.38.1-py2.py3-none-any.whl

Keywords: geocoder, arcgis, tomtom, opencage, google, bing, here

Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Topic :: InternetTopic :: Internet :: WWW/HTTPTopic :: Scientific/Engineering :: GISTopic :: Software Development :: Libraries :: Python Modules

Tags

geocoding library pythonaddress to coordinatesreverse geocodingmultiple geocoding providerslatitude longitude lookupip address geolocationbatch geocoding
geocodinggeolocationmapping

More Python Modules packages