Skip to content

Base add-ons

These features expand the capabilities described in Base, serving to either enhance the comprehensiveness of a GTFS dataset to provide a better experience for riders, or facilitate collaboration between agencies, data vendors, and data re-users. These enhancements may entail introducing new fields within the files described in Base, or creating new files.

Feed Information

Feed Information communicates important information about the feed, such as its validity (start and end date), the publishing organization, and contact information for inquiries regarding the GTFS dataset and data publishing practices.

Files included Fields included
feed_info.txt feed_publisher_name, feed_publisher_url, feed_lang, default_lang, feed_start_date, feed_end_date, feed_version, feed_contact_email, feed_contact_url

Prerequisites:

Sample Data

feed_info.txt

feed_publisher_name feed_publisher_url feed_lang default_lang feed_start_date feed_end_date feed_version feed_contact_email feed_contact_url
Greater Region Transport https://www.gra1.org en en 20240101 20241231 3.1 support@gra1.org https://www.gra1.org/support

Shapes

Shapes can be defined and associated with trips, enabling trip planning applications to display trips on a map and inform riders of the distance they need to travel in a transit vehicle. The shape_dist_traveled fields are used to programmatically determine how much of a shape to draw when showing a map to riders. When defining Shapes, there is a balance between their level of detail (e.g. following the exact curvature of roads) and conveying only the necessary information efficiently.

Files included Fields included
shapes.txt shape_id, shape_pt_lat, shape_pt_lon, shape_pt_sequence, shape_dist_traveled
trips.txt shape_id
stop_times.txt shape_dist_traveled

Prerequisites:

Sample data

The following sample shows a portion of a shape from the TriMet GTFS feed (download it here).

shapes.txt

shape_id shape_pt_lat shape_pt_lon shape_pt_sequence shape_dist_traveled
558674 45.47623 -122.721885 1 0.0
558674 45.476235 -122.72236 2 121.9
558674 45.476237 -122.722523 3 163.7
558674 45.476242 -122.723024 4 292.2
558674 45.476244 -122.72316 5 327.1

trips.txt

trip_id shape_id
13302375 558674

stop_times.txt

trip_id stop_sequence shape_dist_traveled
13302375 1 0
13302375 2 461.7
13302375 3 1245

Route Colors

Using Route Colors allows to accurately depict and communicate the color scheme assigned to specific routes by the agency’s design guidelines. This enables users to easily identify transit services by their official color.

Files included Fields included
routes.txt route_color, route_text_color

Prerequisites:

Sample Data

The following sample shows that route RA is orange using a HEX color code D95700, and that text should be rendered black using a HEX color code 0.

routes.txt

route_id agency_id route_short_name route_long_name route_type route_color route_text_color
RA agency001 17 Mission - Downtown 3 D95700 0

Bike Allowed

Bike Allowed indicates if vehicles serving specific trips are able to accommodate bicycles or not, helping users to plan and access services that enable them to make multimodal trips.

Files included Fields included
trips.txt bikes_allowed

Prerequisites:

Sample Data

The following sample specifies that the vehicle used in trip AWE1 can accommodate at least one bicycle on board (bikes_allowed=1), and the vehicle used in trip AWE2 cannot (bikes_allowed=2).

trips.txt

route_id service_id trip_id bikes_allowed
RA WE AWE1 1
RA WE AWE2 2

Headsigns

Headsigns allows to communicate the signage used by vehicles indicating the trip’s destination, making it easier for users to identify the correct transit service. This feature supports headsign changes along a specific route.

Files included Fields included
trips.txt trip_headsign
stop_times.txt stop_headsign

Prerequisite:

Sample Data

In the following sample, the first table specifies the headsigns to be used by trips AWE1 and AWE2, and the second one indicates that AWE1’s headsign will be modified after stop TAS004, overriding the one specified in trips.txt.

trips.txt

route_id service_id trip_id trip_headsign
RA WE AWE1 Downtown
RA WE AWE2 Mission

stop_times.txt

trip_id arrival_time departure_time stop_id stop_sequence stop_headsign
AWE1 6:10:00 6:10:00 TAS001 1
AWE1 6:14:00 6:14:00 TAS002 2
AWE1 6:20:00 6:20:00 TAS003 3
AWE1 6:23:00 6:23:00 TAS004 4 Downtown - Main Square
AWE1 6:25:00 6:25:00 TAS005 5 Downtown - Main Square

Location Types

Location Types are used to classify key areas within transit stations such as exits/entrances, nodes or boarding areas, as well as their relationship. Location Types serve as a foundation for modeling transit stations using Pathways.

Files included Fields included
stops.txt location_type, parent_station

