GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2025-12-12T18:31:07Z,
for the dataset file:///shared/guelphtransit.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


Feed Info


Publisher Name:
Busmaps.com
Publisher URL:
https://busmaps.com
Feed Email:
alex@busmaps.com
Feed Language:
English
Feed Start Date:
2025-05-04
Feed End Date:
2025-08-30

Files included


  1. agency.txt
  2. calendar.txt
  3. calendar_dates.txt
  4. feed_info.txt
  5. routes.txt
  6. shapes.txt
  7. stop_times.txt
  8. stops.txt
  9. trips.txt

Counts


  • Agencies: 1
  • Blocks: 146
  • Routes: 27
  • Shapes: 79
  • Stops: 604
  • Trips: 2659

Specification Compliance report

203 notices reported (0 errors, 203 warnings, 0 infos)

Notice Code Severity Total
expired_calendar WARNING 4

expired_calendar

Dataset should not contain date ranges for services that have already expired.

This warning takes into account the calendar_dates.txt file as well as the calendar.txt file.

You can see more about this notice here.

csvRowNumber (?) The row of the faulty record. serviceId (?) The service id of the faulty record.
2 "101698-1"
3 "101698-2"
4 "101698-3"
5 "101698-merged_218ba992b9f8462fe958"
fast_travel_between_consecutive_stops WARNING 191

fast_travel_between_consecutive_stops

A transit vehicle moves too fast between two consecutive stops.

The speed threshold depends on route type:

Route type Description Threshold, km/h
0 Light rail 100
1 Subway 150
2 Rail 500
3 Bus 150
4 Ferry 80
5 Cable tram 30
6 Aerial lift 50
7 Funicular 50
11 Trolleybus 150
12 Monorail 150
- Unknown 200

You can see more about this notice here.

Only the first 50 of 191 affected records are displayed below.

