BridgeCheck AR · Data Integrity Series · No. 1
Every American bridge has a federal clearance record and, often, a state one that disagrees with it. Nobody reconciles the two. This is what the disagreement looks like, measured bridge by bridge across 32 datasets.
In four states, 194 bridges are recorded by the state’s own live layer as more than six inches lower than the federal record says — and those are only the states whose layers measure the same quantity the NBI does. That is the direction that hits trucks.
Earlier editions of this report put the figure at 368. New Jersey supplied 171 of those, and §7 now establishes that its layer is a 2010 archive rather than a current one — a stale-versus-current comparison, not the re-measurement the other states show. Those 171 are excluded. Kansas’s 3 are excluded too, on August 13: its 14 pairs came from a KDOT layer later found to be the wrong one, and the agency’s actual clearance service turns out to be posted-class (§7). The remaining four stand: Minnesota 155, Indiana 33, Delaware 3, DC 3.
Almost every bridge with a road beneath it has two clearance records: one in the federal National Bridge Inventory, and one published by the state that actually inspects it. Nobody reconciles them. There is no public dataset that holds both, no process that flags when they disagree, and no convention that says which one a router should believe. This report measures how far apart they are, bridge by bridge, across 32 datasets.
The audit began as a check on our own software rather than on the states. BridgeCheck AR resolves a clearance from a stack of sources — 47 state DOT datasets layered over the federal NBI — arbitrated by a freshness rule that keeps the newest-dated record per structure. That rule has a blind spot: 23 of the 47 state sources publish no usable inspection date — a schema-level hunt across all 23 found their date-like fields to be empty, edit metadata, or unrelated values, with one exception uncovered by this audit (Indiana, §7). For the rest, freshness can't be established — undated records fall back to source-priority rules, which quietly assumes the state layer and the federal record roughly agree.
This audit tests that assumption. Of the 23 undated sources, 11 publish a unit-verified clearance value (OK, IN, DE, KS, MO, IL, CO, SC, DC, MN, NJ); the other 12 publish identity fields only and carry nothing to compare. For each of the 11, every state record was matched to its federal counterpart and the two clearance figures were diffed, in inches. The same test was then extended to all seventeen dated clearance-verified sources, and two discovery sweeps recovered comparable data in five states previously classed as identity-only (§6) — 45,724 bridge pairs across 32 datasets in total, the full comparable universe of public state clearance data.
The federal baseline is the hosted NBI layer (2023 NTAD snapshot), sliced per state by FIPS code, using item 54B (minimum vertical underclearance, meters) and item 53 as fallback. State values were converted to inches per each preset's verified unit — decimal feet, total inches, meters, or paired feet-and-inches columns — with sentinel values (0, 99, 99.99) treated as absent, and values outside 4–91 ft discarded.
Matching used two strategies:
ID join — normalized structure number (alphanumerics only, leading zeros stripped, the app's own structureKey convention). Worked for MO, DC, MN, NJ among the undated sources, and for most of the dated ones (§6). Where a state publishes one record per under-route (Missouri), the controlling minimum per structure was kept on both sides.
Spatial join — required for OK, IN, DE, KS, IL, CO, whose ID schemes (route-mile IDs, county grids) share nothing with the NBI's structure_ format. Each state point was matched to the nearest federal bridge within 30 m; where parallel spans co-locate, the candidate with the closest clearance was chosen, which deliberately biases toward agreement — the difference counts below are conservative.
A pair counts as different only when both sides publish a valid clearance and they disagree by more than 1 inch — comfortably above the ~0.4″ quantization noise of the NBI's two-decimal meter coding.
The first thing reconciliation runs into is that the two records are not always measuring the same thing. Plotting how far each state's values sit from the federal record splits the eleven comparable datasets cleanly into two populations, and the split is the reason a naive merge of state and federal data produces nonsense. Six states appeared to publish the same measurement the NBI does, with disagreement that is moderate and two-sided — real data drift. Two of the six have since been reclassified: New Jersey’s layer is a 2010 archive and Kansas’s 14 pairs came from the wrong KDOT layer, its actual clearance service being posted-class (§7). Four remain. Four states disagree almost everywhere, with strong directional bias — the signature of a layer that publishes a different quantity (posted, permit, or route-point clearance) under a similar column name. South Carolina, the eleventh, could not be compared at all (§7). Fig. 1 shows all three populations — the dated sources of §6 included for the full picture.
New Jersey, Minnesota, Indiana, DC, Delaware, and (nominally) Kansas publish NBI-style measured clearance. Across their 5,979 comparable bridges: 2,964 differ by more than an inch, 1,422 by more than three, and 853 by more than six.
Three signals say this is real re-measurement, not noise. Indiana's layer is explicitly LiDAR-measured — a better instrument disagreeing with decades of tape-and-rod fieldwork. New Jersey stores the very same NBI item in the very same units (meters), so unit confusion is impossible, yet 45% of its bridges differ. And the deltas run in both directions (NJ: 721 state-higher vs 523 state-lower) — resurfacing raises decks, remeasurement corrects both ways.
The asymmetry that matters operationally: 1,203 of these bridges read lower in the state layer than in the federal record, 368 of them by more than six inches. Excluding New Jersey’s 2010 archive and Kansas’s mis-sourced 14 pairs (§7), the four remaining states account for 194 of those — the figure carried on this report’s cover. Any routing decision made off the federal number alone is optimistic at exactly those structures.
Two counts of “reads lower” appear in this section and they are computed on slightly different bases: the 1,203 and 368 totals come from a strict signed threshold, while the per-state direction split quoted for New Jersey (721 higher / 523 lower) comes from the binned delta histogram, which assigns a rounded inch to each pair. On the histogram basis the six-state total is 1,238 rather than 1,203 — a 35-pair gap, entirely a rounding-boundary effect. The lower figure is used throughout as the conservative one.
| State | Layer | Comparable | >1″ | >3″ | >6″ | Share >1″ |
|---|---|---|---|---|---|---|
| DC | DDOT Bridges | 166 | 14 | 6 | 3 | 8% |
| DE | DelDOT NBI | 274 | 24 | 9 | 4 | 9% |
| NJ | NJDOT NBI (meters) | 2,754 | 1,244 | 479 | 262 | 45% |
| IN | INDOT (LiDAR) | 1,113 | 657 | 332 | 212 | 59% |
| MN | MnDOT NBI (roadway-1 field) | 1,658 | 1,011 | 584 | 364 | 61% |
| KS | KDOT State Bridges (19 spatial matches only) | 14 | 14 | 12 | 8 | 100% |
| Total | 5,979 | 2,964 | 1,422 | 853 | 50% | |
Minnesota carries one caveat: its field is the clearance over roadway 1, while NBI 54B is the minimum across all under-routes — at multi-roadway crossings part of its 61% is that definitional gap rather than drift. New Jersey carries a larger one, added August 4: its layer is a 2010 dataset republished in 2024 (§7), so its 2,754 pairs — 46% of this table — are a stale-versus-current comparison, not the re-measurement drift that Indiana's LiDAR data demonstrates. The disagreements are real and a router would still meet them, but for New Jersey the federal record is the likelier current value. Read the 50% headline as four states, one archive, and one wrong layer. Kansas’s row rests on 14 spatial pairs from State_Bridges; KDOT’s dedicated clearance service, found August 13, carries 929 records and reads as posted rather than measured (§7), so Kansas should not be counted in this group at all.
Missouri, Colorado, Illinois, and Oklahoma disagree with the federal record at rates (69–99%) that no amount of re-inspection explains. Their delta distributions give each away.
Missouri is the cleanest tell: of its 859 differing bridges, 503 sit at exactly −2 inches. A single sharp spike is not drift — it is written policy: MoDOT's engineering policy guide directs Low Clearance signs to be posted exactly 2 inches below measured clearance, allowing for packed snow and ice. Colorado shows the same shape blurred: 91% differ, median 3.2″ below the NBI — matching the 3-inch signing allowance that Texas, Washington, and New Jersey document in their own manuals, and that the federal MUTCD permits up to 3 inches in frost-prone areas. Illinois' notes already concede it: a "permit/obstruction layer, not an NBI table" (69% differ, median gap 4″).
Oklahoma is not comparable at all. 1,396 of 1,405 matched bridges differ; the median sits 6.5 feet below the federal value. The ratio rules out a clean unit error (meters misread as feet would be a 3.3× gap, not this). Whatever UNDERCLEAR measures, it is not NBI item 54B, and it should not be auto-filled as an official clearance until identified.
| State | Layer | Comparable | >1″ | >6″ | Median Δ | Reading |
|---|---|---|---|---|---|---|
| IL | IDOT Vertical Clearance | 1,932 | 1,326 (69%) | 469 | +1.1″ | Permit/obstruction points, not an NBI table |
| MO | MoDOT Vertical Clearance | 959 | 859 (90%) | 203 | −2.0″ | Fixed ~2″ offset — routing product |
| CO | CDOT Vertical Clearances | 643 | 588 (91%) | 213 | −3.2″ | Posted-clearance behavior |
| OK | ODOT UNDERCLEAR | 1,405 | 1,396 (99%) | 1,370 | −78″ | Unknown quantity — not item 54B |
For completeness, the identical comparison was run across all seventeen dated clearance-verified sources — 28,796 more bridge pairs. Three stories emerged, and two discovery sweeps (below) added five more states, closing the audit at 45,724 pairs across 32 datasets.
The feed states validate the method. Iowa, Texas, Idaho, Louisiana, Utah, Hawaii, and Vermont agree with the federal record on 97–100% of bridges — as they should, since these layers are the state's NBI submission. Alabama, Connecticut, Kentucky, Ohio, and Massachusetts follow at 85–93%, their differences concentrated where state data postdates the 2023 snapshot. If the comparison methodology produced artifacts, it would produce them here too; it doesn't.
New York is a posted-clearance state — by statute. 694 of 700 comparable bridges differ, median −12.1″, and 330 of them sit at exactly −12″. That is not drift; it is law. 17 NYCRR § 2B.108 defines New York's legal overhead clearance as one foot less than measured clearance — New York is the only state that posts a full foot low (elsewhere the allowance is a few inches at most). The audit recovered the statute from the numbers alone before the statute was consulted. New York's layer belongs in §5's different-product class, labeled posted, not measured — which is exactly how its own field names (POSTED_VRT_CLRNC_UNDER) describe it.
Wyoming shows what fresh data looks like. WYDOT's June 2026 measurements — the newest in this entire audit — differ from the 2023 federal record on 57% of matched bridges, two-sided, exactly the signature of active re-measurement against an aging snapshot.
Three states were inconclusive rather than clean: New Hampshire's IDs and geometry both failed to align (1 matched pair), Washington’s service returned only 308 rows (16 matches), and Kentucky’s server rejects pagination so only its first 1,000 records were compared. Both were solved on August 13 and neither was a data problem: WSDOT publishes a separate BridgeVerticalClearance service carrying 2,979 usable clearances, and Kentucky’s layer, while it refuses resultOffset, still answers returnIdsOnly — so all 3,970 of its records can be walked in ID batches. Missouri, excluded here entirely for rejecting bulk queries, opened the same way.
| State | Comparable | >1″ | >3″ | >6″ | Share >1″ | Median Δ | Reading |
|---|---|---|---|---|---|---|---|
| LA | 1,460 | 4 | 4 | 2 | 0.3% | — | NBI feed; near-perfect |
| VT | 587 | 5 | 3 | 2 | 1% | — | NBI feed; near-perfect |
| IA | 1,822 | 43 | 23 | 8 | 2% | −2.2″ | NBI feed |
| TX | 10,679 | 246 | 152 | 108 | 2% | −1.7″ | NBI feed; largest sample |
| UT | 1,135 | 18 | 11 | 7 | 2% | −5.2″ | NBI feed |
| ID | 547 | 17 | 8 | 5 | 3% | +1.3″ | NBI feed |
| HI | 199 | 5 | 4 | 3 | 3% | +3.1″ | NBI feed (2019 vintage) |
| AL | 1,805 | 129 | 98 | 29 | 7% | −3.6″ | Mostly agrees |
| CT | 1,000 | 87 | 25 | 11 | 9% | −1.1″ | Mostly agrees |
| KY | 92 | 11 | 8 | 6 | 12% | +2.7″ | Partial (first 1,000 records) |
| OH | 5,451 | 751 | 175 | 102 | 14% | −1.1″ | Post-snapshot updates |
| MA | 2,653 | 402 | 211 | 104 | 15% | −1.2″ | Post-snapshot updates (spatial join) |
| RI | 385 | 156 | 78 | 52 | 41% | −1.6″ | Post-snapshot updates (spatial join) |
| WY | 264 | 150 | 81 | 47 | 57% | +1.1″ | Freshest data in audit — genuine drift |
| WA | 16 | 14 | 14 | 12 | 88% | +7.5″ | Inconclusive (layer served 308 rows) |
| NH | 1 | 1 | 1 | 1 | — | — | Inconclusive (no ID or spatial alignment) |
| NY | 700 | 694 | 685 | 674 | 99% | −12.1″ | Posted clearance — 330 bridges at exactly −12″ |
To leave nothing unexamined, every one of the 24 uncompared jurisdictions was swept twice more — first re-probing existing layers field by field and searching the public ArcGIS ecosystem, then walking each state DOT's own server catalog service by service, layer by layer. Five states turned out to be comparable after all:
Virginia's clearance data was hiding in plain sight — in its own existing layer, stored as feet-and-inches text ("79′ 9″") that automated numeric mapping deliberately skips. Parsed for this audit and joined on FEDERAL_STRUCTURE_ID, it revealed the third fixed offset of this report: 2,183 of 2,717 differing bridges sit at exactly −3″. Like Colorado, this matches the common 3-inch signing convention; no written VDOT policy was located, so it is reported as observed. North Carolina has a dedicated NCDOT minimum-underclearance service (3,274 records with Safe/Caution status flags) — a routing product that skews low with no single offset. Pennsylvania publishes over-deck clearance (item 53) on 254 of its 25,491 records — the 96 matchable pairs mostly agree. Maryland's 143-bridge restriction list parses to 31 small-but-honest pairs. And the catalog walk surfaced Maine's Bridge Restrictions layer (1,020 records, clearance published in feet-inches text, inches, and meters at once) — which revealed a fourth fixed offset: 217 of its 470 differing bridges sit at exactly −2″, the Missouri-style snow-and-ice allowance. One telling detail: the layer carries both a "measured" and a posted field, and they are identical on all 1,020 rows — even a state that models the distinction publishes only the posted number.
The sweep also closed the book on the rest: Florida's only find was a 101-bridge wildlife-study layer of over-water clearances (not comparable), Montana's a sentinel-riddled county subset, and the remaining sixteen jurisdictions plus MS and NM yielded nothing with a public clearance value. What is not in this audit does not publicly exist.
| State | Comparable | >1″ | >3″ | >6″ | Share >1″ | Median Δ | Reading |
|---|---|---|---|---|---|---|---|
| VA | 2,767 | 2,717 | 1,282 | 146 | 98% | −3.0″ | Posted-style — 2,183 at exactly −3″ |
| NC | 2,614 | 954 | 686 | 524 | 36% | −4.8″ | Routing product (Safe/Caution flags), skews low |
| PA | 96 | 20 | 13 | 9 | 21% | −1.5″ | Over-deck item 53 only (254 records populated) |
| MD | 31 | 24 | 14 | 8 | 77% | +2.9″ | Restriction-sign subset; small-n |
| ME | 502 | 470 | 195 | 138 | 94% | −2.2″ | Posted-style — 217 at exactly −2″ |
The SCDOT low-clearance service (BRI_LOW_CLEARANCE) now returns a total of 2 records. It was recorded as populated when ground-truthed on July 13, 2026, and this report read the drop as a wipe. An exhaustive sweep on August 13 suggests otherwise. All 1,480 services in SCDOT’s ArcGIS org were enumerated: the agency publishes a current, comprehensive bridge inventory (Bridges_singlept_June2026, 10,394 structures) that deliberately carries no clearance field, a HtRestricted_Bridges_June2026 layer with 3 records, and this one with 2 — and the 2 are the same structures as the 3. Two independent SCDOT datasets agree the state restricts about three bridges. No SCDOT self-hosted server exists and its open-data hub is empty. The more useful finding is the gap: SCDOT publishes 3 height-restricted bridges while the federal record shows 184 South Carolina structures under 16 ft, 17 under 14 ft and 9 under 13′6″. A router trusting the state’s restriction list would miss structures the federal record flags as low. Either the dataset is being republished or it has been abandoned; either way the source is currently empty in practice, and any assumption of South Carolina coverage from it is wrong.
Every query to gis.massdot.state.ma.us returned a Web Adaptor "Application Error" page on July 30, and this report originally recorded the server as down. That diagnosis was right but the status is no longer current: the service was answering again by July 31 — which is where §6's 2,653 comparable Massachusetts bridges come from — and a re-check on August 4 returns the full 8,426 records. Nothing about the schema changed. The episode is worth keeping in the record for a different reason: a public inventory can vanish and return within a day, so any system that treats a source's silence as "no bridges here" will occasionally be confidently wrong.
KDOT's layer has 5,579 records but only 19 fell within 30 m of a comparable federal bridge, and this report originally attributed that to misplaced or misprojected points. That was wrong. Re-checked on August 3: the layer is native to wkid 6923 (Kansas Regional Coordinate System) and reprojects correctly to WGS 84. The real cause is the comparison population — only 8.3% of Kansas federal records (2,079 of 24,907) carry a usable item 54B (2,101 on a re-check August 6 — the federal layer moves), because most Kansas structures cross water or rail rather than a highway. There was simply very little to match against. Kansas’s 14 comparable pairs were too few to characterise the state.
Resolved August 13. KDOT does publish a proper clearance dataset — Structures/Vertical_Clearances, split into three layers by height band, carrying 929 records against the 24 usable values in the State_Bridges layer this report originally tested. Compared against the federal record it yields 832 pairs with a median of −3″ and 56% sitting at exactly that — a clean posted offset. Kansas is not an outlier or a broken layer; it was a wrong layer. It joins the fixed-offset states.
Reading it safely required a code change. KDOT publishes one clearance per road beneath a structure, VERT_CLEAR1 through VERT_CLEAR6, and the controlling route is frequently not the first: taking only VERT_CLEAR1 would over-report 311 of the 929 structures, by a median of 4″ and as much as 176″. The app and the exchange now take the minimum across every mapped route column.
With records now flowing into a shared database, source freshness can be measured rather than assumed. Ranked by median inspection date, the current leaders are Ohio (2025-10, 34,918 dated records, 96% inspected within two years), Rhode Island (2025-07), Massachusetts (2025-06), New York (2025-04) and New Hampshire (2025-04). Ohio is the standout: a full-scale inventory kept genuinely current, and the model worth pointing other states at.
Alabama is not stale-dated — it is undated, wearing a borrowed date. This report initially read ALDOT’s 2011 median as an inspection date and concluded the federal record was eleven years fresher. That was wrong. Re-checked August 6: ALDOT’s bridge layer publishes no inspection date at all. Its only date fields are RATINGDATE — a load-rating date, which changes far less often than the biennial inspection — plus row create/modify stamps. The app substitutes RATINGDATE for item 90, which is what produced the 2011 figure. Alabama therefore belongs conceptually with the undated cohort of §1, not with the stale ones, and no state-versus-federal freshness comparison can be made for it either way.
A search of ALDOT’s own ArcGIS server for a better source found none: GeoGISBridge carries 23,246 records but no clearance and no dates, and Posted_Bridges does publish a real INSPDATE but covers only 1,922 weight-posted off-system structures. The inspection dates exist inside ALDOT; they are simply not in the published clearance layer. The same sweep across Vermont, Idaho, Hawaii and Indiana found no fresher alternative either — Vermont serves byte-identical data from three separate layers, all ending December 2020.
A precision note on that framing: the federal layer is a 2023 publication, but the inspections beneath it median 2021–2022 on the NBI’s 24-month cycle. Where this report says “the 2023 federal snapshot,” read the vintage of the underlying inspections as one to two years older again.
A field-by-field sweep of all 23 undated schemas turned up three facts the surface audit missed. Indiana has a real per-record date after all: DATE_COLL, the LiDAR collection date, populated on 4,532 of 5,207 records — median June 2020, latest August 2025. Mapping it converts Indiana from an undated source into one the freshness rule can arbitrate per bridge. New Jersey's January 2024 date is a republication artifact, not data currency. This report originally read that timestamp as evidence the layer was newer than the 2023 federal snapshot as a set. That was wrong. Re-checked August 4: the service reports schemaLastEditDate and dataLastEditDate as identical to the millisecond — the signature of a bulk re-upload rather than incremental maintenance — and NJDOT's own service metadata states the layer “is in mature support and is no longer updated,” is “available for historical reference only,” and has not changed since its creation in 2010. Its per-record date fields ending in 2010 are therefore accurate, not legacy relics. The consequence is operational: New Jersey had been flagged in the app as a source that outranks the federal record, on the strength of that 2024 date. That flag was removed on August 4 — the app no longer prefers a 2010 dataset over the 2023 national snapshot for New Jersey. Minnesota, which exports daily from its Structure Information Management System, keeps the flag. And DC's layer shows active editing from September 2023 through May 2026 — a maintenance signal, though an edit date is not an inspection date. Everything else held: the remaining candidates were empty columns, snapshot-extraction stamps, or unrelated fields.
Every figure so far is a share of comparable bridges, which invites the obvious question: how many bridges is the country actually arguing about? The National Bridge Inventory holds 621,581 structures. The overwhelming majority of them have no clearance to get wrong.
NBI item 54A records what passes beneath a structure, and it settles the question directly. Queried against the live federal layer on August 4, 2026:
| Code | Feature beneath the structure | Bridges | Share |
|---|---|---|---|
N | Not applicable — water, valley, ravine | 511,456 | 82.3% |
H | Highway beneath — the population that governs trucks | 91,151 | 14.7% |
R | Railroad beneath — clearance over track | 18,974 | 3.1% |
| All bridges | 621,581 | 100% | |
82.3% of American bridges have no vertical underclearance at all. They cross water, a valley, or a ravine, and their empty item 54B is correct rather than missing. This is the Kansas finding of §7 generalised to the whole country: a layer that looks sparse on clearance is usually reporting a sparse population, not failing to publish. Any audit that measures clearance coverage against the full bridge count — including, until this section, the framing of this one — overstates the gap by roughly a factor of six.
Of the 110,125 structures with something beneath them, the railroad cases are clearance over track, a different audience with a different rulebook. The population that governs truck routing is the 91,151 bridges with a highway underneath. Of those, 89,962 carry a usable item 54B and 1,169 have a road beneath but no published clearance. That last number is the true federal data gap, and it is remarkably small — the federal record’s problem is not absence, it is the currency and provenance this report documents everywhere else.
| Published clearance | Bridges | Share | Why it matters |
|---|---|---|---|
| under 17′0″ | 62,064 | 68% | Two-thirds of everything with a road beneath it |
| under 16′6″ | 45,822 | 50% | The median. Six inches of margin over the design minimum |
| under 16′0″ | 31,910 | 35% | Any legal-height load has some prospect of contact |
| under 15′6″ | 25,967 | 28% | |
| under 15′0″ | 18,539 | 20% | Standard 13′6″ trailers lose routine margin |
| under 14′6″ | 8,162 | 9% | |
| under 14′0″ | 2,665 | 3% | Signing and permit routing become mandatory |
| under 13′6″ | 1,477 | 1.6% | Below the common legal maximum — strike candidates |
Where the threshold is drawn moves the answer more than it looks. 16′6″ is the median — half of every structure with a road beneath it sits below it. Moving from 16′0″ to 16′6″ adds 13,912 bridges, a 44% increase for six inches of definition, because the distribution is at its densest exactly there: 30,154 structures fall in the single foot between 16′0″ and 17′0″. That is presumably design practice piling up just above a 16-foot minimum. Both figures are honest and they answer different questions — 32,000 is the population a legal-height load can actually hit, 46,000 is everything with less than six inches of margin over the design minimum. The alarming tail is small either way.
These are federal item 54B values, which are measurements. The posted count is higher: a Missouri or Kansas structure signs 2–3″ below measured and a New York one a full foot, so more bridges are signed under any given threshold than are measured under it.
The 91,151 are not all state-DOT structures, and the difference matters to anyone assembling a feed. NBI item 22 codes ownership, and 9,552 bridges belong to toll authorities — 7,825 to state turnpike and thruway commissions, 1,727 to local ones. Because turnpikes are grade-separated by design, they are far more likely than average to cross something: 6,969 carry a usable clearance and 2,691 sit under 16 feet, which is 8.4% of the entire operational population, concentrated in New Jersey (607), New York (584), Pennsylvania (286) and Ohio (281).
They are not a separate data problem. Checking structure by structure, the state DOT layers already carry them — 100% in Texas, 99% in New York, 79% in Ohio — so a reconciliation layer built on state and federal sources picks up the turnpikes for free. Ohio’s missing fifth is the exception worth chasing, the Ohio Turnpike being a separate commission from ODOT.
This reframes what the preceding sections found. The 194 bridges reading more than six inches low on current state data, and the 2,964 disagreeing by more than an inch, are not a rounding error against an unmanageably large inventory — they are a meaningful fraction of a population small enough to fix outright. The barrier to a trustworthy national clearance record is not the number of bridges. It is that no one owns the reconciliation between the federal record and the fifty state layers that disagree with it, which is the subject of the remaining sections.
The audit produced thirty concrete changes to the app and the exchange behind it. They fall into four groups, and the pattern is worth stating before the detail: almost none of them were measurement problems. They were labelling, arbitration and provenance problems — cases where a correct number could not be interpreted, or was interpreted by a rule that turned out to be wrong.
Say what kind of number it is. Oklahoma’s UNDERCLEAR field is no longer read
as a clearance, because it is not item 54B. Missouri, Colorado, Illinois and New York are labelled posted
and never diffed against a measured value. Virginia and Maryland became readable at all once a feet-and-inches
text unit existed — and that parser was then corrected, because it took the first value in a string like
“16′-0″ / 14′-6″” instead of the controlling one, failing in the unsafe
direction every time.
Fix how sources are arbitrated. The safety rule — any disagreement beyond six inches resolves to the lower value — now runs before any freshness test rather than after it, which is the difference between firing on a small minority of merges and firing on all of them. Undated sources no longer outrank dated ones on source priority alone; where freshness cannot be established, the controlling value governs. Minnesota keeps an explicit currency override; New Jersey’s was withdrawn.
Show the disagreement instead of resolving it silently. Where two sources report the same structure, the app now displays the spread and both values with provenance, banded by this audit’s own distributions. Degraded services are surfaced as degraded rather than as empty areas.
Carry provenance, and publish our own accuracy. Every redistributed record now travels with
its agency’s credit, licence status and caveats. Records carry how they were measured — the method
field §12 lists as absent from every published standard. And the calibration checks inspectors voluntarily run are
aggregated into an open accuracy profile at /v1/accuracy, which currently reads n = 0 and
says so.
The full dated ledger — thirty entries with status, date and rationale — is in the appendix.
The strategic reading of these findings: the two-population split is not a data-quality nuisance — it is the product. The market already contains two legitimate clearance quantities, measured and posted, published inconsistently across fifty state agencies and reconciled by no single public dataset. The path to ELD vendors and mapping partners is a nationally consistent dataset that carries both, plus field observations, kept current through a live exchange rather than annual snapshots.
The measured-posted gap is itself institutional knowledge worth encoding: it is per-state policy — 2″ in Missouri and Maine, 3″ in Texas, Washington, and New Jersey (and observed wholesale in Virginia's records), a full 12″ in New York by regulation — scattered across engineering manuals no routing engine reads today. Because those offsets are documented, an exchange can even carry a derived counterpart value for posted-class states, flagged as derived and never as measured.
The delivery side of this is no longer hypothetical: the app's SNBI export was verified item-by-item against FHWA-HIF-22-017, its bridge-management CSV uses column names taken from a live AASHTOWare BrM (Pontis) deployment with values coded per the NBI Coding Guide, and its GeoJSON conforms to RFC 7946 — so a partner receives data in the formats their systems already read.
Each value carries its own source, date, and confidence; the state presets stop being lookup fallbacks and become labeled ingestion feeds into the exchange. What partners will evaluate: a delta/subscription API rather than bulk downloads; a per-state quality scorecard (this report is issue No. 1 of that series); public-domain sourcing with routing-liability language; and freshness a 2023 snapshot cannot match — a record that updates days after a restriping, not years.
None of this requires new law or new money — the 2022 NBIS final rule already obligates states to submit a complete SNBI-based re-inventory by March 15, 2028, and every actor below is one policy or engineering decision away from a live national clearance record. What each can do, starting now:
The preceding section says what each actor should do. This one is the engineering: what the system is, what a record has to carry, and what it costs. §13 then covers the one input none of it can obtain from another dataset — a measurement. None of it is speculative — every component below is running today at national scope, harvesting 47 sources into a single reconciled store, and the numbers quoted are measured from that system rather than estimated.
Five components, and the fourth is the one that does not exist anywhere today.
The single highest-leverage decision is the record contract. Most of this report's findings are failures of metadata, not measurement — a correct number that nobody could interpret.
| Field | Why it is not optional |
|---|---|
structure_id + state | SNBI B.ID.01. Without a stable key nothing can be reconciled; six states share no identifier with the federal record at all and must be matched spatially. |
clearance_in | One quantity, one unit, integer inches. Six unit conventions in the wild is the single largest source of silent error. |
value_class | measured / posted / observed. The missing field. Missouri publishing 2″ low is correct behaviour that reads as a 2″ error to every consumer alive today. |
method | How it was obtained — LiDAR, laser, tape, total station, coded from a plan. Indiana’s 2020 LiDAR sweep is more trustworthy than a 2025 visual estimate, and no published standard can say so: SNBI defines four vertical-clearance items (B.H.12, B.H.13, B.N.02, B.N.03) and attaches no instrument or method qualifier to any of them (ref. 2). The exchange described here carries it as a required field — see §13. |
measured_at | A real date on every record. 23 of 47 sources publish none, and one substitutes a load-rating date (§7). |
source + licence | Whose number it is and whether it may be redistributed. Only the federal record is affirmatively public domain. |
agreement | Spread across sources, and the count reporting. The output of reconciliation, and the field that makes disagreement actionable instead of invisible. |
The instinct is that a national real-time system is a large undertaking. The measurements say otherwise. The addressable population is 91,151 structures with a highway beneath them, of which 31,910 sit under 16 feet (§8). At roughly a kilobyte per record with full provenance, the entire national clearance record — every source's opinion of every relevant structure, with history — is on the order of a few hundred megabytes. That is a rounding error in infrastructure terms.
The system described here currently holds 183,407 records across 47 sources and runs inside a serverless free tier. The binding constraint has never been storage or compute; it is politeness to the source services, which is a scheduling problem. Refresh cadence should follow the data: a state that re-inspects on a 24-month cycle does not need hourly polling, but a strike report needs to propagate in minutes.
Three problems, and none of them are the ones people expect.
Identity. Matching a state record to a federal one is unsolved at the margin. Six of the states in this report share no usable identifier with the NBI and had to be matched by proximity, which fails exactly where it matters most — parallel spans and multi-level interchanges, the structures most likely to carry a low clearance. This is the single biggest technical obstacle and the SNBI re-inventory is the moment to fix it, because a shared key imposed once removes the problem permanently.
Ownership. There is no organisation whose job this is. FHWA publishes; states inspect; routing vendors consume. Reconciliation belongs to nobody, which is why a gap this measurable has persisted this long. The technical work is a few months; the governance question is the actual project.
Liability. The moment a system aggregates safety-critical numbers, it inherits an exposure none of its sources carry individually. That is manageable — carry every agency's own disclaimer with its data, never assert more precision than the source supports, and resolve every unresolvable conflict downward — but it has to be designed in from the first record, not retrofitted.
Everything in §12 assumes something this report has so far treated as a given: that somebody can produce a trustworthy clearance number for a specific structure, on demand, today. Reconciling published records only gets you the disagreement. Resolving it needs a measurement, and the measurement is the part no aggregator can obtain from another dataset.
ar_field_measurement, which
is a distinct method from a harvested inventory row and is treated as such by the merge: a field measurement
is exempt from the conservative-conflict rule, because that rule exists to distrust stale data files, and an
inspector who stood under the bridge is not one.NBIFIELDS-shaped CSV, RFC 7946 GeoJSON, RFC 4180 CSV. The point is that
a field measurement arrives as something a bridge management system can accept, not as a photograph and an
email.Take the concrete case this report keeps returning to. A structure where the state layer reads 14′6″ and the federal record reads 15′6″ is, today, unresolvable from a desk — two numbers, a foot apart, each from a credible source, with no third opinion available at any price. The reconciliation layer can flag it. It cannot settle it.
One inspector, one measurement, a few minutes: the record now carries a dated, located, graded observation with a device and an operator attached to it. That resolves the specific structure, and it does something more useful besides — enough observations against a given state layer measure whether that layer runs high, low, or true, at which point every unmeasured bridge in the state can be characterised without visiting it. That is how 32,000 structures become tractable without 32,000 site visits.
The honest objection to an AR clearance measurement is how accurate is it, really — and the usual answer is a vendor-run trial across a handful of structures, which nobody has reason to trust.
Being free makes a better answer available. Every calibration check an inspector runs measures something of
known dimension and records the signed error, and those errors publish to the exchange alongside the measurement.
Aggregated, they are a continuously updating accuracy profile drawn from real devices, real lighting and real
structures — open at /v1/accuracy, broken out by confidence grade and device model, and auditable by
anyone. It reports the count before any statistic, publishes no summary below thirty samples, and reports signed
error alongside absolute, because reading high is the direction that puts a vehicle into a structure and
a systematic bias is a different defect from scatter.
That figure currently reads n = 0, and the endpoint says so rather than estimating. This is the mechanism, published before it is flattering. It is also the part that only works at scale: a paid tool measuring a few hundred bridges a year cannot produce this, while a free one in enough hands produces a stronger accuracy claim than any controlled study, and a stronger one every month.
Two constraints keep that figure honest. It is scoped strictly to measurements the app itself took — a delta recorded against a total-station reading says nothing about the AR engine — which is why method is a stored field rather than an assumption. And calibration stays voluntary. A figure built from checks people chose to run is worth more than one extracted by making the app refuse to work, and an inspector entering a tape measurement has nothing to calibrate in the first place.
The same property applies to coverage. One phone measures one bridge; ten thousand phones on ordinary inspection rounds cover the 31,910 structures that matter without anyone funding a survey programme. And because the app reports posted clearance as controlling wherever it differs from a measurement — signage governs a driver legally, whatever an instrument says — those observations arrive already reconciled against the two records that disagree, rather than adding a third opinion to the pile.
Every URL below was checked and returned successfully on August 6, 2026. Where a practice is documented in the data but no written policy could be located, it is listed as observed, uncited rather than given a source — those are inferences from the measurements, not citations.
Posted clearance is measured clearance minus a state safety allowance. This report recovered the Missouri and New York offsets from the data before the policies were consulted; both then matched.
FEDERAL_STRUCTURE_ID column alongside its own numbering; joining on it (August 13) raises the comparison from zero matched pairs to 7,929, of which 80% sit at exactly −3″. Still no written VDOT policy located, but the regularity is no longer in doubt.Vertical_Clearances service, 56% at exactly −3″ (verified August 13). Not previously characterised.BRM_PONTIS_SYS.NBIFIELDS table schema, as published
by Kentucky Transportation Cabinet through its public NBI feature service (reference 7).“Shipped” means live in the app’s source registry and served to installed devices. “Reverted” and “Open” are exactly what they say.
UNDERCLEAR as an official clearance until the field is identified. Median 6.5 ft below federal values; demonstrably not item 54B. The source stays identity-only in the interim.DATE_COLL as the inspection date, promoting Indiana to a dated source. 4,533 records carry a real LiDAR collection date (§7); per-record freshness arbitration replaces guesswork. Completed August 5: the mapping had reached the app but not the harvester, so the shared database was still storing every Indiana record as undated. Note the dates themselves are not fresh — 77% come from a single 2020 collection campaign, median 2020.NCDOT_Min_Vert_Und_Clear service (3,274 records); units confirmed as true decimal feet, not feet-inches, because sampled values carry fractional parts above .11 which a feet-inches decimal cannot produce. Classed posted — it is a Safe/Caution routing product. Maine proved the more valuable find: its Bridge Restrictions layer publishes the measured clearance AND the posted value as separate fields, and the posting is the measurement minus exactly two inches on 962 of 962 sampled rows (100.0%). Almost no state does this — it is precisely what §11 asks of them. An earlier edition of this report claimed those fields were identical; they are not.VCLROVER, MIN_OVER_VERT_CLEAR_LEFT and _RIGHT — are NBI item 53, clearance OVER the deck: a different quantity. Mapping them as underclearance would repeat the Oklahoma error this ledger opens with, so Pennsylvania stays identity-only.NJDOT NBI (retired layer, 2010 data) rather than deleted, because the federal sweep has not yet reached New Jersey and deleting would leave the state uncovered. Agencies do not announce retirement — they quietly edit a description — so /v1/audit-status now scans service metadata for retirement language on every check.UNDERCLEAR as a clearance — 9,828 rows, including 143 sub-four-foot values — while the app correctly ignored it. Third such divergence between the two registries after Indiana and New Jersey, so it is now a checked condition: check_registry_drift.py compares every field that decides a published value and fails on any mismatch.VERT_CLEAR1–6 columns would otherwise over-report 311 of 929 structures by up to 176″. The controlling route is frequently not the first one listed.BridgeVerticalClearance service (2,979 usable, was 307) and Kansas to Vertical_Clearances (929, was 24). Missouri and Kentucky both refuse resultOffset but both answer returnIdsOnly, so the harvester gained an ID-batch mode: Missouri went from unreachable to all 5,949 records, Kentucky from its first 1,000 to all 3,970.FEDERAL_STRUCTURE_ID rather than VDOT’s own numbering. August 13. Virginia could not be reconciled at all — 28,000 rows, zero matched pairs — because its structure numbers share no format with the NBI. VDOT publishes the federal ID in a separate column; using it yields 7,929 pairs and turns the −3″ offset from an inference into a measurement.method field §12 lists as missing from every published standard; it is the one part of that contract we could implement unilaterally./v1/accuracy. Added August 6. Reports sample count before any statistic, publishes nothing below thirty samples, and reports signed error alongside absolute because reading high is the unsafe direction. Scoped strictly to measurements the app itself took, and calibration is never required. It currently reads n = 0 and says so — the mechanism is published before it is flattering.Every figure in this report is reproducible from two files, downloadable here and embedded in this page (no external requests):
The CSV lists only differing pairs (state vs federal clearance >1″ apart, both values in inches, join method per row); agreeing pairs are counted in the JSON aggregates. Spatial-join rows carry both the state and NBI structure IDs.
| Category | Count | Jurisdictions |
|---|---|---|
| Compared — undated sources (§3–5) | 10 | CO, DC, DE, IL, IN, KS, MN, MO, NJ, OK |
| Compared — dated sources (§6) | 17 | AL, CT, HI, IA, ID, KY, LA, MA, NH, NY, OH, RI, TX, UT, VT, WA, WY |
| Compared — discovery-sweep recoveries (§6) | 5 | MD, ME, NC, PA, VA |
| Identity only — no public clearance value | 15 | AK, AR, AZ, CA, GA, MI, MT, ND, NE, NV, OR, SD, TN, WI, WV |
| Source currently dead (§7) | 1 | SC |
| No public bridge source found | 3 | FL, MS, NM |
Every jurisdiction with a public clearance value — numeric or text — has now been compared: the 45,724 pairs above are the full comparable universe, confirmed by two exhaustive discovery sweeps on August 1, the second walking every state DOT server catalog layer by layer. The federal NBI remains the only clearance source for the 19 identity-only/no-source jurisdictions.
Parameters: federal baseline geo.dot.gov …/National_Bridge_Inventory/FeatureServer/0, items 54B/53, sentinels 0 and ≥30 m dropped; valid range 48–1,100″; spatial radius 30 m with closest-clearance disambiguation among co-located spans; difference threshold 1″.
Reproducibility: all sources are public government endpoints, queried live on July 30, 2026; the complete inputs to every figure are in the two files above. Analysis scripts are available on request.
Disclaimer: this report is informational. Clearance values are derived from public government datasets and are point-in-time; they are not a substitute for posted signage, official permits, or direction from the owning agency. Discrepancies identified here describe differences between published datasets, not determinations about any physical structure.