logo Netzschleuder network catalog, repository, and centrifuge

national_public_transport — National public transport networks (2026)

Description

Public transport networks of five European countries (Germany, the Netherlands, Norway, Switzerland and Ireland), built from the national timetables that their transport authorities or aggregators publish in the General Transit Feed Specification (GTFS) format: all the scheduled trips of buses, trams, subways, trains, ferries, cable cars, etc. in the country (and the cross-border trips). The feeds are replaced every day; the networks are built from the dated copies kept by the Mobility Database:

  • de: the three feeds of gtfs.de, based on the data of DELFI e.V. (local public transport, regional rail and long-distance rail, which share their stop ids), of October 25, 2026, valid from October 24 to November 23, 2026;
  • nl: the feed of OVapi, of October 28, 2026, valid from October 26 to December 12, 2026;
  • no: the national feed of Entur, of October 28, 2026 (whose calendars extend, for some services, from 2019 to 2029);
  • ch: the feed of the 2026 timetable of opentransportdata.swiss (Systemaufgaben Kundeninformation SKI+), in its version of May 27, 2026, valid from December 14, 2025 to December 12, 2026 (the copy of the Mobility Database was not updated afterwards);
  • ie: the feed of all operators of Transport for Ireland (National Transport Authority), of October 28, 2026, valid from October 26, 2026 to October 27, 2027.

Each network is the "space of stops" (L-space) of the timetable: a directed edge connects two stops if at least one trip travels from the first to the second without intermediate stops. There is one edge for each pair of consecutive stops and each GTFS route type (mode of transport), so that two stops served by several modes are connected by parallel edges, one per mode, as in kujala_public_transport. For each country there are two networks (only ie_stops for Ireland, whose feed has no stations):

  • <country>_stops (e.g. de_stops): the nodes are the stops (or platforms) where the vehicles stop (GTFS stops of location type 0), and the stations that are directly served;
  • <country>_stations (e.g. de_stations): the stops are grouped into their parent stations (GTFS stops of location type 1), where the feed gives them, and the other stops are kept as they are. Consecutive stops of a trip within the same station become self-loops.

The stops (or stations) without any trip are kept as isolated nodes. The networks are not connected: e.g. in the Netherlands, the stops of different operators are rarely grouped into common stations, so that the network of each operator is mostly a component of its own (the largest component of nl_stations has 6,894 of its 38,548 nodes). The frequency-based trips of the Swiss feed (frequencies.txt) are counted as single trips. Entrances, generic nodes and boarding areas of the stations, transfers, shapes, fares and the agencies and routes themselves are not included.

The networks have the following properties:

  • (Node) stop_id (<country>_stops): the id of the stop in the feed.
  • (Node) station_id (<country>_stations): the id of the station (or of the stop, for stops without a station).
  • (Node) name: the name of the stop or station.
  • (Node) lat, lon: its position.
  • (Node) parent_station (<country>_stops): the id of its station (empty if none).
  • (Node) platform_code (<country>_stops): the platform (empty if not given).
  • (Node) num_stops (<country>_stations): the number of stops of the station (0 for stops without a station).
  • (Edge) route_type: the mode of transport, as a GTFS route type (e.g. 0 tram, 1 subway, 2 rail, 3 bus, 4 ferry, 5 cable tram, 6 aerial lift, 7 funicular, or the extended route types, e.g. 100-117 railway services, 700-717 bus services, 900 tram, 1000 water transport, 1300 aerial lift; -1 if not given).
  • (Edge) n_trips: the number of trips of the feed that travel between the two stops (each trip is a pattern of service, which can run on many days).
  • (Edge) n_departures: the number of departures in the period of validity of the feed (the trips multiplied by the number of days on which they run, from the calendars of the feed).
  • (Edge) duration_avg: the average travel time between the two stops (seconds, from the departure at the first stop to the arrival at the second, over the trips; NaN if not given).
  • (Edge) distance: the straight-line distance between the two stops (meters).
Tags
Transportation Public Transport Spatial Multilayer Weighted Multigraph Metadata
Added
2026-10-31
Citation
  • gtfs.de, DELFI e.V., "GTFS for Germany: local, regional and long-distance public transport (de_nv, de_rv, de_fv)." Dataset, Mobility Database copies mdb-1090, mdb-1089, mdb-768 of October 25 (2026) gtfs.de
  • OVapi, "GTFS Netherlands." Dataset, Mobility Database copy mdb-1077 of October 28 (2026) gtfs.ovapi.nl
  • Entur, "Norway aggregated GTFS." Dataset, Mobility Database copy mdb-1078 of October 28 (2026) developer.entur.org
  • Systemaufgaben Kundeninformation SKI+, "Timetable 2026 (GTFS2020)." opentransportdata.swiss, dataset, Mobility Database copy mdb-2898 of May 29 (2026) opentransportdata.swiss
  • National Transport Authority, "Transport for Ireland GTFS (all operators)." Dataset, Mobility Database copy mdb-2364 of October 28 (2026) www.transportforireland.ie