tripCsvRowNumber (?) The row number of the problematic trip. tripId (?) `trip_id` of the problematic trip. routeId (?) `route_id` of the problematic trip. speedKph (?) Travel speed (km/h). distanceKm (?) Distance between stops (km). csvRowNumber1 (?) The row number of the first stop time. stopSequence1 (?) `stop_sequence` of the first stop. stopId1 (?) `stop_id` of the first stop. stopName1 (?) `stop_name` of the first stop. departureTime1 (?) `departure_time` of the first stop. csvRowNumber2 (?) The row number of the second stop time. stopSequence2 (?) `stop_sequence` of the second stop. stopId2 (?) `stop_id` of the second stop. stopName2 (?) `stop_name` of the second stop. arrivalTime2 (?) `arrival_time` of the second stop.
2308 "101698-428088" "101698-2713" 616.8375803890664 0.6853750893211848 75937 39 "101698-6155" "190 Hanlon Creek southbound" "18:27:19" 75938 40 "101698-6211" "Cooper at Quarterman eastbound" "18:27:23"
2308 "101698-428088" "101698-2713" 347.8598014128564 0.1932554452293647 75939 41 "101698-6212" "56 Quarterman southbound" "18:28:44" 75940 42 "101698-6213" "Quarterman at Laird westbound" "18:28:46"
1533 "101698-428033" "101698-2713" 493.4700643112531 0.6853750893211848 52437 39 "101698-6155" "190 Hanlon Creek southbound" "24:29:01" 52438 40 "101698-6211" "Cooper at Quarterman eastbound" "24:29:06"
464 "101698-427994" "101698-2713" 493.4700643112531 0.6853750893211848 16444 39 "101698-6155" "190 Hanlon Creek southbound" "24:29:01" 16445 40 "101698-6211" "Cooper at Quarterman eastbound" "24:29:06"
1533 "101698-428033" "101698-2713" 347.8598014128564 0.1932554452293647 52439 41 "101698-6212" "56 Quarterman southbound" "24:30:43" 52440 42 "101698-6213" "Quarterman at Laird westbound" "24:30:45"
464 "101698-427994" "101698-2713" 347.8598014128564 0.1932554452293647 16446 41 "101698-6212" "56 Quarterman southbound" "24:30:43" 16447 42 "101698-6213" "Quarterman at Laird westbound" "24:30:45"
452 "101698-428006" "101698-2713" 493.4700643112531 0.6853750893211848 15844 39 "101698-6155" "190 Hanlon Creek southbound" "18:29:01" 15845 40 "101698-6211" "Cooper at Quarterman eastbound" "18:29:06"
1521 "101698-428045" "101698-2713" 493.4700643112531 0.6853750893211848 51837 39 "101698-6155" "190 Hanlon Creek southbound" "18:29:01" 51838 40 "101698-6211" "Cooper at Quarterman eastbound" "18:29:06"
452 "101698-428006" "101698-2713" 347.8598014128564 0.1932554452293647 15846 41 "101698-6212" "56 Quarterman southbound" "18:30:43" 15847 42 "101698-6213" "Quarterman at Laird westbound" "18:30:45"
1521 "101698-428045" "101698-2713" 347.8598014128564 0.1932554452293647 51839 41 "101698-6212" "56 Quarterman southbound" "18:30:43" 51840 42 "101698-6213" "Quarterman at Laird westbound" "18:30:45"
456 "101698-428002" "101698-2713" 493.4700643112531 0.6853750893211848 16044 39 "101698-6155" "190 Hanlon Creek southbound" "20:29:01" 16045 40 "101698-6211" "Cooper at Quarterman eastbound" "20:29:06"
1525 "101698-428041" "101698-2713" 493.4700643112531 0.6853750893211848 52037 39 "101698-6155" "190 Hanlon Creek southbound" "20:29:01" 52038 40 "101698-6211" "Cooper at Quarterman eastbound" "20:29:06"
456 "101698-428002" "101698-2713" 347.8598014128564 0.1932554452293647 16046 41 "101698-6212" "56 Quarterman southbound" "20:30:43" 16047 42 "101698-6213" "Quarterman at Laird westbound" "20:30:45"
1525 "101698-428041" "101698-2713" 347.8598014128564 0.1932554452293647 52039 41 "101698-6212" "56 Quarterman southbound" "20:30:43" 52040 42 "101698-6213" "Quarterman at Laird westbound" "20:30:45"
2302 "101698-428082" "101698-2713" 616.8375803890664 0.6853750893211848 75637 39 "101698-6155" "190 Hanlon Creek southbound" "15:27:19" 75638 40 "101698-6211" "Cooper at Quarterman eastbound" "15:27:23"
2302 "101698-428082" "101698-2713" 347.8598014128564 0.1932554452293647 75639 41 "101698-6212" "56 Quarterman southbound" "15:28:44" 75640 42 "101698-6213" "Quarterman at Laird westbound" "15:28:46"
1095 "101698-430433" "101698-2731" 262.9287755417698 0.3651788549191247 36748 12 "101698-1614" "Gordon at Lowes southbound" "25:24:22" 36749 13 "101698-1636" "Gordon at Clairfields northbound" "25:24:27"
451 "101698-428007" "101698-2713" 493.4700643112531 0.6853750893211848 15794 39 "101698-6155" "190 Hanlon Creek southbound" "17:59:01" 15795 40 "101698-6211" "Cooper at Quarterman eastbound" "17:59:06"
1520 "101698-428046" "101698-2713" 493.4700643112531 0.6853750893211848 51787 39 "101698-6155" "190 Hanlon Creek southbound" "17:59:01" 51788 40 "101698-6211" "Cooper at Quarterman eastbound" "17:59:06"
451 "101698-428007" "101698-2713" 347.8598014128564 0.1932554452293647 15796 41 "101698-6212" "56 Quarterman southbound" "18:00:43" 15797 42 "101698-6213" "Quarterman at Laird westbound" "18:00:45"
1520 "101698-428046" "101698-2713" 347.8598014128564 0.1932554452293647 51789 41 "101698-6212" "56 Quarterman southbound" "18:00:43" 51790 42 "101698-6213" "Quarterman at Laird westbound" "18:00:45"
1531 "101698-428035" "101698-2713" 493.4700643112531 0.6853750893211848 52337 39 "101698-6155" "190 Hanlon Creek southbound" "23:29:01" 52338 40 "101698-6211" "Cooper at Quarterman eastbound" "23:29:06"
462 "101698-427996" "101698-2713" 493.4700643112531 0.6853750893211848 16344 39 "101698-6155" "190 Hanlon Creek southbound" "23:29:01" 16345 40 "101698-6211" "Cooper at Quarterman eastbound" "23:29:06"
1531 "101698-428035" "101698-2713" 347.8598014128564 0.1932554452293647 52339 41 "101698-6212" "56 Quarterman southbound" "23:30:43" 52340 42 "101698-6213" "Quarterman at Laird westbound" "23:30:45"
462 "101698-427996" "101698-2713" 347.8598014128564 0.1932554452293647 16346 41 "101698-6212" "56 Quarterman southbound" "23:30:43" 16347 42 "101698-6213" "Quarterman at Laird westbound" "23:30:45"
2309 "101698-428089" "101698-2713" 616.8375803890664 0.6853750893211848 75987 39 "101698-6155" "190 Hanlon Creek southbound" "18:57:19" 75988 40 "101698-6211" "Cooper at Quarterman eastbound" "18:57:23"
2309 "101698-428089" "101698-2713" 347.8598014128564 0.1932554452293647 75989 41 "101698-6212" "56 Quarterman southbound" "18:58:44" 75990 42 "101698-6213" "Quarterman at Laird westbound" "18:58:46"
436 "101698-428022" "101698-2713" 493.4700643112531 0.6853750893211848 15044 39 "101698-6155" "190 Hanlon Creek southbound" "10:29:01" 15045 40 "101698-6211" "Cooper at Quarterman eastbound" "10:29:06"
436 "101698-428022" "101698-2713" 347.8598014128564 0.1932554452293647 15046 41 "101698-6212" "56 Quarterman southbound" "10:30:43" 15047 42 "101698-6213" "Quarterman at Laird westbound" "10:30:45"
457 "101698-428001" "101698-2713" 493.4700643112531 0.6853750893211848 16094 39 "101698-6155" "190 Hanlon Creek southbound" "20:59:01" 16095 40 "101698-6211" "Cooper at Quarterman eastbound" "20:59:06"
1526 "101698-428040" "101698-2713" 493.4700643112531 0.6853750893211848 52087 39 "101698-6155" "190 Hanlon Creek southbound" "20:59:01" 52088 40 "101698-6211" "Cooper at Quarterman eastbound" "20:59:06"
457 "101698-428001" "101698-2713" 347.8598014128564 0.1932554452293647 16096 41 "101698-6212" "56 Quarterman southbound" "21:00:43" 16097 42 "101698-6213" "Quarterman at Laird westbound" "21:00:45"
1526 "101698-428040" "101698-2713" 347.8598014128564 0.1932554452293647 52089 41 "101698-6212" "56 Quarterman southbound" "21:00:43" 52090 42 "101698-6213" "Quarterman at Laird westbound" "21:00:45"
2304 "101698-428084" "101698-2713" 616.8375803890664 0.6853750893211848 75737 39 "101698-6155" "190 Hanlon Creek southbound" "16:27:19" 75738 40 "101698-6211" "Cooper at Quarterman eastbound" "16:27:23"
2304 "101698-428084" "101698-2713" 347.8598014128564 0.1932554452293647 75739 41 "101698-6212" "56 Quarterman southbound" "16:28:44" 75740 42 "101698-6213" "Quarterman at Laird westbound" "16:28:46"
447 "101698-428011" "101698-2713" 493.4700643112531 0.6853750893211848 15594 39 "101698-6155" "190 Hanlon Creek southbound" "15:59:01" 15595 40 "101698-6211" "Cooper at Quarterman eastbound" "15:59:06"
1516 "101698-428050" "101698-2713" 493.4700643112531 0.6853750893211848 51587 39 "101698-6155" "190 Hanlon Creek southbound" "15:59:01" 51588 40 "101698-6211" "Cooper at Quarterman eastbound" "15:59:06"
447 "101698-428011" "101698-2713" 347.8598014128564 0.1932554452293647 15596 41 "101698-6212" "56 Quarterman southbound" "16:00:43" 15597 42 "101698-6213" "Quarterman at Laird westbound" "16:00:45"
1516 "101698-428050" "101698-2713" 347.8598014128564 0.1932554452293647 51589 41 "101698-6212" "56 Quarterman southbound" "16:00:43" 51590 42 "101698-6213" "Quarterman at Laird westbound" "16:00:45"
429 "101698-428029" "101698-2713" 493.4700643112531 0.6853750893211848 14694 39 "101698-6155" "190 Hanlon Creek southbound" "06:59:01" 14695 40 "101698-6211" "Cooper at Quarterman eastbound" "06:59:06"
1498 "101698-428068" "101698-2713" 493.4700643112531 0.6853750893211848 50687 39 "101698-6155" "190 Hanlon Creek southbound" "06:59:01" 50688 40 "101698-6211" "Cooper at Quarterman eastbound" "06:59:06"
429 "101698-428029" "101698-2713" 347.8598014128564 0.1932554452293647 14696 41 "101698-6212" "56 Quarterman southbound" "07:00:43" 14697 42 "101698-6213" "Quarterman at Laird westbound" "07:00:45"
1498 "101698-428068" "101698-2713" 347.8598014128564 0.1932554452293647 50689 41 "101698-6212" "56 Quarterman southbound" "07:00:43" 50690 42 "101698-6213" "Quarterman at Laird westbound" "07:00:45"
428 "101698-428030" "101698-2713" 493.4700643112531 0.6853750893211848 14644 38 "101698-6155" "190 Hanlon Creek southbound" "06:29:01" 14645 39 "101698-6211" "Cooper at Quarterman eastbound" "06:29:06"
1497 "101698-428069" "101698-2713" 493.4700643112531 0.6853750893211848 50637 38 "101698-6155" "190 Hanlon Creek southbound" "06:29:01" 50638 39 "101698-6211" "Cooper at Quarterman eastbound" "06:29:06"
428 "101698-428030" "101698-2713" 347.8598014128564 0.1932554452293647 14646 40 "101698-6212" "56 Quarterman southbound" "06:30:43" 14647 41 "101698-6213" "Quarterman at Laird westbound" "06:30:45"
1497 "101698-428069" "101698-2713" 347.8598014128564 0.1932554452293647 50639 40 "101698-6212" "56 Quarterman southbound" "06:30:43" 50640 41 "101698-6213" "Quarterman at Laird westbound" "06:30:45"
1502 "101698-428064" "101698-2713" 493.4700643112531 0.6853750893211848 50887 39 "101698-6155" "190 Hanlon Creek southbound" "08:59:01" 50888 40 "101698-6211" "Cooper at Quarterman eastbound" "08:59:06"
1502 "101698-428064" "101698-2713" 347.8598014128564 0.1932554452293647 50889 41 "101698-6212" "56 Quarterman southbound" "09:00:43" 50890 42 "101698-6213" "Quarterman at Laird westbound" "09:00:45"
2298 "101698-428078" "101698-2713" 616.8375803890664 0.6853750893211848 75437 39 "101698-6155" "190 Hanlon Creek southbound" "13:27:19" 75438 40 "101698-6211" "Cooper at Quarterman eastbound" "13:27:23"
feed_expiration_date7_days WARNING 1

