Map Projections for the Web
Web Mercator (EPSG:3857) dominates web mapping because of its alignment with the Z/X/Y tile pyramid, but it isn't always the right choice. For European thematic maps, ETRS89-LAEA-Europe (EPSG:3035) is the EU-recommended equal-area projection. For polar regions, EPSG:3995 (Arctic) and EPSG:3031 (Antarctic) polar stereographic projections are standard. For North American thematic maps, Albers Equal Area (USGS national maps) is common. Library support varies: Mapbox GL JS / MapLibre GL JS historically Mercator-only (globe view in v5+); OpenLayers has best-in-class projection support; Leaflet + Proj4Leaflet supports custom projections; D3.js programmatic projections. The globe-view alternative trades flat-map convenience for projection-free 3D rendering.
By Steve K.. Published . Last updated .
This article closes the recommended trio of Web Mapping & Tile Systems supports with a practical projection-choice guide that bridges the Projections sub-hub and Web Mapping sub-hub. Web Mercator dominates but isn't universal; this article covers when and how to use alternatives.
Web Mercator: when it's right
Web Mercator (EPSG:3857) is the right choice for:
- General-purpose interactive web maps showing cities, regions, or moderate-scale areas.
- Most consumer applications where users browse locations and navigate.
- Non-polar regions where distortion is acceptable.
- Wayfinding and navigation because Mercator preserves angles locally — straight lines on the map correspond to constant compass bearings.
Web Mercator's operational advantages — square tile pyramid, near-universal library support, familiarity from Google Maps and OSM — make it the path of least resistance for most projects.
The /learn/web-mercator-projection article covers the math and history in depth.
Web Mercator: when it's wrong
Several cases where you should choose a different projection:
Polar work
Web Mercator clips at ±85.0511° — the latitude where the projection produces an exactly square tile pyramid. Beyond that, the projection is undefined (mathematically, it goes to infinity at the geographic poles).
Approaching the cutoff, distortion is extreme:
- At 80°N, area is exaggerated ~33×.
- At 85°N, the visual distortion is severe.
- Greenland appears similar in size to Africa (notorious example).
For Arctic and Antarctic work — sea-ice monitoring, polar oceanography, polar aviation, ice sheet observation — polar stereographic projections are standard:
- EPSG:3995 (Arctic): polar stereographic centered at 90°N, used by NSIDC and many Arctic research products.
- EPSG:3031 (Antarctic): polar stereographic centered at 90°S, used for Antarctic research, ice sheet maps.
Area comparison
Mercator's most-cited weakness: area distortion at high latitudes. Greenland at high northern latitudes appears as large as Africa, despite having ~14× less land area. For maps where area comparison matters — population density, election results, environmental quantities — use an equal-area projection:
- Albers Equal Area Conic: classic choice for continental-scale maps; common for US thematic mapping.
- Lambert Azimuthal Equal Area: good for near-circular regions; the basis of ETRS89-LAEA-Europe.
- Mollweide: classic global equal-area projection; used in world thematic maps.
- Eckert IV: alternative global equal-area projection.
- Equal Earth (Šavrič et al. 2018): a recent open-source equal-area projection.
European thematic mapping
The EU Inspire Directive mandates specific European-coordinate-reference systems for cross-border environmental and statistical mapping. The recommended European-scale projection is:
ETRS89-LAEA-Europe (EPSG:3035): Lambert Azimuthal Equal Area centered at 52°N 10°E. Used for:
- European Environment Agency (EEA) thematic maps.
- European Commission statistical mapping at NUTS regional levels.
- Inspire-compliant spatial data publication.
- Climate, ecological, agricultural mapping across Europe.
For larger-scale European national mapping, the ETRS89-based UTM zones (EPSG:25831, 25832, etc.) or ETRS-LCC (EPSG:3034) are used.
North American thematic mapping
For US national thematic maps, Albers Equal Area Conic (specifically the USGS Albers North America projection at standard parallels 29.5°N and 45.5°N, central meridian 96°W) is the convention. Used by:
- USGS national mapping.
- US Census Bureau thematic maps.
- US Geological Survey geological maps.
- NOAA climate and oceanographic maps.
For Canadian national mapping, Statistics Canada Lambert is used (NAD83 with specific Lambert Conformal Conic parameters).
Specific regional needs
| Country / region | Common projection | EPSG | | ---------------- | ----------------- | ---- | | United Kingdom | British National Grid (Transverse Mercator) | 27700 | | France | Lambert-93 (Lambert Conformal Conic) | 2154 | | Germany | ETRS89 / UTM zone 32N | 25832 | | Netherlands | Amersfoort / RD New | 28992 | | Russia | Pulkovo 1942 zones | varies | | China | Gauss-Krüger (CGCS2000) | varies | | Japan | JGD2011 / Zone | varies | | Australia | GDA2020 / MGA zones | 7846+ |
For national-scale work, the national projection typically performs better than Web Mercator.
Library support
The web-mapping libraries handle projections very differently.
OpenLayers
OpenLayers is the gold standard for projection support in web maps:
- Any EPSG code supported via the built-in proj4 library.
- On-the-fly reprojection of raster and vector sources.
- Multi-projection layers in the same map (with reprojection at render time).
- WMTS support for non-Mercator tile services.
- Mature API for projection definitions.
OpenLayers is the practical choice when non- Mercator projections matter. The trade-off: larger library size, slightly more complex API than Leaflet.
Mapbox GL JS / MapLibre GL JS
Historically Mercator-only:
- Mapbox GL JS 1.x and 2.x (until v2 globe view): Web Mercator only.
- MapLibre GL JS 1.x through 4.x: Web Mercator only.
- Mapbox GL JS 2.0+ (December 2020): added globe view option (which bypasses 2D projection entirely).
- MapLibre GL JS 5 (2024): added globe view matching Mapbox v2.
For projects requiring traditional (non-globe) non-Mercator projections, MapLibre / Mapbox GL JS isn't the right library.
Leaflet
Mercator-only by default. Plugin Proj4Leaflet adds support for arbitrary projections via the proj4js library.
Proj4Leaflet limitations:
- Requires per-layer projection configuration.
- Reprojection isn't automatic — sources must be in the target projection.
- More complex than Mercator-only Leaflet.
- Works for static layers; interactive vector features may render imperfectly.
For polar applications, Proj4Leaflet is commonly used; for European LAEA work, OpenLayers is often preferred.
D3.js
D3.js geo has extensive built-in projection support: ~50 projections (Mercator, Albers, Mollweide, Lambert Azimuthal Equal Area, Robinson, Eckert, Goode Homolosine, and many more) plus a programmatic API for custom projections.
D3 produces SVG or Canvas output rather than interactive tile-based maps. Best suited for:
- Static thematic maps.
- Data visualizations with map components.
- News graphics (NYT, FT, Washington Post use D3).
- Custom interactive projections (rotating globes, transitioning between projections).
D3 isn't a tile-based map library; it's a data-visualization library that happens to render geographic data well.
Cesium
3D globe library: renders Earth as a textured 3D ellipsoid (WGS 84). The view is orthographic or perspective rather than a flat projection.
Used for:
- Large-scale 3D applications (aerospace, geology, global narratives).
- Globe-style interactive maps without flat- projection distortion.
- Time-varying geospatial data (satellite tracks, weather animations).
Cesium's tile system uses quantized mesh tiles for 3D terrain, plus standard imagery tiles for texture. Comparable to MapLibre's globe view but deeper 3D feature set.
The tile-pyramid alignment issue
Why does Web Mercator dominate web tile systems? The alignment with the Z/X/Y tile pyramid:
- At zoom 0, one tile covers the whole world as a perfect square — because Web Mercator clips at ±85.0511° which gives a square map.
- Each higher zoom subdivides each tile into 4 equal sub-tiles (2×2 grid).
- Tile coordinates map directly to lat/lon via the Mercator formula.
This neat power-of-two subdivision doesn't apply to other projections. For polar stereographic, LAEA, Albers, or others:
- The tile pyramid must be redefined per projection.
- Tile boundaries don't cleanly align with meridians or parallels.
- Servers and clients need projection-specific configurations.
WMTS (Web Map Tile Service) supports non-Mercator tile schemes via TileMatrixSet definitions, but the operational complexity is much higher than the simple slippy-map convention.
Practical projection decisions
For most projects, the choice flowchart:
- Global interactive map for general use? → Web Mercator (default).
- Polar coverage needed? → Polar stereographic (EPSG:3995 or 3031).
- European thematic map? → ETRS89-LAEA-Europe (EPSG:3035) for thematic; Web Mercator for general use.
- National-scale map within one country? → National projection (BNG for UK, Lambert-93 for France, etc.) if precision matters; Web Mercator if not.
- Data visualization or static map? → D3.js with a chosen projection.
- 3D globe view? → Cesium or MapLibre 5+ globe view.
For interactive web mapping that requires non-Mercator projection, OpenLayers is the practical library. For mostly-Mercator projects with occasional non- Mercator overlays, Leaflet + Proj4Leaflet can work. For Mercator-only with optional globe, MapLibre GL JS is the right choice.
Real-world examples
NASA Worldview
NASA's Worldview browser (worldview.earthdata.nasa.gov) for satellite imagery offers three projections:
- Geographic (EPSG:4326): equirectangular.
- Web Mercator (EPSG:3857): for mid-latitude.
- Arctic Polar Stereographic (EPSG:3413).
- Antarctic Polar Stereographic (EPSG:3031).
Users select the appropriate projection for the region of interest. The architecture uses WMTS with projection-specific tile pyramids.
NSIDC
The National Snow and Ice Data Center (nsidc.org) serves polar imagery and data primarily in polar stereographic projections. The Web Mercator option exists for cross-reference but isn't the default for polar work.
European Environment Agency
EEA thematic maps use ETRS89-LAEA-Europe (EPSG:3035) by default. The EEA portal provides maps in both EPSG:3035 (default) and Web Mercator (for cross-reference).
UK Ordnance Survey
UK national maps use British National Grid (EPSG:27700) by default. The OS portal provides Web Mercator versions for general web use.
Coordinately
Coordinately uses Web Mercator via MapTiler tiles and MapLibre GL JS — appropriate because the site shows global coordinate features rather than specialized polar or thematic content.
The globe-view alternative
A relatively new option: render the Earth as a 3D globe rather than projecting to a flat plane.
Mapbox v2 globe (2020)
Mapbox v2.0's flagship feature was globe rendering: at low zoom, the map renders as a rotating 3D sphere; transitioning to flat Mercator as the user zooms in. The transition is smooth (implemented by progressively flattening the sphere).
MapLibre 5 globe (2024)
MapLibre GL JS 5 added matching globe rendering, restoring feature parity with Mapbox v2.
Cesium
The most established 3D-globe library, dating to the early 2010s. Designed for 3D geospatial visualization; supports terrain, satellite imagery, time-varying data.
Trade-offs
Globe view advantages:
- No flat-map projection distortion.
- Intuitive global perspective.
- Avoids the Greenland-vs-Africa controversy.
- Great for global narratives (climate, sea-level, weather).
Globe view disadvantages:
- Requires GPU rendering (excludes very low-end devices).
- Harder to compare arbitrary regions side-by- side.
- Underlying tile pyramid still uses some projection (Mercator typically) — the globe re-projects on the fly, adding compute cost.
- Not all use cases benefit from 3D (basic navigation, raster overlay still need 2D).
The flat-map paradigm isn't going away; globe view is a complementary option for specific use cases.
Reprojection at the server
A pragmatic approach for non-Mercator needs: render tiles in the desired projection on the server, then serve them as if they were standard slippy-map tiles (but with a documented non-standard projection).
Server tooling that supports this:
- GeoServer: full OGC standards including WMTS-style non-Mercator tiles.
- Mapnik: can render in any PROJ-supported projection.
- GDAL/OGR: command-line reprojection of source data before tile generation.
The client must know the projection — it can't just treat the tiles as Web Mercator. WMTS metadata or a configured TileMatrixSet definition tells the client what to do.
Common misconceptions
“Web Mercator is the only projection used in web maps.” It's the dominant choice but not universal. NASA Worldview, NSIDC, EEA, USGS thematic maps, and many specialized services use other projections. Library support is non-trivial but mature.
“Choosing a different projection is too hard.” For OpenLayers users, switching projections is straightforward — define the projection, configure the data source. For Mapbox/MapLibre users, it's harder (mostly Mercator-only with globe-view alternative).
“Tiles must be in Web Mercator.” No — WMTS supports any projection via TileMatrixSet definitions. But slippy-map convention (Z/X/Y addressing) assumes Web Mercator; other projections need their own pyramid definitions.
“Equal-area projections are always better.” For thematic mapping, yes. For navigation and wayfinding, conformal projections (Mercator, LCC) are better because they preserve local angles. The choice depends on use.
“Globe view replaces flat projections.” Complementary, not replacement. Some tasks benefit from 3D rendering; others (side-by-side comparison, raster overlay, static cartography) still need flat maps.
“Polar regions can't be mapped in Mercator.” They can't at all above ~85° latitude — Mercator becomes undefined. Polar stereographic is the standard.
“Reprojecting in the browser is too slow.” For raster tiles, OpenLayers reprojects on-the-fly with acceptable performance for moderate use. Heavy production use should pre-reproject server-side.
“ETRS89-LAEA-Europe is required for all European maps.” Required only for Inspire-compliant publication of cross-border spatial data. For consumer-facing maps in Europe, Web Mercator is fine.
“Web Mercator is conformal everywhere.” Conformal at any specific point, but the distortion grows with latitude — at 60° N, the projection scale north-south differs from east-west by a factor of 2; at 80° N, by a factor of ~5.7. The local angle preservation is exact at any single point.
“Custom projections need custom tile formats.” Not necessarily — vector tiles in the standard MVT format can be reprojected at render time. Raster tiles in a custom projection need projection-specific pyramid definitions, but the file format itself (PNG, WebP) is unchanged.
“The number of projections matters for performance.” Most maps use one projection at a time. OpenLayers supports multiple projections simultaneously with on-the-fly reprojection, but the cost is incremental, not catastrophic.
“D3 is better than OpenLayers for projections.” D3 has more built-in projections and richer programmatic API. OpenLayers has interactive tile-based map support that D3 lacks. They serve different use cases — D3 for static/visualization, OpenLayers for interactive maps.
Related
- Web Mercator (EPSG:3857)— The default web projection in depth
- What Is a Map Projection?— The pillar for projection theory
- Projected Coordinate Systems— The broader projected-CRS landscape
- Slippy Map Tiles Explained— The tile pyramid most projections build on
- Methodology— How content is sourced and verified
Frequently asked questions
Why is Web Mercator dominant?
Web Mercator (EPSG:3857) dominates web mapping because of its convenient alignment with the Z/X/Y tile pyramid. Each zoom level neatly subdivides into a power-of-two grid of square tiles, making tile addressing simple and rendering efficient. Google Maps adopted it in 2005; the rest of the web-mapping world followed. The projection is also conformal (locally angle-preserving), making it familiar and intuitive for navigation use. The drawbacks — extreme high-latitude area distortion and pole exclusion — are tolerated because most users care most about mid-latitude regions where the distortion is acceptable. For general-purpose interactive web maps, Web Mercator remains the default and best choice.
When should I use a different projection?
Several cases. (1) Polar regions: Web Mercator clips at ±85.0511° and produces extreme distortion approaching that limit. Polar work needs EPSG:3995 (Arctic) or EPSG:3031 (Antarctic) polar stereographic. (2) European thematic maps: ETRS89-LAEA-Europe (EPSG:3035) is the EU-recommended equal-area projection; required for European environmental and statistical mapping. (3) Area comparison maps: any equal-area projection (Albers, Mollweide, Eckert IV, equal-area cylindrical) avoids Mercator's high-latitude inflation that makes Greenland look bigger than Africa. (4) National maps: USGS Albers Equal Area for the US, ETRS89-LAEA for Europe, GDA2020-LAEA for Australia, and specific national projections (BNG for UK, Lambert-93 for France) often perform better at national scale. (5) Aviation/marine charts: specific projections optimized for navigation use (Lambert Conformal Conic for aviation).
Which web map libraries support non-Mercator projections?
Library support varies. OpenLayers has the best support — handles any EPSG code, on-the-fly reprojection, multi-projection layers in the same map. Mapbox GL JS and MapLibre GL JS were historically Mercator-only; recent versions (Mapbox v2, MapLibre 5) added a globe-view 3D rendering that avoids flat-map projection entirely. Leaflet supports Mercator natively; non-Mercator projections require the Proj4Leaflet plugin. D3.js has extensive built-in projection support (~50 built-in projections) — but produces SVG/canvas output rather than interactive map tiles. Cesium provides 3D globe rendering. For most non-Mercator needs, OpenLayers is the practical choice if interactive tile-based maps are required.
What is ETRS89-LAEA-Europe?
ETRS89-LAEA-Europe (EPSG:3035) is the recommended European-scale projection per Inspire Directive and EU mapping standards. It's a Lambert Azimuthal Equal Area projection centered on 52°N 10°E (approximately Frankfurt/Berlin), covering the European continent with equal-area properties. Used for: European Environment Agency (EEA) maps, European statistical mapping at the regional (NUTS) level, Inspire-compliant data exchange, climate and ecological mapping across Europe. The projection preserves area (essential for environmental and statistical maps showing densities or quantities) at the cost of distortion in distance and direction further from the center. EPSG:3035 is one of three Inspire-recommended ETRS89-based projections (LAEA for thematic, ETRS-LCC for conformal mapping, ETRS-TM-zones for large-scale).
Should I use globe view instead of a projection?
Sometimes. Globe view renders Earth as a 3D sphere/ellipsoid, avoiding the fundamental flat-map projection problem entirely. Advantages: no projection distortion; intuitive 3D presentation; great for global narratives; no edge artifacts. Disadvantages: requires GPU rendering (excludes some devices); harder to compare arbitrary regions side-by-side; not all data viewing tasks benefit from 3D (raster overlay, side-by-side comparison still need 2D); the underlying tile pyramid still has to use some projection (Mercator typically) and the globe re-projects on the fly, adding compute cost. Mapbox v2 (2020) and MapLibre 5 (2024) both support globe view. Cesium is the most established 3D globe library. For projects where the global perspective is the point, globe view is increasingly the right choice; for flat-map-style applications, traditional projection remains better.
Sources
- OpenLayers — OpenLayers — projection support documentation · https://openlayers.org/doc/tutorials/raster-reprojection.html · Accessed .
- NASA Worldview — NASA Worldview — polar projection options for satellite imagery · https://worldview.earthdata.nasa.gov/ · Accessed .
- EPSG — EPSG Registry — coordinate reference system codes (3035, 3995, 3031, etc.) · https://epsg.io/ · Accessed .
- D3.js — D3 geo — programmatic map projections documentation · https://d3js.org/d3-geo · Accessed .
Cite this article
APA format:
Steve K. (2026). Map Projections for the Web. Coordinately. https://coordinately.org/learn/map-projections-for-the-web
BibTeX:
@misc{coordinately_mapprojectionsfor_2026,
author = {K., Steve},
title = {Map Projections for the Web},
year = {2026},
publisher = {Coordinately},
url = {https://coordinately.org/learn/map-projections-for-the-web},
note = {Accessed: 2026-06-05}
}