(static) GTFS 101
lunch & learn 1/11/22
by laurie
agenda
who
what
where
when
how
why
of static/schedule GTFS
(some caveats)
General�
Transit
Feed
Specification
why
static GTFS enables transit agencies to publish information about their network, schedule, and operations in a standard, structured format that can be consumed by software applications
GTFS
who
GTFS originally created by: Google with TriMet (Portland)
now…
agencies & vendors/contractors produce data
aggregators collect data (Transitfeeds, Transitland)
developers/apps consume feeds (Google Maps, Transit App, agency-specific) and build related tooling (Remix, Moovit, etc.; validators)
transit riders access information via apps & websites
stakeholders (ex. Google, MobilityData) maintain, update, and expand the spec (static change guidelines, General Bikeshare Feed Specification, GTFS-ride, etc.)
(we all work on Cal-ITP!)
what - file structure - demo
what - schema*
= required
= conditionally required
*this diagram does not include fares v2
what - spec
what - meaning
a description of the agency’s (fixed route) transit network and services:
where / when
agencies host GTFS feeds on their websites (ideally/per CA Minimum Guidelines: at a stable URL that does not change)
feeds should be posted whenever there are significant/persistent service changes; “the GTFS dataset should cover at least the next 30 days of service” (x)
aggregators that pull feeds across many agencies (Transitfeeds, Transitland); they may pull updates at different cadences
in our data: calitp_url_number; calitp_extracted_at / calitp_deleted_at
where
how
produced by agencies or by contractors/vendors on behalf of agencies�
some are made “by hand” (Excel), others using dedicated software (Trillium GTFS Manager, AddTransit, etc.)
GTFS contains multitudes
gtfs is very flexible
GTFS challenges
example - Replica
Cal-ITP
Cal-ITP - aggregation & dims
Cal-ITP - aggregation / analysis
resources
questions?
appendix
what - file structure
static/schedule GTFS feeds (or “datasets”) are published as .zip files that contain a set of .txt files
what - example routes.txt & trips.txt files (SacRT)
^ routes.txt
trips.txt >
what - example stop_times.txt & stops.txt files (SacRT)
^ stop_times.txt
stops.txt >