feed_expiration_date7_days

Dataset should be valid for at least the next 7 days.

The dataset expiration date defined in feed_info.txt is in seven days or less. At any time, the published GTFS dataset should be valid for at least the next 7 days.

You can see more about this notice here.

csvRowNumber (?) The row number of the faulty record. currentDate (?) Current date (YYYYMMDD format). feedEndDate (?) Feed end date (YYYYMMDD format). suggestedExpirationDate (?) Suggested expiration date (YYYYMMDD format).
2 "20251212" "20250830" "20251219"
mixed_case_recommended_field WARNING 1

mixed_case_recommended_field

This field has customer-facing text and should use Mixed Case (should contain upper and lower case letters).

This field contains customer-facing text and should use Mixed Case (upper and lower case letters) to ensure good readability when displayed to riders. Avoid the use of abbreviations throughout the feed (e.g. St. for Street) unless a location is called by its abbreviated name (e.g. “JFK Airport”). Abbreviations may be problematic for accessibility by screen reader software and voice user interfaces.

Good examples:
Field Text Dataset
"Schwerin, Hauptbahnhof" Verkehrsverbund Berlin-Brandenburg
"Red Hook/Atlantic Basin" NYC Ferry
"Campo Grande Norte" Carris
Bad examples:
Field Text
"GALLERIA MALL"
"3427 GG 17"
"21 Clark Rd Est"

