What each column means

Every column in cities.csv, districts_hamburg.csv and the map file europe.pmtiles, in plain words. You can download the files for free from the data page.

Updated 3 November 2026

Words used on this page

Street cell
A six-sided cell on the map, about 95 m across, that a street passes through. Each street cell has its own score.
Score
From 0 to 100, made of Reach and street quality.
Reach
60% of the score: the walk on real streets to the eight daily needs. A shorter walk scores more, and a second and third place nearby count too.
Street quality
40% of the score: how pleasant the streets near the cell are to walk on. It looks at traffic, noise where a city noise map exists, summer shade, busy roads nearby and slope.
Typical
The value where the typical resident lives: half of the residents live in cells with a lower value, half in cells with a higher one. Andorra la Vella has no count of residents, so its buildings stand in for residents.
Walking minutes
Minutes on foot along streets and paths to the nearest place of that kind.
Empty
No value: a blank value in the CSV files, a missing field in the map file. For walking minutes, it means that no such place is close enough to count. In the map file, m0 … m7 hold -1 for this instead.
Fifths
The residents of a country, ranked by the score where they live and split into five groups of the same size. Here Great Britain counts as one country, and so does the island of Ireland.
The eight needs
Groceries, food and drink, shops, health, school, parks, culture and public transport. Column names use the words groceries, eating, shops, health, education, green, culture and transit. In the map file the needs are numbered 0 to 7, in this same order.

cities.csv

One row for each of the 528 cities with a page on walkably.org, in 31 countries.

cities.csv
ColumnMeaning
city_codeThe city's code in the Eurostat list of cities (ES001C is Madrid). The 13 cities that aren't on that list have a Walkably code, such as AD_CAP for Andorra la Vella.
cityThe city's name in English.
city_localThe name in the local language, when it isn't the same as the English name. Empty otherwise.
country_codeThe two-letter country code, in lower case, as in the page address.
countryThe country's name in English.
greater_citytrue when the page covers the city and the towns that have grown into it, false when it covers the city alone.
capitaltrue for a national capital.
populationpopulation_yearThe number of people who live in the area the page covers, and the year of that count. It comes from Eurostat, or from the country's statistics office or the 2021 census when Eurostat's figure doesn't fit the area the page covers. Empty for 5 cities.
city_extent_sourceWhere the city's outline comes from: OpenStreetMap, for every city.
street_cellsbuildingsThe number of street cells in the city, and the number of buildings in them on OpenStreetMap.
score_typical_0_100The city's typical Walkably score, from 0 to 100.
rank_in_countrycities_in_countryThe city's place in its country by typical score, and the number of cities in that country. The rank uses the whole number the city page shows, so cities with the same whole number share a place.
better_than_europe_pctThe percent of all residents of the 31 countries who live in cells with a lower score than this city's typical score.
share_fifth1_pctshare_fifth2_pctshare_fifth3_pctshare_fifth4_pctshare_fifth5_pctThe percent of the city's residents in each fifth of their country, from 1 (lowest scores) to 5 (highest scores). The five add up to 100.
groceries_typical_mineating_typical_minshops_typical_minhealth_typical_mineducation_typical_mingreen_typical_minculture_typical_mintransit_typical_minWalking minutes to the nearest place for each need, from where the city's typical resident lives. Empty when no such place is close enough to count.
groceries_within_20min_pcteating_within_20min_pctshops_within_20min_pcthealth_within_20min_pcteducation_within_20min_pctgreen_within_20min_pctculture_within_20min_pcttransit_within_20min_pctThe percent of the city's residents with at least one place for that need within a 20-minute walk.
areas_rankedThe number of areas inside the city that the city page ranks by typical score. In some cities these are its districts, in others other named parts of the city.
centre_latcentre_lonThe city centre point, in degrees of latitude and longitude (WGS84).
osm_data_dateThe date of the OpenStreetMap data the city was scored from.
city_page_urlThe city's English page on walkably.org.

districts_hamburg.csv

One row for each of Hamburg's 104 official districts (Stadtteile), each in one of its 7 boroughs (Bezirke).

districts_hamburg.csv
ColumnMeaning
citycountry_codeThe city name and its country code. Every row holds Hamburg and de.
districtboroughThe official district and the borough it belongs to.
osm_relationwikidataThe district's border on OpenStreetMap (r, then the relation number) and its Wikidata ID.
rankedtrue when the district has enough streets and buildings to rank. 93 of the 104 districts are ranked.
rank_in_cityThe district's place in Hamburg by typical score. 1 is the highest, and equal scores share a place. Empty when the district isn't ranked.
score_typical_0_100reach_typical_0_100street_quality_typical_0_100The district's typical score, typical Reach and typical street quality, each from 0 to 100.
groceries_typical_mineating_typical_minshops_typical_minhealth_typical_mineducation_typical_mingreen_typical_minculture_typical_mintransit_typical_minWalking minutes to the nearest place for each need, from where the district's typical resident lives. Empty when no such place is close enough to count.
street_cellsbuildingsThe number of street cells in the district, and the number of buildings in them.
centre_latcentre_lonThe centre of the district's border, in degrees of latitude and longitude (WGS84).
osm_data_dateThe date of the OpenStreetMap data for Germany.
page_urlThe Hamburg districts page on walkably.org.

europe.pmtiles

The map file, for map software such as QGIS. It has two layers: hex for the street cells and street for the streets. The field names are short to keep the file small.

Layer hex

europe.pmtiles, Layer hex
ColumnMeaning
sThe score, from 0 to 100. At the closest zoom (14) it is the score of one street cell. At zoom 2 to 13 it is the average of the street cells inside a larger cell.
cZoom 2 to 13 only: the number of street cells inside the larger cell.
rReach, from 0 to 100: the walks to the eight needs.
qStreet quality, from 0 to 100.
r0 … r7Reach for one need alone, from 0 to 100. The map uses these when a visitor sets their own weights. Needs by number: 0 groceries, 1 food and drink, 2 shops, 3 health, 4 school, 5 parks, 6 culture, 7 public transport.
pThe percent of the street cells in the same country that have a lower score. Here Great Britain counts as one country, and so does the island of Ireland.
m0 … m7Walking minutes to the nearest place for each need, by number as for r0 to r7. -1 when no such place is close enough to count.
n0 … n7The name on OpenStreetMap of that nearest place. Missing when the place has no name.
pgWalking minutes to the nearest playground. Missing when none is close enough to count.
isl_mOnly on a street island: a cell whose streets are cut off from the main street network around it. The value is the gap to that network, in metres.
v0 … v7How many places for each need are within a 5-minute and a 10-minute walk, packed into one number: the 5-minute count is v & 15, the 10-minute count is (v >> 4) & 15. For example, 117 means 5 places within 5 minutes and 7 within 10. Each count stops at 15: bit 8 set means the 5-minute count reached 15 and the true number may be higher, and bit 9 means the same for the 10-minute count. Missing when no place is within 10 minutes.

Layer street

europe.pmtiles, Layer street
ColumnMeaning
qThe street quality of this piece of street, from 0 to 100.
hwThe street type on OpenStreetMap, such as residential or footway.
nameThe street's name on OpenStreetMap. Missing when it has none.
nzStreet noise in decibels, where a noise map exists. Missing otherwise.
shSummer shade, as a percent of the piece of street. This is an estimate.
bzThe percent of the piece of street that runs beside a busy road.
slSlope, in percent.
trTrees for each 100 m of street.

Questions about the data, or a file made for your work: hello@walkably.org.