Choosing a Grid#

M3S ships 13 spatial grid systems. They differ along a few axes that actually matter in practice: cell shape, whether cells are equal-area, whether they nest exactly (a child grid tiles its parent perfectly), how far toward the poles they reach, and whether sizes are labelled in kilometres.

This guide gets you to the right one fast.

Prefer to answer a few questions?

Try the interactive Grid Picker β€” pick what you need and it ranks the best-fitting grids live.

Tip

New: EA-Quad. The EAQuadGrid is the only grid in M3S that is simultaneously square, equal-area, exactly nesting (aperture-4 quadtree), global to Β±90Β°, and labelled in kilometres (powers of two, ~1 m–1024 km). See EA-Quad grid. For the standards-track equal-area DGGS, see rHEALPix (rHEALPix grid).

30-Second Picker#

🟰 Equal-area analytics

EA-Quad β€” square, km-sized cells with identical ground area worldwide. Ideal for zonal statistics, rasterisation and density maps.

🧊 Equal-area DGGS standard

rHEALPix β€” OGC-specified equal-area aperture-9 quadtree; exact nesting, square polar cells, used by scientific data cubes.

β¬  Equal-area pentagons

A5 β€” pentagonal DGGS on a dodecahedron; true equal-area with exact hierarchical nesting, global from whole-world down to <30 mmΒ².

πŸ—„οΈ Database indexing

Geohash β€” fast prefix search; native support in Redis, MongoDB, Elasticsearch.

πŸ“Š Hex aggregation

H3 β€” uniform hexagons, always 6 neighbours. Ride-sharing, logistics, data science.

🌍 Planetary scale

S2 β€” spherical quad-tree from global down to centimetre, no polar singularities.

πŸ—ΊοΈ Web map tiles

Quadkey (Bing) or Slippy (OpenStreetMap) β€” the standard z/x/y Web Mercator tiles.

πŸŽ–οΈ Military / surveying

MGRS β€” UTM-based, 100 km down to 1 m. GARS for coarser area reference.

🌊 Marine & fisheries

C-squares β€” the international standard for oceanographic and marine biology data.

πŸ“ Address replacement

Plus Codes β€” short, open codes that work anywhere, no street names needed.

πŸ“» Amateur radio

Maidenhead β€” ham-radio locator standard, optimised for voice QSO logging.

Feature Matrix#

The five properties that separate the grids. EA-Quad is the only system that ticks every column.

Grid

Cell shape

Equal-area

Exact nesting

Global Β±90Β°

Km-labelled

Precision

EA-Quad

Square

βœ…

βœ…

βœ…

βœ…

0–20

rHEALPix

Square (projected)

βœ…

βœ…

βœ…

❌

0–15

A5

Pentagon

βœ…

βœ…

βœ…

❌

0–30

Geohash

Rectangle

❌

βœ…

βœ…

❌

1–12

H3

Hexagon

β‰ˆ

❌

βœ…

❌

0–15

S2

Quadrilateral

β‰ˆ

βœ…

βœ…

❌

0–30

MGRS

Square (UTM)

❌

❌

❌

βœ…

1–5

Quadkey

Square (Mercator)

❌

βœ…

❌

❌

1–23

Slippy

Square (Mercator)

❌

βœ…

❌

❌

0–20

C-squares

Rectangle

❌

βœ…

βœ…

❌

1–5

GARS

Rectangle

❌

❌

βœ…

❌

1–3

Maidenhead

Rectangle

❌

βœ…

βœ…

❌

1–4

Plus Codes

Rectangle

❌

βœ…

βœ…

❌

2–15

Note

β‰ˆ means approximately equal-area: H3 and S2 cells are near-uniform but not exactly equal-area. MGRS is metric and nests decimally within a UTM zone, but zone seams and polar gaps break global nesting and Β±90Β° coverage.

Sizes & Primary Use#

Grid System

Precision Range

Typical Sizes

Primary Use Case

EA-Quad

0–20

P0: 1024 km (~1.05M kmΒ²), P4: 64 km (4096 kmΒ²), P10: 1 km (1 kmΒ²), P20: ~1 m (~0.95 mΒ²)

Equal-area analytics, seamless global tiling, zonal/raster statistics

rHEALPix

0–15

P0: ~85M kmΒ² (6 cells), P5: ~1440 kmΒ², P10: ~0.024 kmΒ², P15: ~0.4 mΒ²

Equal-area DGGS standard, scientific data cubes, polar-friendly statistics

A5

0–30

P0: ~42.5M kmΒ² (12 cells), P8: ~520 kmΒ², P12: ~2 kmΒ², P20: ~31 mΒ²

Equal-area pentagonal DGGS, hierarchical analysis, planetary-scale indexing

Geohash

1–12

