← Writing · Civic & Democratic Infrastructure
Flux Working Paper No. 32

Legible, Navigable, Writable: What Measuring a City Actually Costs

Ken Ruto · Flux — A Research & Technology Lab, Nairobi, Kenya · July 2026 · 10 min
↩ Read as essay
BibTeX · RIS
Abstract

This paper reports the first quantitative result from the Nairobi digital twin programme: the replacement of heuristic building heights with heights measured from satellite imagery across the full metropolitan area. Using Google's Open Buildings 2.5D Temporal dataset, sampled inside each building's real footprint polygon, the proportion of buildings whose height derives from observation rather than inference rose from 0.3% (4,231 surveyed buildings) to 73.6% (1,019,096 of 1,384,206). The paper documents the pipeline — reading only decimated windows from 9.65 GB of Cloud-Optimized GeoTIFFs to produce a 16 MB working raster — and the empirical selection of the median-within-footprint estimator over alternatives. It then reports an unexpected result: validated against Overture Maps' own surveyed height attribute, the imagery heights show a 6.84 m mean absolute error, whereas independent peer-reviewed validation against ICESat-2 laser altimetry places the same dataset at 2.49 m for Nairobi. Having eliminated resampling artefacts as a cause, the paper argues that the discrepancy is attributable primarily to error in the surveyed attribute rather than the imagery, and that a dataset widely treated as authoritative is likely the weaker of the two sources. The paper draws a general conclusion for institutional data infrastructure: systems that store values without provenance cannot adjudicate between conflicting sources, and provenance is therefore a precondition for institutional reasoning rather than a documentation concern. It closes by locating the remaining work — the transition from a navigable model to a writable one — as an institutional rather than a technical problem.

Keywords: digital twin, building heights, remote sensing, data provenance, open data, Nairobi, operating layer, institutional data infrastructure

A planner at City Hall wants to know how many buildings in Kibera have more than one storey. It is not an unreasonable question. It bears on drainage, on fire access, on how many people are actually there. She cannot answer it, and neither can anyone else in the building. The question is not hard because the answer is secret. It is hard because nobody has ever written the answer down.

For most of the last two years this body of work has argued that African institutions are failing for want of operational data infrastructure rather than for want of integrity. This paper is the first one where I can put a number on what closing part of that gap actually costs — because we closed it, for one dimension, in one city, and the closing produced a result I did not expect.

In plain terms: we replaced guessed building heights with heights measured from satellite imagery across Nairobi. It worked. But it also revealed that two datasets which both describe themselves as "measured" disagree with each other by nearly seven metres — and that the one everybody treats as authoritative is probably the worse of the two.

Three states an institution's data can be in

It is useful to separate three things that get collapsed into the word "digital".

Legible means the thing can be seen. A building exists in a dataset with a location and a shape. Someone asking "what is there?" can get an answer.

Navigable means the thing can be traversed and interrogated in context. Not a row in a table but a place you can move through, adjacent to other places, at a scale a human can reason about.

Writable means the thing can be changed by the people it describes. A resident who can see that the model has their building at one storey when it has three can say so, and that correction lands somewhere that matters.

Almost all civic technology in this region stops at legible, calls itself a platform, and waits. The gap between legible and navigable is mostly engineering. The gap between navigable and writable is mostly institutional, which is why so little of it exists.

What the twin is now

The Nairobi twin now holds 1,384,206 real building footprints across the metro, streamed tile by tile so that the whole city is walkable without the whole city ever being in memory. Footprints come from Overture Maps, which merges Google's Open Buildings, Microsoft's ML-derived footprints, and OpenStreetMap.

Until recently every one of those buildings was rendered as a box, because the pipeline reduced each real footprint polygon to its minimum rotated rectangle before storing it. That was a defensible shortcut and a real loss: an L-shaped block, a courtyard building, or an angled plot boundary all became rectangles. The footprints now survive to the renderer, simplified only as far as needed to keep tiles small.

More importantly, the heights changed.

0.3 percent to 73.6 percent

Overture carries a surveyed height for 4,231 of the 1.38 million buildings in the metro. That is 0.3 percent. For the remaining 99.7 percent, earlier versions of this twin estimated height from a heuristic: distance from the central business district, multiplied by a land-use factor. Buildings near the core were assumed taller. Nothing about any individual building was observed. The estimate was labelled as an estimate and colour-coded by confidence, which is the honest minimum, but it was still fundamentally a guess dressed in a gradient.

Google's Open Buildings 2.5D Temporal dataset changed what was possible. It provides building heights derived from satellite imagery across Africa, South Asia, South-East Asia and Latin America, annually from 2016 to 2023, at roughly 4-metre effective resolution, under CC BY 4.0 and ODbL.

