ALPHAURBAN · INSIDE THE FIELD ALPHAEARTH · 2024

ONE FIELD · 36,864 CELLS · 64 NUMBERS EACH

How does a
planetary embedding
represent the city?

AlphaEarth compresses every place on Earth into 64 numbers, and it separates one city from another easily. This walk follows one 36,864-cell field — Singapore, Johor Bahru and Batam — into that representation to see what the same 64 numbers hold of the differences inside a single city. We then explore how cities vary across different regions, climates, and populations, as well as over time.

One field in one year, described cell by cell, then set among 1,000 cities measured the same way.

51 × 51 KM 36,864 EQUAL-AREA CELLS 265 M CELLS · 2024

01 / 19

The field in the embedding's own colours.

Each cell takes its colour from three of AlphaEarth's own 64 dimensions, and a geography no one labelled comes back on its own — coastlines, forest, the built strip along the strait. The rest of the walk asks how much structure the same 64 dimensions show inside that built strip.

Dimensions A39, A62 and A08 as red, green and blue, stretched over land.

02 / 19

Seven kinds of land across three countries.

The same field under a human classification: Singapore in the centre, Johor Bahru across the strait to the north, Batam to the south. ESA WorldCover draws the legend, and the same built and forest classes appear on all three sides of the strait.

03 / 19

The land, packed by class.

Set the permanent water aside — 14,962 cells of strait and sea — and pack what remains by class. Forest and built land dominate, and over a third of the land cells are built. Those built cells are what the rest of the walk follows.

04 / 19

Every cell becomes 64 numbers.

AlphaEarth replaces each cell with a unit vector — a direction on a 64-dimensional sphere. Shown here through one fixed 3-D projection, the broad land-cover classes separate on their own.

Positions come from one fixed projection, fit on land cells. Every number is computed in all 64 dimensions.

05 / 19

Greenness organises the field.

Recolour the same points by measured vegetation (NDVI) and the cloud reads as one smooth gradient: the embedding's dominant axis tracks how green the land is. Vegetation is a reasonable thing for a planetary representation to encode strongly, but it does not separate one part of a city from another.

06 / 19

The land, ordered by greenness.

Pack the land cells again, this time ordered by measured NDVI rather than by class. The field becomes one continuous gradient from bare and built to dense forest, with no natural break where "city" ends.

07 / 19

Now look inside the built class.

Built cells differ widely among themselves. Recoloured by built volume, they run from low sheds and terraces to the dense cores of the city centre and the housing towns — differences a city plans around, and ones a vegetation index cannot express.

08 / 19

Built cells, ordered by volume.

Order just the 8,293 built cells by their built volume, from low sheds and terraces up to the dense cores. A single class in the land legend contains the full range of urban density, and that variation is what we ask the embedding to carry.

Colour is scaled by the square root of the built 98th percentile, so the gradient shows order, not the shape of the distribution.

09 / 19

How much of that does the field keep?

In all 64 dimensions, the entire built class occupies a pocket about as wide as any single natural class, and the mean directions of low-rise and high-rise Singapore sit closer together than forest sits to water.

These numbers describe one field in one year.

10 / 19

Back to the map.

From above, the built area reads as one continuous fabric. Inside the representation, the differences separating one part of that fabric from another are the finest in the field, and no global label set records them at this scale. So what follows measures the representation directly.

11 / 19

The same walk in Mexico City.

Mexico City has one centre, sits in a high basin, and differs from the island city-state in almost every respect. It is walked with the same satellite, the same embedding and the same steps, at double speed.

12 / 19

Both cities in a shared projection.

Both fields share one projection, fit on the land cells of both cities, so both clouds are seen from the same camera. The broad classes organise both clouds the same way.

13 / 19

Leave the cities' own frame.

Every view so far used a projection built to spread one or two cities out. Switch to the frame the planet defines — axes fit on the mean directions of 1,000 cities — and each city's detail gathers into a small patch of the sphere.

Only the display changes. The cells' 64 numbers are the same in both frames.

14 / 19

Each cloud, summarised as vectors.

A direction on this sphere is a vector from its centre, and the arrows summarise each cloud: the bold arrow points to the mean of the city's urban cells, the thin arrows to the mean of each degree of urbanisation. At this scale the thin arrows hug the bold one: every degree of urbanisation in a city points almost the same way. The next scene keeps only the tips.

In the global frame, 2024, each degree sits 0.5–6° from the mean of its city's urban cells; in the two-city frame the same degrees spread about 25°. Degrees with too few valid pixels are omitted, and Mexico City's mean lies on the far side of the sphere, so its arrows are drawn fainter.

15 / 19

Each city reduced to one direction.

Take the mean direction of every cell in a city: one point for Singapore, one for Mexico City, 85.6° apart on the embedding sphere. From here on, each city is one such direction.

16 / 19

One thousand cities at once.

Every city now has its point: 1,000 cities, each reduced to its mean direction in 2024. Coloured by continent, the globe organises immediately, with cities from the same continent falling near one another.

17 / 19

Climate separates the cities too.