P5: ~5 km, P8: ~150 m, P10: ~1 m

Database indexing, proximity search, caching

H3

0–15

P5: ~250 kmΒ², P8: ~0.7 kmΒ², P12: ~3 mΒ²

Ride-sharing, analytics, uniform tessellation

S2

0–30

P10: ~500 kmΒ², P20: ~0.5 kmΒ², P25: ~2 mΒ²

Global apps, planetary-scale systems

MGRS

1–5

P1: 100 km, P3: 100 m, P5: 1 m

Military, surveying, high-precision reference

Quadkey

1–23

P10: ~1000 kmΒ², P15: ~30 kmΒ², P18: ~4 kmΒ²

Bing Maps, web mapping, tile services

Slippy

0–20

P5: ~2500 kmΒ², P10: ~78 kmΒ², P15: ~2.4 kmΒ²

OpenStreetMap, web maps, tile servers

C-squares

1–5

P1: 100Β° (~12,000 kmΒ²), P3: 1Β° (~123 kmΒ²)

Marine biology, oceanography, fisheries

GARS

1–3

P1: 30’ (~3000 kmΒ²), P3: 5’ (~28 kmΒ²)

Military, area reference

Maidenhead

1–4

P1: 20°×10Β°, P2: 2°×1Β°, P3: ~5 kmΒ²

Amateur radio, QSO logging

Plus Codes

2–15

P4: ~12 m, P6: ~60 cm

Address replacement, geocoding

Choose By…#

…Use case
Equal-area analysis

EA-Quad β€” square km cells with identical ground area everywhere; values are directly comparable across latitudes without reweighting.

rHEALPix β€” OGC-standardised equal-area DGGS; exact aperture-9 nesting and ordinary square cells at the poles.

Global analysis

S2 β€” hierarchical quad-tree, works at every scale from global to centimetre.

Analytics & data science

H3 β€” hexagonal cells, uniform 6 neighbours, optimised for aggregation.

Geohash β€” fast database indexing, proximity search, Z-order indexing.

Web mapping

Quadkey β€” Bing Maps standard, simple quad-tree addressing.

Slippy β€” OpenStreetMap tiles, universal z/x/y format.

Military & surveying

MGRS β€” NATO standard, UTM accuracy, 100 km to 1 m.

GARS β€” coarser area reference, 30’ to 5’ cells.

Marine & environmental

C-squares β€” international standard for marine biological data.

Address replacement

Plus Codes β€” open-source, works anywhere, short codes.

Amateur radio

Maidenhead β€” ham-radio standard for voice communication.

…Cell shape
Squares (equal-area)

EA-Quad β€” equal ground area worldwide, exact quadtree nesting.

rHEALPix β€” equal-area squares in the rHEALPix projection, exact aperture-9 nesting.

Squares (UTM)

MGRS β€” accurate distance/area within a zone.

Squares (Web Mercator)

Quadkey, Slippy β€” web mapping tiles.

Pentagons (equal-area)

A5 β€” true equal-area DGGS on a dodecahedron, exact hierarchical nesting.

Hexagons

H3 β€” always 6 neighbours, near-uniform coverage.

Spherical quadrilaterals

S2 β€” Google’s spherical geometry.

Rectangles

Geohash, C-squares, GARS, Maidenhead, Plus Codes.

…Precision needs
High precision (metres)

MGRS (1 m), S2 (high levels), H3 (res 12+), Plus Codes.

Medium precision (kilometres)

EA-Quad, rHEALPix, H3, Geohash, Quadkey, S2.

Coarse precision (100+ km)

EA-Quad (P0–P3), MGRS (P1), C-squares (P1), GARS.

See It in Action#

The examples have one page per grid, each with a static image and an interactive map:

Compare grids for the same location in code:

from m3s import GridBuilder, PrecisionSelector

for system in ['eaquad', 'h3', 's2', 'geohash']:
    selector = PrecisionSelector(system)
    rec = selector.for_use_case('neighborhood')

    result = (GridBuilder
        .for_system(system)
        .with_auto_precision(rec)
        .at_point(40.7128, -74.0060)
        .execute())

    cell = result.single
    print(f"{system:10s} P{rec.precision}: {cell.identifier} ({cell.area_km2:.2f} kmΒ²)")

Cheat Sheet#

  • Equal-area square cells in kilometres β†’ EA-Quad

  • Standards-track equal-area DGGS β†’ rHEALPix

  • Most analytics tasks β†’ H3

  • Database indexing β†’ Geohash

  • Web mapping β†’ Slippy or Quadkey

  • Military / surveying β†’ MGRS

  • Global science β†’ S2

  • Marine data β†’ C-squares

Next steps: the Quickstart for basic usage, the Examples for visual examples, and the API Reference for full reference.

Official references: