· 9 min read

The UN Just Endorsed Equal Earth — Here's What Mercator Was Actually Doing to Africa

On 4 September 2026 the UN General Assembly encouraged the world to move from Mercator to the Equal Earth projection. Using Natural Earth boundaries and a spherical Earth model, Africa is approximately 13.9× Greenland. In our Mercator rendering it occupies approximately 0.95× Greenland’s area.

What happened

According to Associated Press, on Friday 4 September 2026 the United Nations General Assembly passed a resolution encouraging governments and institutions to adopt the Equal Earth projection in place of Mercator. It was sponsored by Togo and backed by the African Union; 164 member states voted in favour, the United States voted against, and six — Serbia, Estonia, Georgia, Lithuania, Moldova and Ukraine — abstained.

The resolution bans nothing. It encourages.

That distinction matters more than it sounds, because the interesting question is not political. It is: how wrong is the map you have been looking at, exactly? That is a measurable quantity, and nobody needs a vote to settle it.

So we measured it.

The measurement

We took the same country geometry our map renderer ships (world-50m, Natural Earth data at 1:50m), and the same projection library it uses (d3-geo). For each country we computed two things:

  • its modelled spherical area — the solid angle of its dataset geometry, multiplied by the Earth’s mean radius squared. This avoids projection distortion, but remains an estimate based on generalized boundaries and a spherical Earth model, not an exact surveyed area.
  • its projected area — the planar polygon area computed by geoPath().area(), with each projection fitted to one identical 1600×900 canvas.

The normalized area ratio is a country’s share of the summed projected areas of all country features divided by its share of their summed spherical areas. The denominator includes all features, including Antarctica; it excludes ocean area. These scores depend on the feature set and projection clipping, and are not Mercator’s local scale factors. Equal Earth yields approximately ×1.00, subject to numerical precision and clipping. Projected square pixels describe geometric area, not a count of raster pixels including strokes or antialiasing.

See it

Click between the two projections. It is the same world map either way — same coastlines, same frame — so everything that changes is the projection.

Interactive demo — open in editor pp:PinePaper

Watch Greenland. On Mercator it is drawn slightly larger than the whole of Africa; on Equal Earth Africa occupies nearly fourteen times Greenland’s area. Nothing has been scaled by hand: this is world-110m — the same Natural Earth geometry our map renderer ships — through d3-geo, with both projections fitted to one identical frame, and the ratio printed underneath is geoPath().area() measured on exactly the shapes you are looking at.

The demo uses coarser 1:110 million geometry; the tables below use 1:50 million geometry. Their coastlines and selected features differ, so the displayed ratios can differ slightly.

The widget is an ordinary PinePaper scene: the buttons are on_click_fire relations and the swap is on_event_set_visibility. Open it in the editor and it is yours to pull apart.

Africa against Greenland

modelled spherical area drawn on Mercator drawn on Equal Earth
Africa (56 dataset features) 29.99M km² 16,907 px² 64,544 px²
Greenland 2.15M km² 17,852 px² 4,638 px²
ratio 13.9× 0.95× 13.9×

Using these boundaries and a spherical Earth model, Africa’s area is approximately 13.9 times Greenland’s. In our Mercator rendering it occupies approximately 0.95 times Greenland’s projected area—about 5% less. Equal Earth preserves the approximately 13.9-to-1 relationship.

The Africa selection includes 56 Natural Earth features: 55 ISO-coded features, including Western Sahara, plus separately represented Somaliland. Somalia and Somaliland are combined geographically in the total; their separate dataset entries do not imply a position on recognition. This feature count is distinct from the African Union’s 55-member count. The complete selection is listed in the script below.

Every country, same test

country Mercator Equal Earth
Greenland ×3.91 ×1.00
Norway ×2.14 ×1.00
Canada ×1.23 ×1.00
Russia ×1.17 ×1.00
Sweden ×1.16 ×1.00
India ×0.28 ×1.00
Nigeria ×0.25 ×1.00
Brazil ×0.25 ×1.00
DR Congo ×0.24 ×1.00
Kenya ×0.24 ×1.00
Indonesia ×0.24 ×1.00

Latitude drives Mercator’s local area distortion. Under the normalization used here, the listed tropical countries occupy roughly a quarter of their proportional share of mapped land. India, Brazil and Indonesia are affected similarly to Nigeria and Kenya, though their scores differ. Greenland’s high latitude makes it a particularly striking example.

Equal Earth rounds to ×1.00 for all eleven. The unrounded results range from approximately 0.99989 to 1.00004: the mathematical projection preserves relative area, while D3’s sampled polygon rendering introduces small numerical differences.

Why Mercator does this

Mercator is conformal: it preserves angles. A course of constant true bearing—a rhumb line—plots as a straight line. First presented in 1569, it remains widely used for nautical charts for this reason. NOAA explains this navigation property.

For spherical Mercator with unit scale at the equator, preserving angles costs you area. To keep the shape of a small region correct as you move away from the equator, the map must stretch east–west by a factor of sec(φ) — 1/cos of the latitude — and then stretch north–south by the same factor to keep angles intact. Area therefore scales as sec²(φ). At 60° that is 4×. At 75° it is about 15×. The scale diverges at the poles, which cannot be represented at finite coordinates on a standard Mercator map.

There is no fix for this that keeps Mercator Mercator. Conformality and equal area are mathematically incompatible on a sphere: no projection can have both. Every world map projection involves a choice about which properties to preserve.

For bearing-based navigation, Mercator’s angle and rhumb-line properties are useful. For world maps intended to compare regional areas—in classrooms, newsrooms or data visualisations—an equal-area projection is a better fit.

What Equal Earth is

