utm
Bidirectional UTM-WGS84 converter for python
What it is and what it does
utm is a lightweight Python library that bidirectionally converts between geographic coordinates (latitude/longitude in WGS84) and UTM grid references. It provides two main functions: from_latlon() converts a geographic point to its UTM easting, northing, zone number, and zone letter; to_latlon() performs the reverse conversion. The library handles both scalar float inputs and NumPy arrays, making it suitable for batch processing of coordinate sets.
The package is designed as a faster alternative to generic projection libraries like pyproj for UTM-specific conversions. It has no external runtime dependencies, installs as a pure Python wheel, and requires Python 3.10 or later. The library is actively maintained, with recent releases and a stable repository.
Use it for:
- Convert GPS coordinates from a mobile app or GPS device into UTM grid format for mapping applications
- Batch-convert thousands of geographic points to UTM using NumPy arrays for geospatial analysis
- Determine which UTM zone a location falls into for regional mapping or surveying workflows
- Transform between coordinate systems in GIS workflows without the overhead of a full projection library
- Validate or standardize coordinate data by round-tripping between lat/lon and UTM formats
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Converts between latitude/longitude coordinates and Universal Transverse Mercator (UTM) grid references in both directions, with support for NumPy arrays.
Yes. utm is a focused, dependency-free tool for a common geospatial task. Low install friction, permissive license, active maintenance, no known vulnerabilities, and strong performance for UTM conversions make it a straightforward choice for any project needing coordinate system conversion.
Install
utm on PyPI
pip
pip install utmuv
uv add utmpoetry
poetry add utmInstalling utm
Before you install
Low friction: pure Python wheel with no runtime dependencies. Actively maintained with recent release (18 days ago) and steady repository activity.
License in practice
MIT license (permissive) allows unrestricted use, modification, and distribution in commercial and private projects.
Quickstart
pip install utm
import utm
# Convert latitude/longitude to UTM
utm.from_latlon(51.2, 7.5)
# Returns: (395201.3103811303, 5673135.241182375, 32, 'U')
# Convert UTM back to latitude/longitude
utm.to_latlon(340000, 5710000, 32, 'U')
# Returns: (51.51852098408468, 6.693872395145327)
Requires Python 3.10 or later.
Verify before relying
- Whether NumPy is an optional dependency or required for array support
- Accuracy specifications or error bounds for coordinate conversions
- Support for coordinate systems beyond WGS84
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 18 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,092,305/month — #4,376 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: utm-0.9.0-py3-none-any.whl
Keywords: utm, wgs84, coordinate, converter
Tags
More GIS packages
Shapely provides Python tools for creating,…
permissive · top 1,000 on PyPI
pyprojpyproj provides a Python interface to PROJ,…
permissive · top 1,000 on PyPI
geopandasGeoPandas extends pandas DataFrames to handle…
permissive · top 1,000 on PyPI
geopygeopy is a Python client for geocoding and…
permissive · top 5,000 on PyPI
pyogrioPyogrio provides fast, bulk-oriented read and…
permissive · top 5,000 on PyPI
h3h3 provides Python bindings to Uber's H3…
permissive · top 5,000 on PyPI
convertbngConverts decimal WGS84 longitude/latitude…
unclear · top 15,000 on PyPI
mgrsConverts between MGRS (Military Grid Reference…
permissive · top 15,000 on PyPI
py-geohex3Converts between geographic coordinates…
permissive · top 15,000 on PyPI
geohash2Encodes latitude/longitude coordinates to…
agpl · top 5,000 on PyPI
pymap3dConverts between geographic and 3-D coordinate…
permissive · top 15,000 on PyPI
lat-lon-parserParses latitude-longitude coordinate strings in…
permissive · top 15,000 on PyPI
pyGeoTileConverts between geographic coordinate systems…
permissive · top 15,000 on PyPI
mapbox-vector-tileEncodes and decodes Mapbox Vector Tiles (MVT)…
permissive · top 15,000 on PyPI
reverse-geocodeReverse Geocode converts latitude/longitude…
copyleft · top 15,000 on PyPI
reverse_geocoderReverse Geocoder converts latitude/longitude…
copyleft · top 15,000 on PyPI