Skip to content

GTFS Schedule Changes

The GTFS Schedule Reference is not set in stone. Instead, it is an open specification developed and maintained by the community of transit agencies, developers, and other stakeholders who use GTFS. It is expected that this community of producers and consumers of GTFS data will have proposals for extending the spec to enable new capabilities.

To contribute to GTFS, read the GTFS Schedule Amendment Process and follow the discussions in the open issues and pull requests on the GTFS Github repository (google/transit).

Recently Adopted Proposals  

Recently merged proposals that are now features of the official GTFS Schedule Reference. See the complete Revision History for more.

Adopt GTFS Flex

#433 by tzujenchanmbd was merged on Mar 19, 2024

  • The GTFS-Flex proposal allows passengers to discover demand-responsive services on trip planners
  • Multiple files have been added to the specification, including locations.geojson which integrates GeoJson in GTFS

Add networks.txt & route_networks.txt

#406 by tzujenchanmbd was merged on Nov 28, 2023

  • Adds two new files: networks.txt and route_networks.txt to build networks of routes that are associated to fares
  • Provides an alternative to routes.network_id so that schedule and fare files can be distinct
  • Adds two sections of the GTFS Best Practices to the specification: Dataset Publishing guidelines and Practice Recommendations for all files
  • Updates a reference to Google’s transitfeed tool merge function, so it references a list of merge tools instead

Best practices: add recommended presence

#386 by emmambd was merged on Aug 1, 2023

  • Adds a new Recommended presence in the specification that conforms to RFC conventions
  • Allows to clearly state that a field or file is not required, but adding it is a best practice that should be considered
  • Updates information for multiple files and fields to reflect their recommended presence based on GTFS Best Practices

Add variable fares by time or day

#357 by isabelle-dr was merged on Jul 27, 2023

  • Time-variable fares is an important functionality developed as part of the GTFS Fares-v2 extension proposal
  • Allows to represent fares differentiated based on the time of the day or the day of the week, such as peak and off-peak fares
  • Adds a new file: timeframes.txt, to define moments in time where the fare applies
  • Extends fare_leg_rules.txt with from_timeframe_id, and to_timeframe_id to specify that a fare leg rule applies only if the beginning or end of the leg is in a specified timeframe

Add fare media

#355 by isabelle-dr was merged on Mar 14, 2023

  • Fare Media is a key element on the GTFS Fares-v2 extension proposal
  • It represents what a rider can use to validate their ride (e.g. a transit card, mobile app, or tap-to-pay using a contactless bank card)
  • A fare product can be associated to a specific Fare Media (e.g. a monthly pass is only available on a transit card)
  • The price of a fare product can be defined based on the Fare Media (e.g. the ticket is cheaper if bought via a mobile app)