Equal Earth was introduced by Bojan Šavrič, Tom Patterson and Bernhard Jenny in a paper published online on 7 August 2018, later appearing in the journal’s 2019 volume. It is equal-area by construction. Its designers sought a visually pleasing alternative to Gall–Peters, which also preserves area but elongates tropical shapes. That aesthetic preference is a design judgment, not an objective ranking of all earlier equal-area projections. The designers describe their aims here.

Equal Earth keeps continents recognisably shaped, has gently curved meridians and a horizontal equator, and does not fold the poles into a point. It is close in spirit to the Robinson projection — which is not equal-area — but with the area property made exact.

Equal Earth distorts shape, particularly near the edges, and is unsuitable for conventional bearing-based navigation. No flat world map preserves every geometric property. Equal Earth is useful when the purpose is to compare relative areas.

Using it

PinePaper supports equalEarth in its map renderer. Natural Earth remains a separate compromise projection; it does not preserve area.

// Equal Earth world map
await PinePaper.mapSystem.loadMap('world', {
  projection: 'equalEarth',
  styles: { fill: '#1e3a5f', stroke: '#0f172a', strokeWidth: 0.5 }
});

// Illustrative values only. Equal Earth preserves relative region areas;
// meaningful choropleths also require appropriate data and classification.
PinePaper.mapSystem.applyDataColors({
  Nigeria: 223, Ethiopia: 126, Egypt: 114, 'Dem. Rep. Congo': 102
}, { colorScale: ['#fff7ec', '#7f2704'] });

In the editor it is in the projection dropdown of the Map panel, second in the list, marked (equal-area). To run the snippet above, open the Code Console (the </> button in the header) and paste it — the map appears on the canvas as ordinary, editable items.

Mercator is also available. Its projection properties suit bearing-based charts, but choosing it alone does not make a map suitable for operational navigation.

Reproduce this

Run the complete script below with Node.js 18 or later. In a working directory, install the pinned dependencies:

npm install --save-exact d3-geo@3.1.1 topojson-client@3.1.0

Save the following as measure-equal-earth.mjs and run node measure-equal-earth.mjs. It downloads world-atlas@2.0.2/countries-50m.json; alternatively, pass a local copy as the first argument. D3’s default adaptive-sampling precision and Mercator clipping are retained. Both projections are fitted to a 1600×900 frame.

import { readFileSync } from 'node:fs';
import * as topojson from 'topojson-client';
import * as d3 from 'd3-geo';

const url = 'https://cdn.jsdelivr.net/npm/world-atlas@2.0.2/countries-50m.json';
let topo;
if (process.argv[2]) {
  topo = JSON.parse(readFileSync(process.argv[2], 'utf8'));
} else {
  const response = await fetch(url);
  if (!response.ok) throw new Error(`Geometry download failed: ${response.status}`);
  topo = await response.json();
}
const fc = topojson.feature(topo, topo.objects.countries);
// 55 ISO numeric codes, including Western Sahara; Somaliland is separate.
const africaIds = new Set(`012 024 204 072 854 108 120 132 140 148 174
178 180 262 818 226 232 748 231 266 270 288 324 624 384 404 426 430
434 450 454 466 478 480 504 508 516 562 566 646 678 686 690 694 706
710 728 729 834 768 788 800 894 716 732`.split(/\s+/));
const africa = {
  type: 'FeatureCollection',
  features: fc.features.filter(f => africaIds.has(f.id) || f.properties.name === 'Somaliland')
};
if (africa.features.length !== 56) throw new Error('Unexpected Africa feature selection');
const country = name => {
  const f = fc.features.find(f => f.properties.name === name);
  if (!f) throw new Error(`Missing feature: ${name}`);
  return f;
};
const greenland = country('Greenland');
const sphericalKm2 = f => d3.geoArea(f) * 6371.0088 ** 2;
const projections = [d3.geoMercator(), d3.geoEqualEarth()]
  .map(p => p.fitSize([1600, 900], { type: 'Sphere' }));
const drawn = (f, p) => d3.geoPath(p).area(f);
const sum = fn => fc.features.reduce((total, f) => total + fn(f), 0);
const worldSpherical = sum(sphericalKm2);
const worldDrawn = projections.map(p => sum(f => drawn(f, p)));
console.log('Africa features:', africa.features.map(f => f.properties.name).sort());
console.table([['Africa', africa], ['Greenland', greenland]].map(([region, f]) => ({
  region, sphericalKm2: sphericalKm2(f),
  mercatorPx2: drawn(f, projections[0]), equalEarthPx2: drawn(f, projections[1])
})));
const ratio = sphericalKm2(africa) / sphericalKm2(greenland);
const mercatorRatio = drawn(africa, projections[0]) / drawn(greenland, projections[0]);
console.log({ sphericalRatio: ratio, mercatorRatio,
  equalEarthRatio: drawn(africa, projections[1]) / drawn(greenland, projections[1]),
  comparisonDistortion: ratio / mercatorRatio });
console.table(['Greenland', 'Norway', 'Canada', 'Russia', 'Sweden', 'India',
  'Nigeria', 'Brazil', 'Dem. Rep. Congo', 'Kenya', 'Indonesia'].map(name => {
  const f = country(name);
  const scores = projections.map((p, i) =>
    (drawn(f, p) / worldDrawn[i]) / (sphericalKm2(f) / worldSpherical));
  return { country: name, mercator: scores[0], equalEarth: scores[1] };
}));

The unrounded Africa-to-Greenland ratio is approximately 13.917 on the sphere and 0.947 on Mercator: a roughly 14.7-fold distortion of that comparison. Rounding these to 13.9 and 0.9 before dividing would misleadingly suggest more than fifteen-fold.

Sources

Ready to create?

Start making animated GIFs, videos, and graphics — free, no signup.

Open PinePaper Editor