The Sussex bridge atlas
We published a page recently called what we actually know, and it is a bleak document. It counts how much of the United Kingdom our map holds a height restriction for, it publishes a zero for anything MapMap has measured itself, and it reports a coverage figure that fell between August and September. The fairest criticism of it is that it proves the problem far better than it proves anybody can do anything about it.
This is the other direction, in one county, from open data alone. No vehicle went anywhere. Sampling every road in Sussex against three Environment Agency LiDAR height models found 676 places where a road passes under a structure. OpenStreetMap records 433 height values in the same rectangle.
Of our 676, we will stand behind 104 today. That is the result, not a caveat at the end of it. What follows is what the other 572 are, why we are not calling them bridges, and what any of this is for.
104 of 676
Every structure carries a confidence tier, given to it by whether any independent open dataset agrees that something is there. A structure is shown as verified when it sits in the top tier and has not been flagged as a probable artefact. Everything else is a candidate, and candidate here does not mean nearly verified. It means the height model saw something and we have not established what.
| Tier | Found | What it rests on | Chips looked at | Real |
|---|---|---|---|---|
| High | 122 | A railway or a watercourse crosses the road at that point, in Ordnance Survey open data. Two independent datasets agree that something is there. | 15 | 12 of 15 |
| Medium | 217 | Another road crosses, at ground level itself. In this county that turned out to be weak evidence, and the name no longer fits. | 15 | 2 of 15 |
| Low | 337 | Nothing crosses that any open dataset knows about. The height model is the only witness. | 15 | 2 of 15 |
103 of the 104 verified structures reach the top tier because a railway or a watercourse crosses the road there in Ordnance Survey open data, which is two datasets agreeing without either knowing about the other. The last 1 of them reaches it through a validation list whose reuse terms we have not resolved and which is therefore not published anywhere on this page. Disclosing that one is cheaper than quietly keeping it or quietly dropping it.
What a precision of 0.13 means
Those last two columns are the reason this page has the shape it has. 45 structures were sampled, fifteen drawn at random from each tier, and every one was rendered as a 200 m image chip and looked at individually: hillshade beside height-above-terrain, with the road and the detected run drawn on. A chip counts as real only if a road genuinely passes under a structure there.
In the medium tier, 2 of 15 were real. 3 were trees or hedges, 1 was a road carried over rather than passing under, and 9 were noise: an Ordnance Survey centreline sitting a few metres off the real carriageway and clipping a farm building or a wall. That is what 0.13 means. It is not a middling grade. Roughly seven in eight of that tier are wrong.
The low tier scores the same, and that equality is the finding. In the coastal strip a road crossing another road at a clear angle usually was a grade separation, and the medium tier scored better there. Inland it is usually two lanes meeting at a hedge line. The medium tier does not earn its name in this county, so it is not presented as a middle confidence band, and nothing in it is shown as verified.
15 chips per tier is a small sample and each figure carries roughly ten percentage points of sampling error either way. That is wide enough to make 0.80 and a slightly better figure the same number. It is not wide enough to make 0.13 and 0.80 the same number. Verdicts came from the imagery alone. No site was visited.
How a structure gets found without anybody going there
The detector produced 3,853 raw runs. Three geometric tests reduced those to 676 structures after clustering anything within 25 m into one record, so split carriageways and parallel links collapse rather than counting twice.
- 01Sample every roadEvery Ordnance Survey Open Roads link in the box, sampled every metre. 13,195,722 samples over 13,144 km of centreline.
- 02Read three height models at each sampleBare-earth terrain, last-return surface and first-return surface, from the Environment Agency 1 m LiDAR composites.
- 03Find solid coverRuns where the last return sits between 2.3 m and 14 m above the terrain and the two returns agree to within a metre. Agreement is what separates a deck from a tree canopy, which the first return catches metres above the last.
- 04Check it spans the roadA cross-section test at 2, 4 and 8 m either side. A deck spans the carriageway. A hedge or a building clipped by an imprecise centreline does not. This one filter throws away most of what the detector finds.
- 05Check the road goes under itOn a road passing under a structure the terrain stays at road level on both approaches. On a road carried over one it drops away beneath. This is the difference between a bridge and a bridge seen from the wrong side.
- 06Ask what it crossesRailways from Ordnance Survey Open Zoomstack, watercourses from Open Rivers, roads from Open Roads. Independent corroboration, and the whole basis of the confidence tiers.
| What the filters threw away | Runs |
|---|---|
| The cover does not span the carriageway | 2,380 |
| The terrain drops away, so the road is carried over | 488 |
| The road stays elevated on both approaches | 238 |
The cross-section test is the expensive one in both directions. It buys most of the precision the pipeline has and it costs narrow structures: cattle creeps, depot accesses and single-track lanes get discarded along with the hedges. That trade is a choice, and it is the choice that makes the top tier worth publishing.
Two metres of deck, and only 1.2 of it is published
Aerial LiDAR sees the top of a structure. A driver needs the bottom of it. Between the two sits the deck, which no aerial survey can see through, so every clearance here is a measured height minus an assumed thickness. We carry that assumption as two numbers rather than one, because only one of them has a published basis.
| Part of the offset | Metres | Where it comes from |
|---|---|---|
| Nominal construction depth | 1.2 | Published. The distance from the rail running surface to the soffit. Modern short-span steel underbridges reach 0.80 to 0.85 m; masonry arches run to about 2.1 m at the crown, and this figure is the centre of that range. |
| Signing and geometry allowance | 0.8 | Fitted, not observed. Everything between what LiDAR measures, which is the top of the structure at the road centreline, and what a headroom figure means, which is the lowest clearance anywhere over the carriageway. It was tuned against a comparison set. It is not a measurement of anything. |
| Applied to every structure | 2.0 | Subtracted from the measured deck height, and reported with a band of plus or minus 1.5 m. |
The fitted part is deliberately generous, and deliberately biased low. Reading a bridge as taller than it is costs a vehicle roof. Reading it as shorter costs a survey visit. A pipeline built to stop bridge strikes should spend the cheap error, so the estimates here sit below the truth more often than above it, and they should be described as conservative estimates rather than best estimates.
We cannot show you that fit. The comparison set it was tuned against is a list whose reuse terms we have not resolved, so neither it nor the error table it produced appears on this page. That leaves only the weaker claim, and the weaker claim is the one to take: the allowance is a fitted constant, it is biased low on purpose, and you cannot check it from here.
None of these numbers is a height. Not a signed height, not a legal height, not a certified clearance. They are a survey-targeting aid, which is the whole of what they are for, and nothing here should ever be used to route a vehicle. Our routing does not read them and this page does not ask it to.
Against the map
The point of the exercise is the comparison. In the same rectangle, on 21 September 2026, OpenStreetMap held 433 elements carrying a height value. This pipeline found 676 structures, of which 348 are estimated under 4.5 m and 104 are defensible today.
| In the same box | Count |
|---|---|
| OpenStreetMap elements carrying a height value Ways and nodes tagged with a height limit. The closest thing there is to a crowd-sourced record of restricted headroom across the county. | 433 |
| Structures in this atlas Every place a road was found to pass under something, at every confidence. | 676 |
| Of those, estimated under 4.5 m | 348 |
| Of those, verified and estimated under 4.5 m The honest comparison to make against the number above it. | 75 |
| OpenStreetMap ways tagged as a road on a bridge Listed only to say it is the wrong comparator: it counts the road carried over, which is the opposite of what this pipeline looks for, and one structure can be several ways. | 4,783 |
Neither dataset is a subset of the other and neither is an inventory. The claim is not that the map is missing 243 bridges. The claim is narrower and more useful: open data and a method find structures a tag-based map does not hold, in numbers large enough to be worth surveying, and they find them without anybody driving anywhere first.
The county, as found
The ten a survey vehicle would visit first
Verified structures only, ordered by scan priority. The measured deck height is shown beside the estimate so the arithmetic is visible: the estimate is that height minus the 2.0 m offset, carrying a band of plus or minus 1.5 m.
| Road | Crosses | Deck height | Estimated clearance | Latitude, longitude |
|---|---|---|---|---|
| Yapton Road B Road | rail | 4.55 m | 2.55 m | 50.83085, -0.63743 |
| Shottermill Road B Road | rail | 4.60 m | 2.60 m | 51.08554, -0.74005 |
| Bayham Road B Road | rail | 4.62 m | 2.62 m | 51.10590, 0.29267 |
| A264 A Road | rail | 4.71 m | 2.71 m | 51.13037, 0.15177 |
| North Street B Road | rail | 4.73 m | 2.73 m | 50.85155, -0.93781 |
| Queen Street A Road | rail | 4.79 m | 2.79 m | 51.06087, -0.32404 |
| B2188 B Road | rail | 4.79 m | 2.79 m | 51.10888, 0.17515 |
| Sturt Road A Road | rail | 4.88 m | 2.88 m | 51.08568, -0.73598 |
| Crowborough Hill B Road | rail | 4.90 m | 2.90 m | 51.04677, 0.18904 |
| New Barn Road B Road | rail | 4.93 m | 2.93 m | 50.89713, -0.54199 |
Every one of them is an A or B road under a railway line. Read that as the pipeline getting the obvious cases right rather than as ten discoveries. A road under a railway is the easiest thing in this dataset to be confident about, which is exactly why these are the ten at the top and why the interesting question is what sits behind them.
What this does not do
It does not move the zero. The measured count on what we actually know still reads 0, and publishing this page does not change it. Measured, in our navigation app’s vocabulary, means two heights read out of one survey taken on one day on the ground. An estimate off a national LiDAR mosaic of unknown vintage is a different kind of thing and gets a different word. What this atlas does is tell a survey vehicle where to go, which is how that number eventually stops being zero.
It does not know what half of these cross. The crossing is unknown for 337 of 676 structures, which is most of the candidate set and the main reason it stays a candidate set.
Absence from it is not evidence a road is clear. 0.4 percent of samples had no LiDAR available at all, the composites are mosaics of surveys flown over many years so a recent structure may simply not be in them, and at 1 m resolution a footbridge, a sign gantry or a thin canopy can fall between samples. A road with no structure on this page is a road this method did not find one on.
An arch has no single clearance. A masonry arch is lowest at the kerb and highest at the crown, and the figure here is closest to the centreline value, which is the most generous point on it. Roads running through embankments rather than under a discrete deck can be wrong by metres in either direction, and both directions occur.
Check it yourself
Every figure above came out of the files below. They are the run’s own outputs, identified by hash, and the page is built from a reduction of them committed to this site’s repository rather than from anything typed in by hand.
| File | SHA-256 | Bytes |
|---|---|---|
| structures_phase2.geojson | 4b4e76ee685999e7a31860dfd498274e97ea97ef60e6b0c7c77148952645feea | 462,722 |
| qa_stats_phase2.json | 3daa5406e9310427e6793fdf073bf478e8ff5c2724117923bdda8a46e7d9e33c | 6,197 |
| chip_verdicts_phase2.csv | c7b2952bb0e5b2c6b48bfd4b5ef1ea2995673e5577ba751a1f5cbbb67ba8d049 | 2,276 |
| qa_report_phase2.md | c2922139be7c6bddf1e79b6c3ba6dea55ea5a622792a0f68c341c2f5b61562a7 | 18,915 |
| Field | Value |
|---|---|
| Area | 95 km by 45 km, EPSG:27700 easting 470,000 to 565,000, northing 95,000 to 140,000 One rectangle in British National Grid, 95 km by 45 km. It is the analysis box, not the county boundary. |
| Run | ./run.sh phase2 sussex-bridge-atlas, phase 2. Outputs dated 8 September 2026. 2,949 LiDAR chunks over 100,970 road links. |
| Reduced by | website/scripts/build-sussex-atlas.mjs |
| Comparison | [out:json][timeout:180];(way["maxheight"](50.75039041476211,-1.0091161060444758,51.135502834446505,0.35701413311961555);node["maxheight"](50.75039041476211,-1.0091161060444758,51.135502834446505,0.35701413311961555););out count; Run against https://overpass-api.de/api/interpreter on 21 September 2026, over a map database dated 2026-09-21T07:17:36Z. |
Where the data comes from
| Source | Used for | Licence |
|---|---|---|
| Environment Agency LiDAR Composite: terrain model, last-return and first-return surface models, 1 m, via the Environment Agency WCS | Every height in this atlas | Open Government Licence v3.0 Environment Agency copyright and database right |
| Ordnance Survey Open Roads | Road centrelines, classification and names | Open Government Licence Contains OS data, Crown copyright and database right 2026 |
| Ordnance Survey Open Rivers | Watercourse crossings | Open Government Licence Contains OS data, Crown copyright and database right 2026 |
| Ordnance Survey Open Zoomstack | Railway crossings | Open Government Licence Contains OS data, Crown copyright and database right 2026 |
| OpenStreetMap, via Overpass | The comparison counts only. Never joined into the atlas. | Open Database Licence OpenStreetMap contributors |
Every height in this atlas is derived from Environment Agency LiDAR Composite data published under the Open Government Licence v3.0, and every road, railway and watercourse from Ordnance Survey OpenData under the same terms. Contains OS data, Crown copyright and database right 2026. Contains Environment Agency information licensed under the Open Government Licence v3.0. The comparison counts are from OpenStreetMap, made available by OpenStreetMap contributors under the Open Database Licence, and are never joined into the atlas itself.
The page this one answers is what we actually know: the count of how much of the United Kingdom’s map holds a height restriction at all, and the zero beside anything we have measured ourselves. Read in sequence, the two say the same thing from opposite ends. The map does not hold this, and the map does not have to be the only place it could come from.