Recolour the same points by climate and the globe reorganises just as cleanly. Much of what separates cities in the embedding is environment: the same greenness and climate that organised the field inside Singapore.

18 / 19

Population separates cities less clearly.

Colour by population quintile and the pattern is weaker: megacities and small cities interleave. Environment and geography arrange the cities more than population does.

19 / 20

Cities cluster away from the rest of the land.

The grey density behind the points is the rest of the land: 273,410 non-city pixels sampled across the planet. Cities sit apart from it, in a region of their own, a median 73.7° from one another — while Singapore's own cells spread 37.4° around its mean and Mexico City's 33.9°. The embedding separates cities from the world and from each other by wide margins. Keep this sphere in place: the next scroll makes each city point available to inspect.

Each city counts once, 2024. Grey density: non-city land pixels, same projection and camera as the points.

20 / 20

Every city leaves a fingerprint.

The sphere has not changed. Select any point to follow that city, or find one by name. Its measured split-half angles, statistics and nearest neighbours continue directly below.

Preparing the city identities…

All 1,000 city means remain visible. Point positions are the exact final positions from the story; selection changes only the highlighted city.

THE CITY BEHIND THE POINT

Each city’s mean direction,
and whether it repeats.

Select a point on the sphere above, or find a city by name, to inspect its native 64-dimensional angles.

Loading the city identities…

THE SAME 1,000 CITIES · EIGHT YEARS

Now let every city move.

To compare change rather than location, give every city the same start. Scroll once to bring the sphere to a shared 2017 origin, then release the paths.

2024
All 1,000 cities remain in view.
The same 1,000 city directions that ended the opening story.

01 / 02

Keep every city in view.

These are the same thousand 2024 city directions from the fingerprint sphere. The selected city keeps its identity.

02 / 02

Give every city the same start.

Move each trajectory so its own 2017 position is the origin. The cities collapse to one point because location has been removed; their subsequent paths show change alone.

20172024

All 1,000 cities and 8,000 city-years are retained. The display uses two shared directions; the motion statistics use all 64 dimensions.

INSIDE THE POINT · 01

Variation around each city’s mean.

We have followed how each city’s average moves over time. Now return to 2024 and look at the variation around that average.

Eight familiar cities move into a grid. Each has its own origin; the other cities will rejoin the comparison.

INSIDE THE POINT · 02

Let the point become a cloud.

For this comparison, focus on urban centres. Each small dot is an observation from that part of the city, positioned relative to its urban-centre mean. A wider angular cloud means more variation in the embeddings.

We call the average squared angle from that mean dispersion. Moving the centres does not equalise their spread.

These are two shared display directions through the sampled clouds. The analysis measures dispersion in all 64 dimensions over every valid urban-centre cell.

DEVELOPMENT & DISPERSION · 03

Does the spread vary with development?

The same eight centres take their places among all cities with dispersion and national Human Development Index (HDI) data.

Higher points have greater urban-centre dispersion. Further right means higher national HDI. This first relationship has no controls.

ADDING CONTROLS · 04

First, account for city context.

Compare cities after adjusting for total population, land area, continent and the stage at which they entered the collection.

The vertical positions now show dispersion after those adjustments. HDI stays on the same horizontal axis.

THE COMPARISON SAMPLE · 05

Hold the cities constant.

The next question is how the relationship changes as we add measurements of cities’ physical environments.

Those inputs are all available for 942 cities. We first refit the same context model on those cities, then keep them fixed through the following steps. This move changes the sample only.

ADDING CONTROLS · 06

How is population distributed?

Total population is already included. Now add the average and variation of the population field within each urban centre.

This distinguishes cities with similar totals but different population distributions.

ADDING CONTROLS · 07

Account for the built environment.

Add measured building coverage, height and volume, including variation in coverage and height.

Some of the development gradient overlaps with these measured differences in urban form.

ADDING CONTROLS · 08

When did the settlement develop?

Add the average and variation of mapped settlement age. Older and newer urban fabric can present different surfaces to the satellite record.

ADDING CONTROLS · 09

Place those surfaces in their climate.

Add the shares of the climate zones used in the analysis. The earlier population, built-form and settlement-age controls remain in place.

ADDING CONTROLS · 10

Include the vegetation signal.

Add average greenness and its variation, measured with NDVI. The estimated HDI association becomes smaller, and its uncertainty interval now includes zero.

ADDING CONTROLS · 11

What remains after radar structure?

Finally, add summaries of the radar signal and its variation. The remaining HDI association is small and uncertain.

Much of the original gradient overlaps with measured surface characteristics. The sequence describes an association; it does not establish what causes it. Each block’s contribution also depends on which controls came before it.

Samples, geometry and interpretation

The fingerprint view retains all 1,000 sampled city mean directions in 2024, spanning 162 countries. Neighbour distances are computed in the native 64-dimensional geometry; the sphere is a fixed three-dimensional display. The split-half check uses all 840,776 sampled urban pixels and repeats the comparison five times.