Prerequisites:

Sample Data

The following sample shows multiple locations within a transit station in stops.txt: the parent station, representing the main location, and its child locations such as platforms, entrances/exists, and generic nodes.

stops.txt

stop_id stop_name location_type parent_station
Station_A102 Main Street station 1
A102_B01 Main Street station - North Platform 0 Station_A102
A102_B02 Main Street station - South Platform 0 Station_A102
A102_E01 Main Street station - Entrance/Exit 2 Station_A102
A102_S01 Main Street station - Top of entrance stairs 3 Station_A102
A102_S02 Main Street station - Bottom of entrance stairs 3 Station_A102
A102_S03 Main Street station - Top of north platform stairs 3 Station_A102
A102_S04 Main Street station - Bottom of north platform stairs 3 Station_A102
A102_S05 Main Street station - Top of south platform stairs 3 Station_A102
A102_S06 Main Street station - Bottom of south platform stairs 3 Station_A102
A102_F01 Main Street station - Paid side of fare gate 3 Station_A102
A102_F02 Main Street station - Unpaid side of fare gate 3 Station_A102

Frequencies

Frequencies can be used to model services that operate based on a regular frequency, such as buses running every 10 minutes or subway services operating 2 minutes within specified time intervals. When modeling services that operate on a regular frequency, stop_times.txt contains the relative times between stops in order to determine the times to be displayed to riders.

Files included Fields included
frequencies.txt trip_id, start_time, end_time, headway_secs, exact_times

Prerequisites:

Sample Data

The following sample shows two distinct trips: trip AWE1 that runs every 30 min (headway_secs=1800), and trip AWE2 that runs every 15min (headway_secs=900).

The exact_times field indicates whether the schedule follows the precise start time entered in the 'start_time' field: - Trip AWE1 departs every 30min from 6:10am to 12:00pm. - trip AW2 departs at 6:00am, 6:15am, 6:30am, and so on.

frequencies.txt

trip_id start_time end_time headway_secs exact_times
AWE1 6:10:00 12:00:00 1800 0
AWE2 6:00:00 19:50:00 900 1

Transfers

Transfers provide details about transitions between different travel segments (or legs), enabling trip planners to determine the feasibility of journeys that include transfers. Specifying transfers does not imply passengers can't transfer elsewhere, it just shows whether certain transfers are not possible or require a minimum time to transfer.

Files included Fields included
transfers.txt from_stop_id, to_stop_id, from_route_id, to_route_id, from_trip_id, to_trip_id, transfer_type, min_transfer_time

Prerequisites:

Sample Data

The following sample shows three different transfers: one between stops that requires a minimum transfer time of 5 minutes, one timed transfer point between two routes, and one in-seat transfer between two trips made by the same vehicle.

transfers.txt

from_stop_id to_stop_id from_route_id to_route_id from_trip_id to_trip_id transfer_type min_transfer_time
s6 s7 2 300
PL04-003 DL57-008 4
BR09 CR01 BR09-012 CR01-005 1

Translations

Translations allows service information such as station names to be provided in multiple languages enabling travel planners to display the information in a specific language depending on the user’s language and location settings.

Files included Fields included
translations.txt table_name,field_name,language,translation,record_id,record_sub_id,field_value

Prerequisites:

Sample Data

The following sample shows French and Spanish translations being provided for two fields used in routes.txt: route_long_name and route_desc.

translations.txt

table_name field_name language translation record_id record_sub_id field_value
routes route_long_name ES Mission - Centro RA
routes route_long_name FR Mission - Centre ville RA
routes route_desc ES La ruta "A" viaja desde Lower Mission hasta el centro RA
routes route_desc FR La route « A » relie Lower Mission au centre-ville. RA

Attributions

Attributions makes it possible to share additional details regarding the organizations involved in the creation of the dataset (producers, operators and/or authorities, etc.).

Files included Fields included
attributions.txt attribution_id, agency_id, route_id, trip_id, organization_name, is_producer, is_operator, is_authority, attribution_url, attribution_email, attribution_phone

Prerequisites:

Sample Data

attributions.txt

attribution_id agency_id route_id trip_id organization_name is_producer is_operator is_authority attribution_url attribution_email attribution_phone
op01 tb Transit Bus 1 https://www.transitbus.org/fares contact@transitbus.org (777) 555-7777
au01 gra Greater Region Transport 1 1 https://www.gra1.org contact@gra1.org (555) 555-5555
op02 rtd023 Bus company A 1 https://www.buscompanya.com contact@buscompanya.com (333) 333-3333
op03 rtd025 Bus company B 1 https://www.buscompanyb.com contact@buscompanyb.com (888) 888-8888