Crosswalks of Italy

How safe are pedestrian crossings across Italian cities? A data investigation into infrastructure, risk, and the widening gap between north and south.

The question

How safe is crossing the street in Italy — and does it depend on where you live?

Every Italian city manages its own street infrastructure. Painted crossings are the cheapest, most basic piece of pedestrian safety a city can provide. So we counted them.

The data

22,290 crossings across 14 provincial capitals.

We combined mapped pedestrian crossings from OpenStreetMap with ISTAT population figures and computed one score per city: crossings per 10 000 inhabitants. Per capita, not raw counts — a fair comparison between a city of 60 000 and one of 2.8 million.

The spread

Bolzano scores 58.4. Crotone scores 7.4.

That is a 7.9× gap between the top and bottom of this sample — for the same, most basic piece of pedestrian infrastructure. Both are small cities, so this is not a big-city-versus-small-town effect.

The finding

Northern cities average 41. Southern cities average 11.8.

A 3.5× difference between macro-areas. Every southern city in this sample sits below every northern one — the two groups do not even overlap.

But…

With only 14 cities, couldn’t this split be luck?

Fair question. If geography had nothing to do with crosswalk provision, the chance that all 6 southern cities land in the bottom 6 ranks is exactly 1 in 3,003 — about 0.033%. Random luck is not a plausible explanation.

But… (again)

Is it really geography — or just city size?

Also checkable. The correlation between population and score in this sample is r = -0.07 — essentially zero. Big cities are not systematically better or worse. Roma (21.1) and Napoli (14.8) underperform the sample average of 26.6, but tiny Crotone does worst of all.

The takeaway

Infrastructure is policy.

Neither chance nor city size explains the gap. What remains is the uncomfortable explanation: sustained local investment and planning tradition. Where you live determines how safely you can cross the street.

What the data shows

This is a per-capita infrastructure comparison, not a raw count leaderboard. A city with fewer total crossings can still rank high if it serves a smaller population well; a large metro can rank low even with thousands of crossings if provision does not keep pace with residents. Milano has 5,719 mapped crossings and Roma has 6,035 — but per 10 000 inhabitants, Milano provides roughly twice as much.

The headline pattern is the macro-area split. The 6 northern cities in this sample average 41 crossings per 10 000 inhabitants; the 6 southern cities average 11.8. More striking than the averages is the separation: the two groups do not overlap at all. The weakest northern city (Venezia, 26) still beats the strongest southern one (Bari, 18).

Could a 14-city sample produce this by chance?

This is the objection we took most seriously, because 14 cities is a small sample and formal tests can mislead at this size. So instead of a t-test we used an exact permutation argument, which needs no distributional assumptions. Under the null hypothesis — macro-area has nothing to do with crosswalk provision — every arrangement of the 14 cities across the ranking is equally likely. The number of ways to choose which 6 cities occupy the bottom 6 ranks is 3,003, and only one of those arrangements puts all southern cities there. That is a probability of 0.033% — well below any conventional significance threshold. The separation we observe is real, not sampling noise.

What the permutation argument does not fix is selection: these 14 cities were chosen for pipeline coverage, not drawn randomly from all 107 provincial capitals. The result is strong evidence about these cities and consistent with the well-documented north–south infrastructure divide, but scaling to the full set of capitals is the necessary next step before making national claims.

Ruling out city size

A natural alternative explanation: maybe big cities simply can't keep up — too much street network, too many residents. The data doesn't support it. The correlation between population and score across the sample is r = -0.07, indistinguishable from zero. The extremes make the point vividly: the best city (Bolzano, pop. 108,245) and the worst (Crotone, pop. 62,415) are both small. Roma and Napoli underperform, but as members of the southern-and-central pattern, not because of their size.

Big-city networks are genuinely harder to retrofit, and older street grids often prioritize vehicular throughput over pedestrian continuity. But the policy lesson from this sample is practical: crosswalk density tracks repeated, local execution — not city prestige, and not city scale.

What this measures — and what it doesn't

A painted crossing is provision, not safety. This story measures whether cities supply the most basic pedestrian infrastructure, not whether pedestrians survive using it. Crossing density is a plausible input to safety, and the macro-area gap matches long-standing regional differences in public investment, but connecting provision to injury outcomes needs accident data we have not yet joined. That is the follow-up story: ISTAT publishes road-accident microdata that can be matched to these same cities.

Data and methods

Sources. Pedestrian crossings were extracted from OpenStreetMap (highway=crossing nodes within municipal boundaries) — map data © OpenStreetMap contributors, available under the Open Database License (ODbL). Resident population per municipality comes from ISTAT (2023). The score is crossings per 10 000 inhabitants.

Sample. 14 provincial capitals selected for pipeline coverage, spanning 6 northern, 2 central, and 6 southern cities (macro-areas follow the standard ISTAT Nord/Centro/Mezzogiorno classification). This is not a random sample of all provincial capitals; see the discussion of selection above.

Statistics. The north–south comparison uses group means and an exact permutation probability for full rank separation (1 / C(14, 6) = 0.033%). The city-size check uses the Pearson correlation between population and score (r = -0.07). All figures are computed at build time from the published dataset — see notebooks/crosswalks_pipeline.py for the extraction pipeline.

Caveats. OpenStreetMap coverage itself can vary by region; systematically under-mapped southern cities would exaggerate the gap. We consider this the most important threat to validity and plan a completeness check against satellite imagery samples in the follow-up.

Data source: OpenStreetMap / ISTAT 2023 · © OpenStreetMap contributors (ODbL) · Last updated: 2026-02-27