reverse-geocode
Reverse geocode the given latitude / longitude
Decision gist · record as of 2026-08-14
Yes. The package is actively maintained, has low install friction, carries no known vulnerabilities, and solves a specific problem (offline bulk reverse geocoding) that web APIs handle poorly. The LGPL license is permissive for non-modifying use. Install it if you need to map coordinates to cities at scale without external dependencies.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction install with only numpy and scipy as runtime dependencies.
- The package is actively maintained with a recent commit on 2026-08-01 and has been stable since its first release in 2015.
License · maintenance · safety
lgpl (copyleft) — Licensed under LGPL (copyleft), which requires that derivative works and modifications remain under the same license; using this package in proprietary software is permissible if you do not modify it, but modifications must be shared under LGPL terms.
last release 2025-05-15 (456 days) · last repo commit 2026-08-01 · 128 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 366,666 downloads/mo, #7,203 on PyPI
Alternatives
Verify before relying
pip install reverse-geocode
import reverse_geocode
melbourne_coord = -37.81, 144.96
result = reverse_geocode.get(melbourne_coord)
print(result)- Whether the package supports batch processing of very large coordinate sets efficiently
- How frequently the underlying geonames data is updated in the package
- Accuracy limitations beyond the note that it is point-based rather than polygon-based
What it is and what it does
Reverse Geocode is a Python library that maps latitude/longitude coordinates to their nearest known geographic location (country, state, city) using offline lookup rather than a web API. It structures geonames data into a k-d tree for efficient nearest-neighbor searches, making it practical for bulk geocoding tasks where calling an external service would be impractical or undesirable.
The package depends on numpy and scipy for its spatial indexing and numerical operations. Results are returned as dictionaries containing country code, country name, state, city, population, and exact coordinates of the matched location. You can filter results by minimum population to prefer larger cities over nearby smaller ones, though the package notes that point-based lookup gives only a rough approximation compared to polygon-based geographic systems.
Use it for
- Batch reverse geocoding thousands of GPS coordinates from a dataset without hitting rate limits or API costs
- Finding the nearest city to a set of sensor readings or IoT device locations in an offline or air-gapped environment
- Filtering location results by population threshold to prioritize major cities over small towns in proximity searches
- Building location-aware analytics on historical coordinate data where real-time API access is not available
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package is actively maintained, has low install friction, carries no known vulnerabilities, and solves a specific problem (offline bulk reverse geocoding) that web APIs handle poorly. The LGPL license is permissive for non-modifying use. Install it if you need to map coordinates to cities at scale without external dependencies.
Install
reverse-geocode on PyPI
Before you install
Low friction install with only numpy and scipy as runtime dependencies. The package is actively maintained with a recent commit on 2026-08-01 and has been stable since its first release in 2015.
License in practice
Licensed under LGPL (copyleft), which requires that derivative works and modifications remain under the same license; using this package in proprietary software is permissible if you do not modify it, but modifications must be shared under LGPL terms.
Quickstart
pip install reverse-geocode
import reverse_geocode
melbourne_coord = -37.81, 144.96
result = reverse_geocode.get(melbourne_coord)
print(result)
Verify before relying
- Whether the package supports batch processing of very large coordinate sets efficiently
- How frequently the underlying geonames data is updated in the package
- Accuracy limitations beyond the note that it is point-based rather than polygon-based
Package facts
| License | lgpl copyleft |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesnumpyscipy |
| Maintenance | Actively maintained 456 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 366,666 / month, #7,203 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Environment :: Web EnvironmentIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3 |
Evidence: reverse_geocode-1.6.6-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “lat lon to city lookup”
- reverse-geocodeReverse Geocode converts latitude/longitude coordinates to the…
- reverse_geocoderReverse Geocoder converts latitude/longitude coordinates into the…
- timezonefinderLooks up the timezone for any WGS84 coordinate (latitude/longitude)…
Give your agent the search over MCP, or paste the wish link into any chat.
More Information Analysis packages
A drop-in replacement for Python's standard `re` module that adds advanced regex features like nested sets, fuzzy matching, lookaround in conditionals, and full Unicode case-folding while maintaining backward compatibility.
pyarrow provides Python bindings to Apache Arrow's C++ libraries for efficient columnar data processing, serialization, and interoperability with pandas, NumPy, and other Python ecosystem tools.
NetworkX provides data structures and algorithms for creating, analyzing, and manipulating graphs and networks, supporting everything from simple undirected graphs to complex directed and weighted networks.
Connects Python applications to Snowflake data warehouses using the DB API 2.0 specification, enabling SQL queries, data transfers, and warehouse operations.
ContourPy calculates contours of 2D quadrilateral grids using C++11 algorithms wrapped in Python, offering serial and multithreaded implementations without requiring Matplotlib as a dependency.
Snowpark Python provides APIs to query and process data directly in Snowflake without moving data to your local system, with support for both native Snowpark and pandas-compatible interfaces.
Install it if you use Snowflake and want to process data without moving it to your application layer.
See also pgeocode · reverse_geocoder · azure-maps-search · geopy · geotext · geonamescache · placekey · pyzipcode · opencage · geocoder