Schedule Changes can be captured in GTFS in advance to ensure a smooth transition from one Schedule to another, and account for a wide variety of changes in service.
This covers planned Schedule Changes. If the Schedule Changes have already happened and the GTFS needs to be updated after-the-fact, all changes can be made directly to the existing service in GTFS, such as editing Stop Patterns, Timed Patterns, Calendars and Trips.
When to Schedule Changes in GTFS?
As soon as the Schedule Changes are finalized. The sooner a Schedule Change is entered into the GTFS, the more room to make edits and changes and fine-tuning prior to riders being affected.
Depending on the volume of changes, and types of changes, the amount of time needed to update the GTFS varies. Some examples:
- Routes stay the same, new timetables: Depending on number of Routes, number of Stops and Stop Patterns, number of Timed Patterns, and number of Trips, this is a moderate change.
- New Routes: Depending on the size of the new Routes, and number of new Routes, this is a relatively easy change.
- New patterns on existing Routes: Depending on the number of affected Routes, and the size of the change (such as number of Stops added and/or removed), this is a moderate change. A frequent example of this is a temporary construction detour affecting one or more Routes.
- System overhaul - new Routes, new timetables: This is usually a significant change that requires several hours to complete.
As such, it is better to begin work on Schedule Changes at least a month in advance.
When making future changes, the most important thing is to not affect current service. As such, making copies and duplicates of things like Calendars, Patterns and Trips ensures that current service is not disrupted by changes. Even though GTFS Manager is not live, if other changes must be exported and posted prior to the Schedule Change occurring, there will be no way to prevent the Schedule Change from prematurely showing in third party applications.
- Always Make a Copy: Especially for Stop Patterns and Timed Patterns, this ensures that changes do not overwrite current service.
- Don't Delete...Yet: While deleting Blocks and Timed Patterns can make it easier to schedule Trips, deleting a record may affect current service in an unanticipated way. Because of the many ways in which different parts of GTFS are intertwined (such as Timed Patterns and Trips,) inadvertently removing one record may remove others. After a Schedule Change has gone through successfully, old data, such as old Stop Patterns, can be deleted.
- When in doubt, reach out: Trillium staff are happy to help answer questions and guide agencies through making Schedule Changes, especially big ones like system overhauls. If you have an AVL provider, Trillium can help ensure that your GTFS changes do not affect your realtime arrival information either. If you anticipate a Schedule Change in the next 3-6 months, please reach out to firstname.lastname@example.org to let us know. We are happy to schedule time to think through how to best tackle a Schedule Change.
First: Duplicate Calendars
Most Schedule Changes involve modifying Trips in some fashion or another. Unless every single Trip is going to change, it is easier to start from what is currently scheduled and make modifications to it. This also highlights which things like Stop Patterns and Timed Patterns need to be changed.
Set your existing Calendar(s)' Service Period(s) to end one day prior to the Schedule Change. Set your copied Calendar(s)' Service Period(s) to the first day of the new Schedule.
Note that the Calendars are named accordingly to make it easy to see which is the new one and which is the old one.
Second: Review Route Schedules
Unless all changes affect only new Routes (in which case, begin by creating a new Route), the next place to start is with the affected Route Schedules. Make sure to be reviewing the new Calendar on that Route's Schedule to ensure changes are not made to the current Calendar's Schedule.
Example: The first trip on Route 1 Eastbound has a new Stop Pattern and Timed Pattern, and is starting at a new time, five minutes later. From the familiar Timetable View, I can click that Trip and see that the affected Stop Pattern is called "Primary" (the Eastbound one) and the affected Timed Pattern is called "80 min."
I now know I need to make changes to the Primary (Eastbound) Stop Pattern, the 80 min Timed Pattern, and the 06:35 Trip.
Third: Make Copies
Because I do not want to affect the current 06:35 Trip, before making any edits to the Primary (Eastbound) Stop Pattern, I need to make a copy of it.
In some cases, adjusting the Stop Pattern will require creating new Stops as well.
Note: New Stops may appear as "blue bus icons" on applications such as Google Maps even if they are not yet in service. These Stops will not show any service available, nor will riders be directed to use them, until the Schedule Change has occurred and they are used by an active Route.
By making copies, I have left the currently serviced 06:35 Trip as-is, and been able to make adjustments to it for my Schedule Change as well!
Fourth: Adjust Holidays, Fares, Transfers and Other GTFS Elements
In some cases, Schedule Changes will also require updates to Holidays and Calendar Exceptions, Fares and/or Fare Rules, Transfers, Stop Zones, Headsigns, Blocks, and many other elements of the GTFS.
If there is more than one Fare in the GTFS, and the Schedule Change includes any of the following, then the Fares and/or Fare Rules should be updated:
- Changes to the cost of a Trip;
- New or removed Routes;
- New or removed Stop Zones
Note: If unsure which, if any, Stops have Transfers associated with them, sort by T icon in the Stops Dashboard
Headsigns, Directions, Blocks
Note: If any Trips have a WHITE color to them in either the Timeline View or Timetable View, they do not have a Block assigned. If the feed is used by an AVL or realtime provider, then each Trip must have a Block assigned.
Fifth: Review Changes
Because most Schedule Changes are made offline, in worksheets and runcuts and other documents, it is important to ensure enough time at the end to review the Schedule Change as it appears in GTFS Manager against internal (such as driver paddle sheets) and external (such as website timetables.)
Sixth: Request Feed Export
Once satisfied with how the Schedule Change looks in GTFS Manager, request feed export to have Trillium staff validate the feed and post to your fetch location. Because the Schedule Change is dated to occur in the future, and provided current service was not altered, the feed export can happen in advance of the change. GTFS only supplies service information used by third party applications based on the current date and which Trips are available on Calendars serviced on that date.
Some applications allow for future itinerary planning, and updated GTFS allows for riders to accurately plan a Trip in the new Schedule when Schedule Changes are posted in advance.