Understanding The General Data Transit Feed (GTFS) Realtime Standard

mta-harlem-station-2Building on our previous story about the General Data Transit Feed (GTFS) standard, as we work to understand the standards used across the transit industry, we wanted to provide an overview of GTFS Realtime, which is an extension to the GTFS static feed–adding the real time data layer to the specification. GTFS provides a static look at schedules, routes, trips, stops, and other moving part of transit operations, and GTFS Realtime provides a vehicle (pun intended) for detailing the real time layer of transit operations, which is what changes the most frequently.

  • Trip updates – delays, cancellations, changed routes
  • Service alerts – stop moved, unforeseen events affecting a station, route or the entire network
  • Vehicle positions – information about the vehicles including location and congestion level

The GTFS Realtime standard provides guidance on the data format and structure, which is based on the Protocol Buffers format, used in gRPC, another Google approach to delivering data via APIs using HTTP/2. Even with this relationship, the standard doesn’t dictate how you provide access and transport GTFS realtime standards, but notes it primarily is done via HTTP. Opening up an opportunity for Streamdata.io to get involved, although the protocol buffer structure of the data format will provide some challenges when it comes to delivering partial updates using JSON Patch.

GTFS Realtime feeds aren’t something you can directly proxy using Streamdata.io, however if you are consuming a feed, and making a available via a JSON web API, then you could proxy and make available in real time using Server-Sent Events(SSE). The majority of GTFS transit feeds out there are static, with only a handful of GTFS Realtime feeds out of transit agencies who have more resources, and technical ability. Demonstrating the opportunity out there for making transit agencies more accessible in real time, sharing vehicle, trip, and service information from the transit authorities, but also from the riders perspective.

We are just getting going with our deep dive into the transit industry, and the opportunity for developing real time and streaming applications. If you would like to know more about our research, and understand how you can use transit data to improve life in your city, or develop a meaningful application, feel free to reach out. GTFS static, and real time is currently being used mostly by Google as part of Google Maps, and a handful of other application providers, but leaves a pretty big opportunity when it comes to delivering real time and streaming solutions to users. We are happy to share our findings here on the blog, or as part of conversations with your team–just let us know how we can help.

Give it a try!

Try streaming any JSON REST API within 30 sec
curl -v "https://proxy.streamdata.io/http://mysite.com/myJsonRestService?param1=[]&param2=[]"

Leave a Reply

Your email address will not be published. Required fields are marked *