Earth Analog Finder

This is a frontend prototype. It runs on a curated sample dataset bundled with the app: eight of thirteen parameters are measured and reproducible, five are our estimates. A live NASA data pipeline is planned.

We rank 24 real Earth sites against the conditions of a permanent Moon base or Mars base, across 13 parameters. Every score is shown with the working behind it, so you can check it or change it.

Profile:Equatorial/mare global-mean reference for a permanent lunar base. South-pole (e.g. Artemis) targets are future work.

No Earth site can match these

Temperature range, Radiation dose, Daylight score zero for all 24 sites, not because the data is missing but because Earth cannot do them: the atmosphere and magnetic field shield the surface from the dose rate, and no Earth day lasts 336 hours. That is 19% of the total weight, so it is left out of the weighted mean and reported here instead. Averaging it in would only scale every score by the same constant and hide the finding.

Showing 24 of 24 sites

Ranked sites (Moon base)

#SiteScoreConf.
1
Atacama Desert
Chile
48.7
81
2
McMurdo Dry Valleys
Antarctica
46
85
3
Devon Island
Canada
41.4
85
4
East Antarctic Plateau
Antarctica
39.6
80
5
Erta Ale
Ethiopia
38.9
63
6
Craters of the Moon
United States
37.9
85
7
Namib Desert
Namibia
37.3
68
8
Mauna Kea
United States
35.3
56
9
Deception Island
Antarctica
35.1
69
10
Pilbara
Australia
34.9
80
11
Wadi Rum
Jordan
34.5
85
12
Svalbard
Norway
33.8
80
13
Mojave Desert
United States
33.2
81
14
Ladakh
India
33
60
15
Negev Desert
Israel
32.5
85
16
Teide
Spain
31.4
56
17
Lanzarote
Spain
31.1
85
18
Kilauea
United States
29.1
77
19
Mount Etna
Italy
27.8
60
20
Sonoran Desert
United States
27
80
21
Danakil Depression
Ethiopia
26.6
55
22
Death Valley
United States
25.5
81
23
Mono Lake
United States
23
85
24
Rio Tinto
Spain
16.1
90

Custom profile

Move any weight and the ranking recomputes. Presets can move a target too, and the panel always shows which numbers changed.

Edit all 13 weights

Site detail

Pick a marker on the map or a row in the table to see the full breakdown.

Methodology at a glance

For each parameter, similarity is 1 minus the distance to the target divided by the tolerance, clamped between 0 and 1. The score is 100 times the weighted sum of those similarities divided by the sum of the weights, taken over the axes a site can actually score on. Confidence is completeness times resolution tier times 100, and it is reported separately. Targets, tolerances and weights all sit in src/data/config.json, and scripts/validate.mjs re-runs the whole thing in the terminal.

What you can do next

  • Read where every number comes from in the provenance doc.
  • Re-run the scoring yourself with npm run validate.
  • Edit a weight in src/data/config.json and watch the ranking move.
  • Export the current ranking as CSV and check it in a spreadsheet.