Talk

Discovering “Bologna Città 30” with Floating Car Data and Python

Thursday, May 28

11:45 - 12:15
RoomLasagna
LanguageEnglish
Audience levelBeginner
Elevator pitch

In January 2024 Bologna became the first large Italian city to adopt a citywide 30 km/h speed limit. Using Floating Car Data and Python, this talk reveals how real driving speeds actually changed—beyond what traditional traffic statistics can capture.

Abstract

Since January 2024, Bologna has been the first large Italian city to adopt a 30 km/h speed limit across almost its entire urban road network. The results have been very positive, with a reduction in road accidents—especially those involving pedestrians—and a decrease in motorized traffic in favor of more sustainable mobility. Such a widespread measure, however, raises a key question: how have real driving speeds changed, and how well do streets actually comply with the new limit?

In this talk, we use Floating Car Data (FCD) to analyze the impact of “Bologna Città 30,” going beyond traditional aggregated statistics. The datasets, provided in GeoJSON / Shapefile format, describe observed speeds on individual road segments, with hourly resolution over 24 hours and across an entire month of observation, both before and after the introduction of the speed limit. The first part of the talk shows how to integrate GIS tools and Python, enabling an immediate spatial interpretation of speed patterns and before/after differences. The same data are then processed in Python for quantitative analysis.

Real-world speeds are analyzed by time of day, highlighting how the effect of the speed limit varies between peak hours, nighttime, and periods of smoother traffic. Using histograms and speed distributions, the talk directly compares the “before” and “after” scenarios, showing not only changes in average speeds but also shifts in distribution shapes and variability.

A central part of the analysis focuses on Python-based clustering techniques to classify road segments according to users’ behavior: which and how many streets show minimal speed changes, which experience a significant slowdown, and which were already driven at low speeds before the introduction of the limit. This classification allows the Città 30 policy to be interpreted not as a uniform phenomenon, but as a set of heterogeneous responses across the urban road network.

Finally, the talk introduces a 30 km/h compliance metric, built from observed speed distributions. This metric quantifies, for each road segment, how closely real driving behavior aligns with the imposed speed limit, providing a replicable tool for monitoring and evaluating Zone 30 policies—and for telling how much the city is truly becoming a “Città 30.”

The talk combines Python, real-world data, and spatial analysis to offer a concrete example of how data science can support urban policy-making, delivering measurable, transparent, and easily communicable indicators.

TagsGEO and GIS, Scientific Python, Data Science & Data Visualisation
Participant

Fabio Lamanna

I am a freelance Civil Engineer, working on projects and collaborations mainly about urban mobility, traffic science and transportation networks. I love cats, listening to a lot of music and collaborating to some Python meetups in Treviso and Venezia.