Upstream URL OK
https://mobilitydatabase.org
https://files.mobilitydatabase.org
https://gtfs.de/en/feeds/
https://gtfs.ovapi.nl
https://developer.entur.org/stops-and-timetable-data
https://opentransportdata.swiss/en/
https://www.transportforireland.ie/transitData/PT_Data.html
Upstream license
Germany and Ireland: CC BY 4.0; Netherlands: CC0 1.0; Norway: Norwegian Licence for Open Government Data (NLOD); Switzerland: terms of use of opentransportdata.swiss, https://creativecommons.org/licenses/by/4.0/
Networks
Tip: click on a column header to sort the list, or hover over it for a description.
Column legend
$\left<k\right>$
Mean degree
$\sigma_k$
Standard deviation of the degrees
$\lambda_h$
Largest eigenvalue of the Hashimoto (non-backtracking) matrix
$\tau$
Random walk mixing time
$r$
Degree assortativity
$c$
Global clustering coefficient
$\oslash$
(Pseudo-) diameter
$S$
Relative size of the largest component
NPs
Node properties
EPs
Edge properties
Name Nodes Edges $\left<k\right>$ $\sigma_k$ $\lambda_h$ $\tau$ $r$ $c$ $\oslash$ $S$ Kind Mode NPs EPs gt GraphML GML csv
de_stations 249,522 709,402 2.84 3.74 16.47 21371.15 0.31 0.18 158 1.00 Directed Unipartite station_id name lat lon num_stops route_type n_trips n_departures duration_avg distance 15.7 MiB 23.4 MiB 22.9 MiB 22.3 MiB
de_stops 439,081 805,836 1.84 2.54 15.92 54546.88 0.34 0.14 206 0.99 Directed Unipartite stop_id name lat lon parent_station platform_code route_type n_trips n_departures duration_avg distance 23.4 MiB 32.7 MiB 32.0 MiB 31.0 MiB
nl_stations 38,548 63,214 1.64 2.29 6.51 3184.38 0.19 0.06 87 0.18 Directed Unipartite station_id name lat lon num_stops route_type n_trips n_departures duration_avg distance 1.9 MiB 2.5 MiB 2.5 MiB 2.5 MiB
nl_stops 60,238 72,413 1.20 1.73 16.12 8789.88 0.30 0.04 111 0.20 Directed Unipartite stop_id name lat lon parent_station platform_code route_type n_trips n_departures duration_avg distance 2.5 MiB 3.5 MiB 3.4 MiB 3.5 MiB
no_stations 51,170 144,915 2.83 3.36 6.55 190644.47 0.49 0.14 307 0.81 Directed Unipartite station_id name lat lon num_stops route_type n_trips n_departures duration_avg distance 2.8 MiB 4.1 MiB 4.0 MiB 3.9 MiB
no_stops 90,506 151,731 1.68 2.08 7.23 203253.83 0.46 0.10 323 0.82 Directed Unipartite stop_id name lat lon parent_station platform_code route_type n_trips n_departures duration_avg distance 4.2 MiB 5.8 MiB 5.7 MiB 5.6 MiB
ch_stations 35,497 98,368 2.77 4.14 9.08 46748.07 0.39 0.13 190 0.96 Directed Unipartite station_id name lat lon num_stops route_type n_trips n_departures duration_avg distance 2.3 MiB 3.0 MiB 3.0 MiB 3.0 MiB
ch_stops 66,468 138,921 2.09 5.24 36.36 107820.12 0.66 0.11 272 0.96 Directed Unipartite stop_id name lat lon parent_station platform_code route_type n_trips n_departures duration_avg distance 3.7 MiB 4.9 MiB 4.8 MiB 4.8 MiB
ie_stops 14,177 20,362 1.44 1.92 6.20 1451.58 0.27 0.09 61 0.98 Directed Unipartite stop_id name lat lon parent_station platform_code route_type n_trips n_departures duration_avg distance 764 KiB 974 KiB 957 KiB 912 KiB
Ridiculograms*
* These are automatically generated force-directed visualizations, and can be quite meaningless for networks both big and small. They should not be taken seriously as sources of scientific insight. See here for a discussion.