I built a free neighborhood scoring tool for 50 European cities using OSM data
Posted by L_J_R on 3 April 2026 in English.Strado – Neighborhood Livability Scores from OpenStreetMap
I’ve been working on Strado, a free tool that scores every neighborhood across 50 European cities using data from OpenStreetMap. I wanted to share the project with the OSM community since it’s built entirely on your work.
What it does
Strado analyzes 22 categories of POIs from OSM – restaurants, healthcare, transit stops, parks, schools, nightlife, grocery stores, and more – and computes livability scores at the street level using an H3 hexagonal grid (resolution 9, ~174m edges).
The idea is simple: if you’re moving to a new city, you should be able to compare neighborhoods by what’s actually within walking distance. Not opinions, not sponsored listings – just data.
How it works
- I imported the full Europe PBF into PostgreSQL/PostGIS using osm2pgsql with a custom flex style
- POIs are extracted across 22 categories based on OSM tags (amenity, shop, leisure, healthcare, etc.)
- Each H3 hex cell gets a count of nearby POIs with k=1 neighbor expansion
- Livability scores are computed from essential categories (grocery, healthcare, transit, parks, education, safety)
- Activity scores come from lifestyle categories (dining, nightlife, cafes, culture, shopping)
- Everything is served as PMTiles vector tiles from Cloudflare R2 – no backend server needed
The scoring engine runs client-side in the browser using MapLibre GL JS. The entire infrastructure costs $0/month.
The data
- ~78 million POIs from OpenStreetMap
- 50 cities from London to Athens
- 22 scoring categories
- 20.5 million hex cells scored
Try it
- Interactive map – click any hexagon to see the score breakdown
- City pages – browse all 50 cities with neighborhood rankings
- Rome example – top neighborhoods, category breakdown, FAQ
All data is attributed to OpenStreetMap contributors under ODbL. Every page includes the attribution.
What I learned about OSM data quality
The coverage varies significantly across Europe. Western European cities (Paris, London, Berlin) have incredibly detailed mapping – you can score neighborhoods with high confidence. Eastern and Southern European cities are patchier, especially for healthcare facilities and transit stops. The Nordics have excellent cycling infrastructure data but fewer tagged restaurants.
Some categories work better than others with OSM data: - Excellent: dining, cafes, nightlife, shopping, parks - Good: healthcare, education, transit, grocery - Inconsistent: safety (police stations), financial (banks/ATMs), early education
I’d love to hear from mappers in cities where the data feels thin – what’s most worth mapping for tools like this?
Embeddable badges
I also created free embeddable SVG badges for all 50 cities. If you write about European cities or neighborhoods, you can embed a livability score badge on your site with a simple image tag.
Feedback welcome
This is a side project and I’m the only developer. If you notice data issues, missing categories, or have ideas for improvements, I’d appreciate hearing about it. The project is at strado.info.
Thanks to everyone who contributes to OpenStreetMap – none of this would be possible without your work.
Discussion
Comment from gileri on 4 April 2026 at 11:28
Nice tool, thanks!
Comment from chris_debian on 4 April 2026 at 12:20
Excellent job, well done.
Chris
Comment from JeremyCherfas on 12 April 2026 at 12:27
Very interesting. I had fun clicking around my own area of Monteverde Vecchio. My only comment is that I certainly do not equate the number or density of police stations with safety, but of course OSM does not include information about actual criminal activity.
Comment from L_J_R on 12 April 2026 at 13:10
The police station vs safety is a controversial subject. Ive received similar comments on reddit. That’s more of an indication… I tried to find crime data but there is nothing available that would allow for relatively easy import on eu scale. There is some data for specific countries that I’m planning to incorporate but that will happen only once the validity of this service is confirmed. Similar problem is with noise, I can do some simulation based on roads/streets/airports. Actual data is very limited. I hope this project will grow, so I can invest more time and resources into it, manually adding more data that is scattered across internet and maybe even asking users to report based on their experience…. Future will tell.