Note: This post was originally published by Luis Natera on his personal blog. It has been republished here as part of TYN Studio's content.
Urban mobility profoundly influences our health, mood, and quality of life. The 15-minute city concept offers a compelling vision: the city should provide us with access to all the necessary goods, services, and amenities in a 15-minute radius or less.

This isn't just an idealistic vision—it's a practical framework that software tools can help us achieve.
Evaluating Current Infrastructure
Software tools can evaluate current urban infrastructure by analyzing transportation networks, land use, and demographics. Specifically, Python libraries like OSMnx combined with OpenStreetMap data allow us to:
- Map the complete pedestrian and cycling network
- Identify all services and amenities
- Calculate actual travel times across different transport modes
- Identify gaps and underserved areas
What Makes a 15-Minute City?
The concept requires access to:
- Daily necessities: Grocery stores, pharmacies, post offices
- Healthcare: Doctors, clinics, hospitals
- Education: Schools, libraries, learning centers
- Recreation: Parks, gyms, community centers
- Social spaces: Cafes, restaurants, public squares
- Services: Banks, repair shops, local businesses
The Software Approach
Here's how technology helps:
1. Network Analysis
Using OSMnx, we can download and analyze the actual walking and cycling network:
import osmnx as ox
# Get the walking network
G = ox.graph_from_place('Amsterdam', network_type='walk')
# Calculate walking times between all points
travel_times = ox.distance.shortest_path(G, origin, destination)
This gives us real walking times, not straight-line distances. That matters because a destination 800 meters away might take 5 minutes or 15 minutes depending on the route.
2. Amenity Mapping
We can map all service locations using OpenStreetMap data:
# Get all grocery stores
groceries = ox.geometries_from_place(
'Amsterdam',
tags={'shop': 'supermarket'}
)
# Get all schools
schools = ox.geometries_from_place(
'Amsterdam',
tags={'amenity': 'school'}
)
3. Accessibility Calculation

For each neighborhood, we can calculate:
- How many amenities are within 15 minutes
- Which amenity types are missing or scarce
- Travel time to nearest essential services
- Areas of high vs. low accessibility
Identifying Improvement Opportunities
The analysis reveals:
- Underserved neighborhoods: Areas lacking key amenities
- Infrastructure gaps: Missing walking/cycling connections
- Optimal locations: Where new services would have most impact
- Network improvements: Which street connections would dramatically improve access
Combining Demographics with Accessibility
Demographics plus accessibility metrics enable customized, impactful planning:
- Aging populations need nearby healthcare and pharmacies
- Families need schools, parks, and safe walking routes
- Young professionals value transit connections and social spaces
- Low-income areas need affordable grocery stores and services
From Analysis to Action
The power of this approach is that it moves from vague goals ("make the city more walkable") to specific, measurable interventions:
- "Add a pedestrian bridge here to connect 5,000 residents to the nearest park"
- "This neighborhood lacks grocery stores—three potential sites would serve 10,000 people"
- "Improving this bike lane would cut commute times by 30% for 2,000 daily users"
The Path Forward
Creating 15-minute cities isn't about starting from scratch. It's about understanding what we have, identifying what's missing, and making targeted improvements. Software and location intelligence give us the tools to:
- Measure current accessibility
- Identify gaps and opportunities
- Prioritize interventions based on impact
- Track progress over time
The 15-minute city isn't just a nice idea—it's an achievable goal with the right analysis and planning. And the tools to make it happen are available right now.
Reference: Natera Orozco et al. (2020). Research on urban walkability quantification using Budapest as case study, published in Complex Networks proceedings.