The twenty-five source rasters covering greater Nairobi total 9.65 GB at their native half-metre tiling. We did not download them. They are Cloud-Optimized GeoTIFFs, so the pipeline reads only decimated windows over HTTP range requests and mosaics them into a single 16 MB raster at the dataset's true effective resolution. Then it samples that raster inside each building's real footprint polygon and takes the median.

The estimator was chosen by measurement rather than by taste. Validated against the buildings where Overture carries a surveyed height, taking the median of the pixels inside the footprint beat both the 90th percentile and the maximum. Using the maximum sounds appealing — you want the roof, not the ground — but it is noise-sensitive and it was the worst of the three.

The result:

Height source Before After
Surveyed 4,231 (0.3%) 4,231 (0.3%)
Measured from imagery 1,014,865 (73.3%)
Informal-settlement assumption 89,028 13,499
Distance-and-land-use guess 1,290,947 351,611

Nearly three quarters of the city now stands at a height that something actually looked at. The remaining quarter splits into two honest failures: 298,557 buildings read below two metres in the raster, which at 4-metre resolution mostly means structures too small for the grid to resolve, and 66,553 fall outside raster coverage entirely. Those are still guesses, still labelled as guesses.

The result I did not expect

Having built the thing, I validated it against the only ground truth in the dataset — Overture's own surveyed heights — and got a mean absolute error of 6.84 metres.

My first instinct was to write that up as a finding about the raster. Google publishes a 1.5-metre mean absolute error for this dataset, with the caveat, in their own documentation, that it was evaluated in the Global North only. Here was a Nairobi number four and a half times worse. It is a tidy narrative: the Global South gets the worse model again.

It is also wrong, and it took a citation to catch it.

A 2025 paper in Scientific Reports evaluated building-height datasets against ICESat-2 satellite laser altimetry — a reference with roughly half a metre of uncertainty — for Nairobi, Kathmandu and Quito. For Nairobi it puts Open Buildings Temporal at 2.49 metres mean absolute error, better than the authors' own deep-learning model at 7.02 metres, with a tendency to overpredict by around 2.2 metres.

So the raster is roughly two and a half metres off against laser altimetry, and roughly seven metres off against Overture's surveyed heights. Both cannot be true of the raster. The difference is the ground truth.

I checked the obvious mechanical explanation first. My mosaic resampled half-metre pixels onto a 4-metre grid by averaging, which would dilute roof heights with surrounding ground and could plausibly account for the gap. So I rebuilt the entire metro mosaic using nearest-neighbour sampling instead and re-ran the validation. The results were identical to two decimal places. That rules out resampling, and incidentally confirms what the dataset documentation implies: the half-metre rasters are upsampled from a 4-metre native signal, so the two resampling strategies are reading the same underlying numbers.

Which leaves the conclusion I did not want. Two sources that both describe themselves as measured disagree by 6.84 metres, and the one with independent laser-altimetry validation is the satellite raster, not the surveyed attribute. Much of that gap is more likely error in Overture's height field — which inherits from OpenStreetMap contributors, from modelled values, and from sources of varying provenance — than in the imagery.

What this does to the design

The twin ranks height sources by confidence: surveyed beats imagery beats heuristic. That ordering was written before this result and it is now only partly defensible.

It remains right in one specific place. The raster caps at 100 metres. Nairobi has towers well past that — Overture has Times Tower at 150 metres — so for the tall core, the surveyed value is the only one that can be correct. Everywhere else, the ordering rests on an assumption that "surveyed" means "better", which this measurement does not support.

I have not changed the precedence yet, because changing it on one comparison against a ground truth of unknown provenance would be trading one unexamined assumption for another. It is recorded in the pipeline as a known open question, and both figures — the 6.84-metre disagreement and the 2.49-metre validated error — ship inside the tile store's metadata, so the distinction travels with the data instead of living in someone's memory.

That is the actual lesson, and it generalises well beyond building heights.

Provenance is the product

An operating layer that stores values is not enough. An operating layer has to store where each value came from and how much to trust it, because the moment you have two sources you have a conflict, and the moment you have a conflict you need a rule, and the rule is only as good as the provenance you kept.

This is not an abstract concern for institutions in this region. A water utility reconciling a meter reading against a billing record, a health system reconciling a paper register against a digital entry, a county reconciling a land record against a survey — these are all the same problem. Two sources, both authoritative-sounding, disagreeing. Most institutional software resolves this by picking one silently. The twin now refuses to: every building in the model carries a visible marker of how its height was arrived at, and the disagreement between sources is recorded rather than smoothed away.

