kalamazoo-metro-transit — Enhanced Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 8.0.1 at 2026-09-18T18:08:11Z,
for the dataset file:///shared/kalamazoo-metro-transit_27bbb008.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


  • Capital Area Transportation Authority

Feed Info


Publisher Name:
Busmaps.com
Publisher URL:
https://busmaps.com
Feed Language:
English
Feed Start Date:
2026-08-24
Feed End Date:
2026-10-11

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: 494
  • Routes: 30
  • Shapes: 89
  • Stops: 1311
  • Trips: 11605

Specification Compliance report

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

Notice Code Severity Total
fast_travel_between_consecutive_stops WARNING 83

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 83 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.
6971 "2090-4298366" "2090-12553" 165.65541531854035 0.23007696572019493 192136 5 "2090-3795" "SBD Holmes past Hazel St" "08:45:19" 192137 6 "2090-3796" "EBD Perkins past Holmes St" "08:45:24"
6971 "2090-4298366" "2090-12553" 220.75205952679497 0.42924011574654575 192144 13 "2090-2002" "EBD Forest past Aurelius Rd" "08:52:00" 192145 14 "2090-2003" "EBD Forest past Aurora Dr" "08:52:07"
11445 "2090-4298165" "2090-12553" 165.65541531854035 0.23007696572019493 310621 5 "2090-3795" "SBD Holmes past Hazel St" "07:45:19" 310622 6 "2090-3796" "EBD Perkins past Holmes St" "07:45:24"
11445 "2090-4298165" "2090-12553" 220.75205952679497 0.42924011574654575 310629 13 "2090-2002" "EBD Forest past Aurelius Rd" "07:52:00" 310630 14 "2090-2003" "EBD Forest past Aurora Dr" "07:52:07"
11445 "2090-4298165" "2090-12553" 362.2894745855726 0.7044517561386134 310642 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "07:59:35" 310643 27 "2090-5581" "EBD Jolly Past Belle Chase" "07:59:42"
8086 "2090-4298152" "2090-12553" 165.65541531854035 0.23007696572019493 223372 5 "2090-3795" "SBD Holmes past Hazel St" "17:20:19" 223373 6 "2090-3796" "EBD Perkins past Holmes St" "17:20:24"
8086 "2090-4298152" "2090-12553" 220.75205952679497 0.42924011574654575 223380 13 "2090-2002" "EBD Forest past Aurelius Rd" "17:27:00" 223381 14 "2090-2003" "EBD Forest past Aurora Dr" "17:27:07"
8086 "2090-4298152" "2090-12553" 362.2894745855726 0.7044517561386134 223393 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "17:34:35" 223394 27 "2090-5581" "EBD Jolly Past Belle Chase" "17:34:42"
561 "2090-4298161" "2090-12553" 165.65541531854035 0.23007696572019493 16894 5 "2090-3795" "SBD Holmes past Hazel St" "10:35:19" 16895 6 "2090-3796" "EBD Perkins past Holmes St" "10:35:24"
561 "2090-4298161" "2090-12553" 220.75205952679497 0.42924011574654575 16902 13 "2090-2002" "EBD Forest past Aurelius Rd" "10:42:00" 16903 14 "2090-2003" "EBD Forest past Aurora Dr" "10:42:07"
561 "2090-4298161" "2090-12553" 362.2894745855726 0.7044517561386134 16915 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "10:49:35" 16916 27 "2090-5581" "EBD Jolly Past Belle Chase" "10:49:42"
4874 "2090-4298164" "2090-12553" 165.65541531854035 0.23007696572019493 133886 5 "2090-3795" "SBD Holmes past Hazel St" "08:20:19" 133887 6 "2090-3796" "EBD Perkins past Holmes St" "08:20:24"
4874 "2090-4298164" "2090-12553" 220.75205952679497 0.42924011574654575 133894 13 "2090-2002" "EBD Forest past Aurelius Rd" "08:27:00" 133895 14 "2090-2003" "EBD Forest past Aurora Dr" "08:27:07"
4874 "2090-4298164" "2090-12553" 362.2894745855726 0.7044517561386134 133907 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "08:34:35" 133908 27 "2090-5581" "EBD Jolly Past Belle Chase" "08:34:42"
7710 "2090-4298358" "2090-12553" 165.65541531854035 0.23007696572019493 211734 5 "2090-3795" "SBD Holmes past Hazel St" "19:45:19" 211735 6 "2090-3796" "EBD Perkins past Holmes St" "19:45:24"
7710 "2090-4298358" "2090-12553" 220.75205952679497 0.42924011574654575 211742 13 "2090-2002" "EBD Forest past Aurelius Rd" "19:52:00" 211743 14 "2090-2003" "EBD Forest past Aurora Dr" "19:52:07"
11447 "2090-4298163" "2090-12553" 165.65541531854035 0.23007696572019493 310709 5 "2090-3795" "SBD Holmes past Hazel St" "09:05:19" 310710 6 "2090-3796" "EBD Perkins past Holmes St" "09:05:24"
11447 "2090-4298163" "2090-12553" 220.75205952679497 0.42924011574654575 310717 13 "2090-2002" "EBD Forest past Aurelius Rd" "09:12:00" 310718 14 "2090-2003" "EBD Forest past Aurora Dr" "09:12:07"
11447 "2090-4298163" "2090-12553" 362.2894745855726 0.7044517561386134 310730 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "09:19:35" 310731 27 "2090-5581" "EBD Jolly Past Belle Chase" "09:19:42"
8429 "2090-4298363" "2090-12553" 165.65541531854035 0.23007696572019493 232681 5 "2090-3795" "SBD Holmes past Hazel St" "13:05:19" 232682 6 "2090-3796" "EBD Perkins past Holmes St" "13:05:24"
8429 "2090-4298363" "2090-12553" 220.75205952679497 0.42924011574654575 232689 13 "2090-2002" "EBD Forest past Aurelius Rd" "13:12:00" 232690 14 "2090-2003" "EBD Forest past Aurora Dr" "13:12:07"
1615 "2090-4298359" "2090-12553" 165.65541531854035 0.23007696572019493 47028 5 "2090-3795" "SBD Holmes past Hazel St" "18:25:19" 47029 6 "2090-3796" "EBD Perkins past Holmes St" "18:25:24"
1615 "2090-4298359" "2090-12553" 220.75205952679497 0.42924011574654575 47036 13 "2090-2002" "EBD Forest past Aurelius Rd" "18:32:00" 47037 14 "2090-2003" "EBD Forest past Aurora Dr" "18:32:07"
8719 "2090-4298160" "2090-12553" 165.65541531854035 0.23007696572019493 240666 5 "2090-3795" "SBD Holmes past Hazel St" "11:20:19" 240667 6 "2090-3796" "EBD Perkins past Holmes St" "11:20:24"
8719 "2090-4298160" "2090-12553" 220.75205952679497 0.42924011574654575 240674 13 "2090-2002" "EBD Forest past Aurelius Rd" "11:27:00" 240675 14 "2090-2003" "EBD Forest past Aurora Dr" "11:27:07"
8719 "2090-4298160" "2090-12553" 362.2894745855726 0.7044517561386134 240687 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "11:34:35" 240688 27 "2090-5581" "EBD Jolly Past Belle Chase" "11:34:42"
6129 "2090-4298156" "2090-12553" 165.65541531854035 0.23007696572019493 167679 5 "2090-3795" "SBD Holmes past Hazel St" "14:20:19" 167680 6 "2090-3796" "EBD Perkins past Holmes St" "14:20:24"
6129 "2090-4298156" "2090-12553" 220.75205952679497 0.42924011574654575 167687 13 "2090-2002" "EBD Forest past Aurelius Rd" "14:27:00" 167688 14 "2090-2003" "EBD Forest past Aurora Dr" "14:27:07"
6129 "2090-4298156" "2090-12553" 362.2894745855726 0.7044517561386134 167700 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "14:34:35" 167701 27 "2090-5581" "EBD Jolly Past Belle Chase" "14:34:42"
11448 "2090-4298162" "2090-12553" 165.65541531854035 0.23007696572019493 310758 5 "2090-3795" "SBD Holmes past Hazel St" "09:50:19" 310759 6 "2090-3796" "EBD Perkins past Holmes St" "09:50:24"
11448 "2090-4298162" "2090-12553" 220.75205952679497 0.42924011574654575 310766 13 "2090-2002" "EBD Forest past Aurelius Rd" "09:57:00" 310767 14 "2090-2003" "EBD Forest past Aurora Dr" "09:57:07"
11448 "2090-4298162" "2090-12553" 362.2894745855726 0.7044517561386134 310779 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "10:04:35" 310780 27 "2090-5581" "EBD Jolly Past Belle Chase" "10:04:42"
283 "2090-4298149" "2090-12553" 165.65541531854035 0.23007696572019493 8072 5 "2090-3795" "SBD Holmes past Hazel St" "19:35:19" 8073 6 "2090-3796" "EBD Perkins past Holmes St" "19:35:24"
283 "2090-4298149" "2090-12553" 220.75205952679497 0.42924011574654575 8080 13 "2090-2002" "EBD Forest past Aurelius Rd" "19:42:00" 8081 14 "2090-2003" "EBD Forest past Aurora Dr" "19:42:07"
283 "2090-4298149" "2090-12553" 362.2894745855726 0.7044517561386134 8093 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "19:49:35" 8094 27 "2090-5581" "EBD Jolly Past Belle Chase" "19:49:42"
8430 "2090-4298362" "2090-12553" 165.65541531854035 0.23007696572019493 232722 5 "2090-3795" "SBD Holmes past Hazel St" "14:25:19" 232723 6 "2090-3796" "EBD Perkins past Holmes St" "14:25:24"
8430 "2090-4298362" "2090-12553" 220.75205952679497 0.42924011574654575 232730 13 "2090-2002" "EBD Forest past Aurelius Rd" "14:32:00" 232731 14 "2090-2003" "EBD Forest past Aurora Dr" "14:32:07"
8427 "2090-4298361" "2090-12553" 165.65541531854035 0.23007696572019493 232599 5 "2090-3795" "SBD Holmes past Hazel St" "15:45:19" 232600 6 "2090-3796" "EBD Perkins past Holmes St" "15:45:24"
8427 "2090-4298361" "2090-12553" 220.75205952679497 0.42924011574654575 232607 13 "2090-2002" "EBD Forest past Aurelius Rd" "15:52:00" 232608 14 "2090-2003" "EBD Forest past Aurora Dr" "15:52:07"
777 "2090-4298159" "2090-12553" 165.65541531854035 0.23007696572019493 22493 5 "2090-3795" "SBD Holmes past Hazel St" "12:05:19" 22494 6 "2090-3796" "EBD Perkins past Holmes St" "12:05:24"
777 "2090-4298159" "2090-12553" 220.75205952679497 0.42924011574654575 22501 13 "2090-2002" "EBD Forest past Aurelius Rd" "12:12:00" 22502 14 "2090-2003" "EBD Forest past Aurora Dr" "12:12:07"
777 "2090-4298159" "2090-12553" 362.2894745855726 0.7044517561386134 22514 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "12:19:35" 22515 27 "2090-5581" "EBD Jolly Past Belle Chase" "12:19:42"
10962 "2090-4298147" "2090-12553" 165.65541531854035 0.23007696572019493 297447 5 "2090-3795" "SBD Holmes past Hazel St" "21:05:19" 297448 6 "2090-3796" "EBD Perkins past Holmes St" "21:05:24"
10962 "2090-4298147" "2090-12553" 220.75205952679497 0.42924011574654575 297455 13 "2090-2002" "EBD Forest past Aurelius Rd" "21:12:00" 297456 14 "2090-2003" "EBD Forest past Aurora Dr" "21:12:07"
10962 "2090-4298147" "2090-12553" 362.2894745855726 0.7044517561386134 297468 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "21:19:35" 297469 27 "2090-5581" "EBD Jolly Past Belle Chase" "21:19:42"
8424 "2090-4298364" "2090-12553" 165.65541531854035 0.23007696572019493 232511 5 "2090-3795" "SBD Holmes past Hazel St" "11:25:19" 232512 6 "2090-3796" "EBD Perkins past Holmes St" "11:25:24"
8424 "2090-4298364" "2090-12553" 220.75205952679497 0.42924011574654575 232519 13 "2090-2002" "EBD Forest past Aurelius Rd" "11:32:00" 232520 14 "2090-2003" "EBD Forest past Aurora Dr" "11:32:07"
6134 "2090-4298153" "2090-12553" 165.65541531854035 0.23007696572019493 167908 5 "2090-3795" "SBD Holmes past Hazel St" "16:35:19" 167909 6 "2090-3796" "EBD Perkins past Holmes St" "16:35:24"
6134 "2090-4298153" "2090-12553" 220.75205952679497 0.42924011574654575 167916 13 "2090-2002" "EBD Forest past Aurelius Rd" "16:42:00" 167917 14 "2090-2003" "EBD Forest past Aurora Dr" "16:42:07"
6134 "2090-4298153" "2090-12553" 362.2894745855726 0.7044517561386134 167929 26 "2090-4469" "EBD Jolly Rd past Five Oaks Dr" "16:49:35" 167930 27 "2090-5581" "EBD Jolly Past Belle Chase" "16:49:42"
feed_expiration_date30_days WARNING 1

