Polygon area and perimeter on the ellipsoid
The area and perimeter of a polygon with geodesic edges on WGS 84 (or any ellipsoid), with holes, across the antimeridian or around a pole, and its ring orientation.
A published result changed on 2026-09-22: The planar-area vector now names the warning it expects by its code rather than by its place in the list, using the meta.warnings.*.code form the runner already supports. Nothing computed changed. v029 had pinned index 1 and broke when promotion removed EXPERIMENTAL_TOOL from the list; v030 pinned index 0, which would have broken again the next time a warning sorted above this one. v031 cannot be shifted by either. Changelog
A published result changed on 2026-09-22: Promotion to stable removed the EXPERIMENTAL_TOOL warning from the envelope, and the warnings are ordered by severity, so PLANAR_ON_GEOGRAPHIC moved from index 1 to index 0. The area, the perimeter, and every other value are unchanged; what moved is where the warning sits in the list. v029 is superseded by v030, which pins the same warning at its new index. Changelog
The area is 269,154.5499 km², with a perimeter of 2,099.854 km.
- Perimeter
- Outline orientation
- Pole enclosed
- Holes
- Outline area
Provenance
- Computed by
- geometry.area.polygon 1.0.0, core 0.1.0
- Model
- Karney (2013) geodesic polygon area on WGS 84
- Accuracy
- Geodesic and rhumb edges match GeographicLib Planimeter (with -R for rhumbs) within 1e-8 relative. Planar mode is a rough check that grows wrong with size
- Notes
- None
- Cites
- Karney, C. F. F., Journal of Geodesy, Algorithms for geodesics (area of geodesic polygons, section 6); Karney, C. F. F., Studia Geophysica et Geodaetica, The area of rhumb polygons; Karney, C. F. F., GeographicLib, GeographicLib Planimeter: area of geodesic polygons
Something look off?
How we got thisFormula, worked example, sources, and proof
Model: Karney (2013) geodesic polygon area on WGS 84; rhumb edges by Karney (2024); planar by the shoelace formula on a local flat map
Accuracy: Geodesic and rhumb edges match GeographicLib Planimeter (with -R for rhumbs) within 1e-8 relative. Planar mode is a rough check that grows wrong with size
When to use this: Use this for the area and perimeter of ground: a parcel, a burn scar, a survey boundary, a service area, or any ring of latitudes and longitudes, measured on the ellipsoid rather than on a flat picture of it. It also says which way the ring is wound and whether it takes in a pole, both of which change what the number means.
Limitations: The edges are geodesics, which is what a boundary on the ground is, and not straight lines on a projection or arcs along a parallel: a ring whose corners all sit on one parallel still encloses real area, because every edge bows towards the pole and the longer ones bow further. A ring that crosses or touches itself has no single area and is refused rather than answered, with make-valid named as the way out. The area comes back positive whichever way the ring is wound, with the winding reported beside it, so a hole has to be given as a hole rather than as a ring walked backwards.
Worked example: A Colorado-shaped rectangle. Source: add-navigation-and-geometry area scenario: 269,154.55 km², perimeter 2,099.854 km, clockwise. It is golden test vector v001, and every build checks the tool still gives its answer within its tolerance.
You enter
- Polygon
- 37, -109.05 41, -109.05 41, -102.05 37, -102.05
You get
- Area
- 269,154.5499 km²
- Perimeter
- 2,099.854 km
- Outline orientation
- clockwise
- Pole enclosed
- none
- Holes
- 0
- Outline area
- 269,154.5499 km²
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
- 2026-09-22, result change: The planar-area vector now names the warning it expects by its code rather than by its place in the list, using the meta.warnings.*.code form the runner already supports. Nothing computed changed. v029 had pinned index 1 and broke when promotion removed EXPERIMENTAL_TOOL from the list; v030 pinned index 0, which would have broken again the next time a warning sorted above this one. v031 cannot be shifted by either. Changelog
- 2026-09-22, result change: Promotion to stable removed the EXPERIMENTAL_TOOL warning from the envelope, and the warnings are ordered by severity, so PLANAR_ON_GEOGRAPHIC moved from index 1 to index 0. The area, the perimeter, and every other value are unchanged; what moved is where the warning sits in the list. v029 is superseded by v030, which pins the same warning at its new index. Changelog
- 2026-09-19, added: New navigation tools: rhumb lines, cross-track and along-track distance, fly-by turn anticipation, time-speed-distance with arrival times, closest point of approach, and route legs with true and magnetic courses; and the first geometry tool, polygon area on the ellipsoid. Changelog
Checked against: 29 golden test vectors (download the test vectors, each with its source and tolerance). See how results are checked and every source.
Sources
- Algorithms for geodesics (area of geodesic polygons, section 6), Karney, C. F. F., Journal of Geodesy, Vol. 87, No. 1. pp. 43-55, section 6.
- The area of rhumb polygons, Karney, C. F. F., Studia Geophysica et Geodaetica, Vol. 68, No. 3-4. pp. 99-120 (area between a rhumb line and the equator).
- GeographicLib Planimeter: area of geodesic polygons, Karney, C. F. F., GeographicLib, GeographicLib 2.x. Planimeter utility. Read free.