The time view requires the same cities across the eight annual layers and retains all 1,000 cities and all 8,000 city-years from 2017–2024. Each trajectory starts at its own 2017 position. The displayed axes carry 17.25% of displacement variation; the motion summaries use all 64 dimensions. Connected annual means do not track fixed pixels.

The dispersion story starts with 1,000 cities in 162 countries (1,000 city-years in 2024). Valid urban-centre outcomes are available for 992 cities in 162 countries; adding national HDI retains 977 cities in 157 countries. All 977 also have the baseline context controls. No complete four-class or eight-year requirement is imposed here.

The clouds show all 250 cached urban-centre observations for each of eight illustrative cities: 2,000 observations, eight countries and eight city-years in 2024. Tangent vectors are transported from each city’s mean to a common reference and projected onto two shared axes, with one display scale. They illustrate a sampled cloud; the regression outcome uses every valid urban-centre cell, in all 64 dimensions. The rectangular regional fields in the city picker below have different boundaries and are not used to estimate this relationship.

The context controls are log total population, log land area, collection stage and continent. Comparing the effect of adding all subsequent controls requires identical rows: 942 cities in 155 countries, or 942 city-years in 2024. The sample-only step refits the context model before any additional control enters. Cities without required inputs remain in the grey row outside the axes.

Adjusted vertical positions are component-plus-residual values from each full log-dispersion model, anchored at the unadjusted sample’s mean log dispersion and mean HDI, then exponentiated. They show a model-adjusted comparison on a common scale. HDI remains national HDI; all effects are reported per +0.1 HDI, with 95% country-clustered intervals. The axes and reference remain fixed across models.

Every step below includes the largest valid sample for that model as a sensitivity check. All controls are cumulative. HDI describes national context, and these associations are not causal. The contribution attributed to a block depends on its position in the sequence.

Dispersion difference per +0.1 HDI, with 95% country-clustered intervals. All observations are from 2024; city counts also equal city-year counts.
Cumulative controlsCommon 942-city sampleLargest sample: cities / countriesLargest-sample result

Dispersion data, model specifications and sample ledger

Sources and sample ledger

Global experiment · A small adapter trained on AlphaEarth

What should a shared representation learn?

The adapter is trained to predict vegetation, building volume and land cover. Change how much weight each goal receives and watch the embedding and its scores move.
2024 global city atlas
Loading the adapter experiment…
Training priorities 81 trained settings
Vegetation33.3%
Building volume33.3%
Land cover33.3%
Drag anywhere. Filled dots are trained models and positions between them are blends of their neighbours. The two purple dots are models added later along the building-volume edge, and the orange rings are separately trained checks on the blends.
Adapted embeddingGlobal visual sample · shared projection
Equal priorities · trained model
Rotate
Colours stay fixed as the embeddings move · every eligible city is shown
How well does it predict?
Score after combining three training runs · lower is better · original AlphaEarth is the reference
About this experiment

A small network takes each 64-dimensional AlphaEarth embedding, passes it through a hidden layer of 128 units and adds a correction to the original, pulling the embedding toward three goals in chosen proportions. Every country carries equal weight in training. The network design and a fixed training length of 24 epochs were chosen by validation on held-out countries in three folds, then kept the same for every setting. AlphaEarth itself is never retrained, and nothing penalises the adapter for changing the geometry.

Models were trained at 66 evenly spaced weightings across the triangle and at equal weights. Two more were added afterwards near the building-volume corner, 5% apart, where the surface bends sharply. Each setting is trained three times with different random seeds and the three embeddings are averaged. Between trained settings the browser blends the nearest averaged embeddings before projecting them. Twelve further models, trained at positions between the grid, check those blends: every blended embedding scores within 5% of the separately trained model on its own objective, with a mean cosine similarity of 0.995 between the two. Scores shown between the 79 scored settings are labelled as estimates.

The sphere shows a fixed sample of 15,970 pixels, drawn from the 501,969 non-water pixels that carry all three measurements, and keeps every one of the 998 eligible cities in 162 countries. It is for display only. The score cards use every held-out pixel with a valid target: 216,504 for vegetation, 138,473 for building volume and 1,036,656 for land cover. Land cover starts from 3,982,891 pixels, of which 224,503 are permanent water and excluded, leaving 3,758,388. Colours show measurements, never model predictions.

The sphere is one fixed three-dimensional projection of the averaged 64-dimensional embeddings. Separation on screen is not the prediction score. The test countries were excluded from every fit and selection step in this round, but an earlier round of the experiment had already looked at them, so these results confirm that round rather than provide a fresh sealed test. The best point on the surface describes the surface; it is not a recommendation chosen on test data.

Data, samples and limits

INSIDE TWO OF THOSE CITIES

Choose two cities.

Each point on the sphere stands for a city. Open two of them and follow their pixels from the map into the embedding.

Loading city views…

Eight cities. The tiles use the same three embedding dimensions and colour scale. Each field’s width is shown below its name.

Explore AlphaUrban live in Google Earth Engine

LIVE EARTH ENGINE EXPLORER

Open the city atlas
full screen.

Launch explorer  ↗