feed_expiration_date30_days

Dataset should cover at least the next 30 days of service.

At any time, the GTFS dataset should cover at least the next 30 days of service, and ideally for as long as the operator is confident that the schedule will continue to be operated.

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 "20260918" "20261011" "20261018"
stops_match_shape_out_of_order WARNING 2

stops_match_shape_out_of_order

Two stop entries are different than their arrival-departure order defined by shapes.txt.

This could indicate a problem with the location of the stops, the path of the shape, or the sequence of the stops for their trip.

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. stopTimeCsvRowNumber1 (?) The row number of the first faulty record from `stop_times.txt`. stopId1 (?) The id of the first stop that is referred to. stopName1 (?) The name of the first stop that is referred to. match1 (?) Latitude and longitude pair of the first matching location. stopTimeCsvRowNumber2 (?) The row number of the second faulty record from `stop_times.txt`. stopId2 (?) The id of the second stop that is referred to. stopName2 (?) The name of the second stop that is referred to. match2 (?) Latitude and longitude pair of the second matching location.
680 "2090-57659" "2090-4298127" 19889 "2090-5647" "WBD Jolly before Cedar" [42.68297315468037,-84.54599068988091] 19888 "2090-6180" "EBD Jolly past Ora" [42.682987573455605,-84.55469469456926]
598 "2090-57711" "2090-4313468" 17741 "2090-6042" "Capital Area Multimodal Gateway" [42.7188692993846,-84.49643649168124] 17740 "2090-2572" "SBD Harrison before Service Rd" [42.718819000017255,-84.493899]