An institution that cannot say why it believes a number cannot defend that number, cannot improve it, and cannot delegate it. Provenance is not metadata hygiene. It is the precondition for an institution being able to reason about its own data at all.

The next direction

The twin is legible and navigable. It is not writable, and that is the whole remaining distance.

What writable would mean concretely: the resident who can see their building modelled at one storey when it has three can correct it, and that correction enters a queue that a real institution reads. Not a suggestion box. A record with provenance — who said so, when, on what basis — that sits alongside the satellite-derived value and the surveyed value as a third source with its own confidence tier, and that the merge rule has to reckon with.

This is where the argument in The Operating Workforce and The Personal Operating Layer has been heading. The reason it has not been built is not that the interface is hard. It is that a write layer implies an institution on the other end that has agreed to read it, and that agreement is an institutional fact, not a technical one.

I am not going to pretend that agreement exists. What this paper claims is narrower and, I think, more useful: we now know what the read side costs. Roughly three quarters of a city's building heights can be moved from guesswork to observation using free, openly licensed data and a pipeline that fits in 16 megabytes. The obstacle to a legible city was never the imagery. The measurement is available, it is good, and it is better than some of the sources we have been treating as authoritative.

The obstacle is on the write side, and it is institutional. That is the next paper, and it will require an institution willing to be the first one to answer.

References
  1. Google Research. Open Buildings 2.5D Temporal Dataset. Google Research. 2024.
    Source of the imagery-derived heights: building presence, height and fractional counts, 2016-2023, ~4m effective resolution, CC BY 4.0 / ODbL 1.0. States the 1.5m MAE figure and its Global-North-only evaluation caveat.
  2. Scientific Reports. Narrowing the gap for city building height predictions. Scientific Reports 15:29913. 2025. doi:10.1038/s41598-025-15929-2
    Independent validation against ICESat-2 laser altimetry (0.5m +/- 0.3m uncertainty) for Nairobi, Kathmandu and Quito. Places Open Buildings Temporal at 2.49m MAE in Nairobi, overpredicting by ~2.2m, against the authors own deep-learning model at 7.02m. The citation that corrected this papers initial conclusion.
  3. Overture Maps Foundation. Overture Maps buildings theme. Overture Maps Foundation. 2026.
    Source of the 1,384,206 footprints and of the 4,231 surveyed heights used as the comparison set. Merges Google Open Buildings, Microsoft ML footprints and OpenStreetMap.
  4. Flux Working Paper No. 30 — Estimating What We Don't Know: A Confidence-Tiered Height Heuristic for Data-Sparse Cities.
    The confidence-tiered height heuristic this work replaces for 73.3% of the city.
  5. Flux Working Paper No. 25 — The Operating Workforce: An African-First Theory of AI Employees.
    The operating-layer argument this paper extends with a measured result.
  6. Flux Working Paper No. 26 — The Personal Operating Layer: The Case for an AI That Lives in Your Messages.
    The write-layer direction identified here as the remaining institutional gap.
Provenance
Flux Working Paper No. 32 · Ken Ruto, Flux — A Research & Technology Lab, Nairobi, Kenya
Published 25 Jul 2026
Content hash (SHA-256): 761349e9785dda56… · build d03e305
DOI: pending deposit
Ken Ruto
About the author
Ken Ruto

Founder of Flux. Building vertical AI-powered SaaS for Africa's institutions — and writing the thesis behind every bet. kenruto.fluximpact.org →

Share X LinkedIn WhatsApp
Did this land?
Was it useful?

Comments

No comments yet — be the first.

Replying to · cancel
Get new essays

No spam — just the next piece when it's out.

Think I got something wrong? Highlight any sentence to push back on it — or It comes straight to me, never shown publicly.

Push back
Related writing
7 min
Every Candidate, Same Terms: Campaign Infrastructure for 2027
Campaigns run on data of untraceable provenance not because the law is missing, but because nobody built the compliant path. What campaign infrastructure has to bind itself to in order to be worth trusting.
6 min
Who's Missing From the Map: Building-Footprint Coverage Gaps in Nairobi's Informal Settlements
Kibera: 82% of its buildings are in OpenStreetMap. Mathare: only 16% are. The difference is not population or need — it is whether a settlement ever had a dedicated volunteer mapping campaign.
7 min
Estimating What We Don't Know: A Confidence-Tiered Height Heuristic for Data-Sparse Cities
0.3% of 1.27 million Nairobi buildings have a real height on record. This is the heuristic built to estimate the other 99.7% honestly — with its confidence visible, not hidden.