You can see more about this notice here.

filename (?) Name of the faulty file. fieldName (?) Name of the faulty field. fieldValue (?) Faulty value. csvRowNumber (?) The row number of the faulty record.
"routes.txt" "route_short_name" "99lite" 23
stop_too_far_from_shape WARNING 5

stop_too_far_from_shape

Stop too far from trip shape.

Per GTFS Best Practices, route alignments (in shapes.txt) should be within 100 meters of stop locations which a trip serves. This potentially indicates a problem with the location of the stop or the path of the shape.

You can see more about this notice here.

tripCsvRowNumber (?) The row number of the faulty record from `trips.txt`. shapeId (?) The id of the shape that is referred to. tripId (?) The id of the trip that is referred to. stopTimeCsvRowNumber (?) The row number of the faulty record from `stop_times.txt`. stopId (?) The id of the stop that is referred to. stopName (?) The name of the stop that is referred to. match (?) Latitude and longitude pair of the location. geoDistanceToShape (?) Distance from stop to shape.
1078 "101698-8650" "101698-429822" 36339 "101698-5851" "Guelph Central Station Platform 4" [43.54478,-80.248102] 249.20576379300738
1087 "101698-8651" "101698-429832" 36572 "101698-5851" "Guelph Central Station Platform 4" [43.544652,-80.24709] 189.576962412906
978 "101698-8648" "101698-429723" 32851 "101698-5851" "Guelph Central Station Platform 4" [43.544652,-80.24709] 189.576962412906
965 "101698-8643" "101698-429694" 32508 "101698-5851" "Guelph Central Station Platform 4" [43.54478,-80.248102] 249.20576379300738
1883 "101698-8642" "101698-429908" 63226 "101698-5851" "Guelph Central Station Platform 4" [43.54478,-80.248102] 249.20576379300738
trip_coverage_not_active_for_next7_days WARNING 1

trip_coverage_not_active_for_next7_days

Trips data should be valid for at least the next seven days.

This notice is triggered if the date range where a significant number of trips are running ends in less than 7 days.

You can see more about this notice here.

currentDate (?) Current date (YYYYMMDD format). serviceWindowStartDate (?) The start date of the majority service window. serviceWindowEndDate (?) The end date of the majority service window.
"20251212" "20250505" "20250830"