geoprimsField-grade geospatial math

Map ground resolution and scale

Meters per pixel and map scale for a Web Mercator zoom level at a latitude, for 256 or 512 pixel tiles.

29.08m

Each pixel covers 29.08 m, a scale of about 1 to 109,900.

Scale at 96 dpi
Provenance
Computed by
indexing.tile.ground-resolution 1.0.0, core 0.1.0
Model
cos(lat) × 2π × 6,378,137 m / (tile size × 2^zoom); scale = resolution × 96 / 0.0254
Accuracy
Exact on the Web Mercator sphere
Notes
None
Cites
Microsoft, Bing Maps Tile System; OpenStreetMap Wiki, Slippy map tilenames

Something look off?

Your values

Showing an example. Change anything.
More options 1
Run many at once from a CSV

Loading…

How we got thisFormula, worked example, sources, and proof

Model: cos(lat) × 2π × 6,378,137 m / (tile size × 2^zoom); scale = resolution × 96 / 0.0254

Accuracy: Exact on the Web Mercator sphere

When to use this: Use this when choosing a zoom level: the meters each pixel covers and the map scale at a latitude, for 256 or 512 pixel tiles. It is what connects a required ground resolution, a print scale, or a source imagery resolution to the zoom a map should serve. It is also how to check whether a tileset can support a measurement: if a pixel covers two meters, nothing read from it is good to half a meter.

Limitations: Resolution in Web Mercator changes with the cosine of the latitude, so a zoom that gives half a meter per pixel at the equator gives much less at sixty degrees. Scale also depends on the display's pixel density, and the number here describes the projection rather than the detail actually present in any particular tileset. The map scale it reports assumes a nominal screen pixel size, so a print or a high-density display works out differently.

Worked example: 40.446° at zoom 12, 256 px. Source: add-spatial-indexing-and-raster scenario: about 29.08 m/px.

You enter

Latitude
40.446111 deg
Zoom
12

You get

Ground resolution (per pixel)
29.08 m
Scale at 96 dpi
109,900

Review: Not yet independently reviewed by a GIS professional.

Last verified: 2026-09-18, when a maintainer last confirmed this tool's sources at the issuer. See the sources ledger.

Status: version 1.0.0, core 0.1.0. See this tool in the verification report.

Changes

Checked against: 30 golden test vectors (download the test vectors, each with its source and tolerance). See how results are checked and every source.

Sources