GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2025-12-13T00:42:08Z,
for the dataset file:///shared/kalamazoo-metro-transit.zip. No country code was provided.

Use this report alongside our documentation.

Summary

Agencies included


  • Capital Area Transportation Authority

Feed Info


Publisher Name:
Capital Area Transportation Authority
Publisher URL:
http://www.cata.org
Feed Email:
N/A
Feed Language:
English
Feed Start Date:
2025-10-13
Feed End Date:
2026-01-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: 960
  • Routes: 74
  • Shapes: 199
  • Stops: 1410
  • Trips: 20022

Specification Compliance report

122041 notices reported (21 errors, 122020 warnings, 0 infos)

Notice Code Severity Total
decreasing_or_equal_stop_time_distance ERROR 20

decreasing_or_equal_stop_time_distance

Decreasing or equal shape_dist_traveled in stop_times.txt.

When sorted by stop_times.stop_sequence, two consecutive entries in stop_times.txt should have increasing distance, based on the field shape_dist_traveled. If the values are equal, this is considered as an error.

You can see more about this notice here.

tripId (?) The id of the faulty trip. stopId (?) The id of the faulty stop. csvRowNumber (?) The row number from `stop_times.txt`. shapeDistTraveled (?) Actual distance traveled along the shape from the first shape point to the faulty record. stopSequence (?) The faulty record's `stop_times.stop_sequence`. prevCsvRowNumber (?) The row number from `stop_times.txt` of the previous stop time. prevShapeDistTraveled (?) Actual distance traveled along the shape from the first shape point to the previous stop time. prevStopSequence (?) The previous record's `stop_times.stop_sequence`.
"4172757" "3039" 215973 1.5624 7 215972 1.5624 6
"4172757" "3040" 215974 1.5624 8 215973 1.5624 7
"4172759" "3039" 216169 1.5624 7 216168 1.5624 6
"4172759" "3040" 216170 1.5624 8 216169 1.5624 7
"4172761" "3039" 514616 1.5624 7 514615 1.5624 6
"4172761" "3040" 514617 1.5624 8 514616 1.5624 7
"4172753" "3039" 216084 1.5624 7 216083 1.5624 6
"4172753" "3040" 216085 1.5624 8 216084 1.5624 7
"4172755" "3039" 356494 1.5624 7 356493 1.5624 6
"4172755" "3040" 356495 1.5624 8 356494 1.5624 7
"4162630" "3039" 67591 1.5624 7 67590 1.5624 6
"4162630" "3040" 67592 1.5624 8 67591 1.5624 7
"4162634" "3039" 67735 1.5624 7 67734 1.5624 6
"4162634" "3040" 67736 1.5624 8 67735 1.5624 7
"4162632" "3039" 67519 1.5624 7 67518 1.5624 6
"4162632" "3040" 67520 1.5624 8 67519 1.5624 7
"4162638" "3039" 67860 1.5624 7 67859 1.5624 6
"4162638" "3040" 67861 1.5624 8 67860 1.5624 7
"4162636" "3039" 67663 1.5624 7 67662 1.5624 6
"4162636" "3040" 67664 1.5624 8 67663 1.5624 7
equal_shape_distance_diff_coordinates ERROR 1

equal_shape_distance_diff_coordinates

Two consecutive points have equal shape_dist_traveled and different lat/lon coordinates in shapes.txt and the distance between the two points is greater than the 1.11m.

When sorted by shape.shape_pt_sequence, the values for shape_dist_traveled must increase along a shape. Two consecutive points with equal values for shape_dist_traveled and different coordinates indicate an error.

You can see more about this notice here.

shapeId (?) The id of the faulty shape. csvRowNumber (?) The row number from `shapes.txt`. shapeDistTraveled (?) The faulty record's `shape_dist_traveled` value. shapePtSequence (?) The faulty record's `shapes.shape_pt_sequence`. prevCsvRowNumber (?) The row number from `shapes.txt` of the previous shape point. prevShapeDistTraveled (?) The previous shape point's `shape_dist_traveled` value. prevShapePtSequence (?) The previous record's `shapes.shape_pt_sequence`. actualDistanceBetweenShapePoints (?) Actual distance traveled along the shape from the first shape point to the previous shape point.
"55588" 15233 12.4349 256 15232 12.4349 255 2097.2126219719753
duplicate_route_name WARNING 37

duplicate_route_name

Two distinct routes have either the same route_short_name, the same route_long_name, or the same combination of route_short_name and route_long_name.

All routes of the same route_type with the same agency_id should have unique combinations of route_short_name and route_long_name.

Note that there may be valid cases where routes have the same short and long name, e.g., if they serve different areas. However, different directions must be modeled as the same route.

Example of bad data:

route_id route_short_name route_long_name
route1 U1 Southern
route2 U1 Southern

You can see more about this notice here.

csvRowNumber1 (?) The row number of the first occurrence. routeId1 (?) The id of the the first occurrence. csvRowNumber2 (?) The row number of the other occurrence. routeId2 (?) The id of the the other occurrence. routeShortName (?) Common `routes.route_short_name`. routeLongName (?) Common `routes.route_long_name`. routeTypeValue (?) Common `routes.route_type`. agencyId (?) Common `routes.agency_id`.
17 "12070" 24 "12116" "34" "BRODY NEIGHBORHOOD - UNIV. VILLAGE" 3 "01"
16 "12071" 25 "12117" "35" "SOUTH NEIGHBORHOOD" 3 "01"
15 "12072" 26 "12118" "36" "EAST NEIGHBORHOOD" 3 "01"
14 "12073" 27 "12119" "39" "UNIVERSITY VILLAGE" 3 "01"
21 "12049" 28 "12095" "09" "SOUTH MLK - MILLER" 3 "01"
2 "12051" 30 "12097" "11" "WAVERLY - COLONIAL VILLAGE" 3 "01"
3 "12050" 31 "12096" "10" "NORTH LANSING - TURNER" 3 "01"
4 "12053" 38 "12099" "13" "GROESBECK AREA" 3 "01"
5 "12052" 39 "12098" "12" "W. MICHIGAN - WAVERLY - LCC WEST" 3 "01"
35 "12092" 45 "12046" "06" "CEDAR - JOLLY CONNECTION" 3 "01"
34 "12093" 46 "12047" "07" "AURELIUS-MILLER" 3 "01"
33 "12090" 47 "12044" "04" "ENTERTAINMENT EXPRESS" 0 "01"
32 "12091" 48 "12045" "05" "SOUTH CEDAR-EDGEWOOD" 3 "01"
40 "12106" 49 "12060" "22" "MSU - HASLETT - OKEMOS" 3 "01"
18 "12110" 53 "12064" "26" "ABBOT - CHANDLER" 3 "01"
19 "12111" 54 "12065" "261" "ABBOT - CHANDLER LATE NITE" 0 "01"
20 "12112" 55 "12066" "30" "SOUTH & EAST NEIGHBORHOODS" 3 "01"
41 "12113" 56 "12067" "31" "BRODY & EAST NEIGHBORHOODS" 3 "01"
50 "12061" 57 "12107" "23" "MSU - OKEMOS - HASLETT" 3 "01"
22 "12114" 58 "12068" "32" "COMM LOT- SNYDER HALL - CLIN CENTER" 3 "01"
10 "12059" 59 "12105" "20" "SOUTH HARRISON - JOLLY - DUNCKEL" 3 "01"
11 "12058" 60 "12104" "18" "CAPITAL CITY CROSSTOWN" 3 "01"
8 "12057" 61 "12103" "17" "GRAB & GO EXPRESS" 0 "01"
9 "12056" 62 "12102" "16" "OLD TOWN - W. LK LANSING - EASTWOOD" 3 "01"
6 "12055" 63 "12101" "15" "KALAMAZOO - FRANDOR" 3 "01"
23 "12115" 64 "12069" "33" "UNION - S.NEIGHBORHOOD" 3 "01"
7 "12054" 65 "12100" "14" "NORTH GRAND RIVER-OLD TOWN-AIRPORT" 3 "01"
52 "12063" 66 "12109" "25" "NORTH HARRISON" 3 "01"
51 "12062" 67 "12108" "24" "EAST LANSING - E. LAKE LANSING ROAD" 3 "01"
29 "12094" 68 "12048" "08" "PENNSYLVANIA - HOLT" 3 "01"
44 "12041" 69 "12087" "01" "DOWNTOWN LANSING-MERIDIAN MALL" 3 "01"
36 "12130" 70 "12084" "80" "CHARLOTTE CONNECTOR" 3 "01"
37 "12131" 71 "12085" "81" "GRAND LEDGE CONNECTOR" 3 "01"
12 "12075" 72 "12121" "48" "WILLIAMSTON-WEBBERVILLE LTD" 3 "01"
13 "12074" 73 "12120" "46" "MASON LTD" 3 "01"
42 "12042" 74 "12088" "02" "SOUTH WASHINGTON-PLEASANT GROVE" 3 "01"
43 "12043" 75 "12089" "03" "WILLOW-MARKETPLACE" 3 "01"
expired_calendar WARNING 5

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 "1_merged_4191981"
5 "9_merged_4191985"
7 "5_merged_4191983"
13 "10_merged_4191979"
14 "16_merged_4191980"
fast_travel_between_consecutive_stops WARNING 1691

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 1691 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.
4232 "4155454" "12054" 937.7159005072015 0.2604766390297782 133603 25 "2411" "WBD Delta River at Newport Dr" "13:42:18" 133604 26 "2412" "WBD Delta River past Amherst Dr" "13:42:19"
986 "4155395" "12054" 937.7159005072015 0.2604766390297782 32376 25 "2411" "WBD Delta River at Newport Dr" "13:42:18" 32377 26 "2412" "WBD Delta River past Amherst Dr" "13:42:19"
1772 "4155513" "12054" 937.7159005072015 0.2604766390297782 57834 25 "2411" "WBD Delta River at Newport Dr" "13:42:18" 57835 26 "2412" "WBD Delta River past Amherst Dr" "13:42:19"
1043 "4155572" "12054" 937.7159005072015 0.2604766390297782 34617 25 "2411" "WBD Delta River at Newport Dr" "13:42:18" 34618 26 "2412" "WBD Delta River past Amherst Dr" "13:42:19"
6752 "4191128" "12114" 889.9822948056776 0.7416519123380647 210493 8 "5951" "Lot 92 - MSU Clinical Center" "08:10:00" 210494 9 "5802" "SBD Farm Lane past Green Way Drive" "08:10:03"
13203 "4189897" "12114" 889.9822948056776 0.7416519123380647 409526 8 "5951" "Lot 92 - MSU Clinical Center" "08:10:00" 409527 9 "5802" "SBD Farm Lane past Green Way Drive" "08:10:03"
4864 "4187402" "12114" 889.9822948056776 0.7416519123380647 151143 8 "5951" "Lot 92 - MSU Clinical Center" "08:10:00" 151144 9 "5802" "SBD Farm Lane past Green Way Drive" "08:10:03"
11923 "4188666" "12114" 889.9822948056776 0.7416519123380647 370017 8 "5951" "Lot 92 - MSU Clinical Center" "08:10:00" 370018 9 "5802" "SBD Farm Lane past Green Way Drive" "08:10:03"
13913 "4188166" "12100" 937.7159005072015 0.2604766390297782 430584 25 "2411" "WBD Delta River at Newport Dr" "13:42:18" 430585 26 "2412" "WBD Delta River past Amherst Dr" "13:42:19"
19708 "4189397" "12100" 937.7159005072015 0.2604766390297782 605703 25 "2411" "WBD Delta River at Newport Dr" "13:42:18" 605704 26 "2412" "WBD Delta River past Amherst Dr" "13:42:19"
9363 "4190628" "12100" 937.7159005072015 0.2604766390297782 291730 25 "2411" "WBD Delta River at Newport Dr" "13:42:18" 291731 26 "2412" "WBD Delta River past Amherst Dr" "13:42:19"
7008 "4153362" "12047" 157.20361584592234 0.2183383553415588 218509 6 "3795" "SBD Holmes past Hazel St" "07:45:19" 218510 7 "3796" "EBD Perkins past Holmes St" "07:45:24"
7008 "4153362" "12047" 220.75205952679497 0.42924011574654575 218517 14 "2002" "EBD Forest past Aurelius Rd" "07:52:00" 218518 15 "2003" "EBD Forest past Aurora Dr" "07:52:07"
7008 "4153362" "12047" 412.88691924385154 0.8028356763074891 218530 27 "4469" "EBD Jolly Rd before Five Oaks Dr" "07:59:35" 218531 28 "5581" "EBD Jolly Past Belle Chase" "07:59:42"
12519 "4190181" "12089" 171.22256389839066 0.2378091165255426 388188 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 388189 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
250 "4188950" "12089" 171.22256389839066 0.2378091165255426 9101 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 9102 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
19659 "4187719" "12089" 171.22256389839066 0.2378091165255426 604118 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 604119 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
17350 "4187365" "12089" 171.22256389839066 0.2378091165255426 534327 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 534328 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
10459 "4153079" "12045" 160.4362847312648 0.5347876157708827 325263 10 "3336" "NBD Cedar past Kaynorth Rd" "05:34:12" 325264 11 "3337" "NBD Cedar past Northrup St" "05:34:24"
1869 "4152985" "12045" 160.4362847312648 0.5347876157708827 61162 10 "3336" "NBD Cedar past Kaynorth Rd" "05:34:12" 61163 11 "3337" "NBD Cedar past Northrup St" "05:34:24"
7583 "4152891" "12045" 160.4362847312648 0.5347876157708827 235639 10 "3336" "NBD Cedar past Kaynorth Rd" "05:34:12" 235640 11 "3337" "NBD Cedar past Northrup St" "05:34:24"
7416 "4152797" "12045" 160.4362847312648 0.5347876157708827 230151 10 "3336" "NBD Cedar past Kaynorth Rd" "05:34:12" 230152 11 "3337" "NBD Cedar past Northrup St" "05:34:24"
1674 "4190193" "12089" 171.22256389839066 0.2378091165255426 54393 23 "1854" "EBD Saginaw past Harriet Ave" "21:07:55" 54394 24 "1855" "EBD Saginaw past Renker Rd" "21:08:00"
7437 "4188962" "12089" 171.22256389839066 0.2378091165255426 230882 23 "1854" "EBD Saginaw past Harriet Ave" "21:07:55" 230883 24 "1855" "EBD Saginaw past Renker Rd" "21:08:00"
9200 "4187731" "12089" 171.22256389839066 0.2378091165255426 286298 23 "1854" "EBD Saginaw past Harriet Ave" "21:07:55" 286299 24 "1855" "EBD Saginaw past Renker Rd" "21:08:00"
170 "4187377" "12089" 171.22256389839066 0.2378091165255426 5939 23 "1854" "EBD Saginaw past Harriet Ave" "21:07:55" 5940 24 "1855" "EBD Saginaw past Renker Rd" "21:08:00"
12361 "4186650" "12093" 157.20361584592234 0.2183383553415588 384132 6 "3795" "SBD Holmes past Hazel St" "20:20:16" 384133 7 "3796" "EBD Perkins past Holmes St" "20:20:21"
18312 "4189060" "12093" 157.20361584592234 0.2183383553415588 564494 6 "3795" "SBD Holmes past Hazel St" "20:20:16" 564495 7 "3796" "EBD Perkins past Holmes St" "20:20:21"
1338 "4190291" "12093" 157.20361584592234 0.2183383553415588 42812 6 "3795" "SBD Holmes past Hazel St" "20:20:16" 42813 7 "3796" "EBD Perkins past Holmes St" "20:20:21"
17448 "4187829" "12093" 157.20361584592234 0.2183383553415588 537754 6 "3795" "SBD Holmes past Hazel St" "20:20:16" 537755 7 "3796" "EBD Perkins past Holmes St" "20:20:21"
12361 "4186650" "12093" 220.75205952679497 0.42924011574654575 384140 14 "2002" "EBD Forest past Aurelius Rd" "20:27:00" 384141 15 "2003" "EBD Forest past Aurora Dr" "20:27:07"
18312 "4189060" "12093" 220.75205952679497 0.42924011574654575 564502 14 "2002" "EBD Forest past Aurelius Rd" "20:27:00" 564503 15 "2003" "EBD Forest past Aurora Dr" "20:27:07"
1338 "4190291" "12093" 220.75205952679497 0.42924011574654575 42820 14 "2002" "EBD Forest past Aurelius Rd" "20:27:00" 42821 15 "2003" "EBD Forest past Aurora Dr" "20:27:07"
17448 "4187829" "12093" 220.75205952679497 0.42924011574654575 537762 14 "2002" "EBD Forest past Aurelius Rd" "20:27:00" 537763 15 "2003" "EBD Forest past Aurora Dr" "20:27:07"
12361 "4186650" "12093" 412.88691924385154 0.8028356763074891 384153 27 "4469" "EBD Jolly Rd before Five Oaks Dr" "20:34:35" 384154 28 "5581" "EBD Jolly Past Belle Chase" "20:34:42"
18312 "4189060" "12093" 412.88691924385154 0.8028356763074891 564515 27 "4469" "EBD Jolly Rd before Five Oaks Dr" "20:34:35" 564516 28 "5581" "EBD Jolly Past Belle Chase" "20:34:42"
1338 "4190291" "12093" 412.88691924385154 0.8028356763074891 42833 27 "4469" "EBD Jolly Rd before Five Oaks Dr" "20:34:35" 42834 28 "5581" "EBD Jolly Past Belle Chase" "20:34:42"
17448 "4187829" "12093" 412.88691924385154 0.8028356763074891 537775 27 "4469" "EBD Jolly Rd before Five Oaks Dr" "20:34:35" 537776 28 "5581" "EBD Jolly Past Belle Chase" "20:34:42"
6696 "4152329" "12043" 171.22256389839066 0.2378091165255426 208347 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 208348 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
245 "4152395" "12043" 171.22256389839066 0.2378091165255426 8914 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 8915 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
16424 "4152527" "12043" 171.22256389839066 0.2378091165255426 505986 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 505987 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
14623 "4152461" "12043" 171.22256389839066 0.2378091165255426 451342 23 "1854" "EBD Saginaw past Harriet Ave" "15:02:55" 451343 24 "1855" "EBD Saginaw past Renker Rd" "15:03:00"
15635 "4190189" "12089" 171.22256389839066 0.2378091165255426 481580 23 "1854" "EBD Saginaw past Harriet Ave" "18:07:55" 481581 24 "1855" "EBD Saginaw past Renker Rd" "18:08:00"
2502 "4188958" "12089" 171.22256389839066 0.2378091165255426 80263 23 "1854" "EBD Saginaw past Harriet Ave" "18:07:55" 80264 24 "1855" "EBD Saginaw past Renker Rd" "18:08:00"
8142 "4187727" "12089" 171.22256389839066 0.2378091165255426 253348 23 "1854" "EBD Saginaw past Harriet Ave" "18:07:55" 253349 24 "1855" "EBD Saginaw past Renker Rd" "18:08:00"
174 "4187373" "12089" 171.22256389839066 0.2378091165255426 6143 23 "1854" "EBD Saginaw past Harriet Ave" "18:07:55" 6144 24 "1855" "EBD Saginaw past Renker Rd" "18:08:00"
15292 "4154397" "12049" 195.97256228516275 0.21774729142795862 471584 47 "4578" "SBD Balfour Dr. past Miller" "11:53:48" 471585 48 "4739" "SBD Balfour Dr. before Georgetown" "11:53:52"
1756 "4154341" "12049" 195.97256228516275 0.21774729142795862 57276 47 "4578" "SBD Balfour Dr. past Miller" "11:53:48" 57277 48 "4739" "SBD Balfour Dr. before Georgetown" "11:53:52"
1419 "4166326" "12088" 800.1574166582598 0.22226594907173883 45067 21 "1803" "NBD Washington before Loa St" "20:48:51" 45068 22 "1804" "NBD Washington past Dunlap St" "20:48:52"
8834 "4166267" "12088" 800.1574166582598 0.22226594907173883 275156 21 "1803" "NBD Washington before Loa St" "20:48:51" 275157 22 "1804" "NBD Washington past Dunlap St" "20:48:52"
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 "20251213" "20260111" "20260112"
missing_feed_contact_email_and_url WARNING 1

missing_feed_contact_email_and_url

Best Practices for feed_info.txt suggest providing at least one of feed_contact_email and feed_contact_url.

You can see more about this notice here.

csvRowNumber (?) The row number of the validated record.
2
missing_timepoint_value WARNING 100000

missing_timepoint_value

stop_times.timepoint value is missing for a record.

When at least one of stop_times.arrival_time or stop_times.departure_time are provided, stop_times.timepoint should be defined

You can see more about this notice here.

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

csvRowNumber (?) The row number of the faulty record. tripId (?) The faulty record's `stop_times.trip_id`. stopSequence (?) The faulty record's `stop_times.stop_sequence`.
2 "4190335" 1
3 "4190335" 2
4 "4190335" 3
5 "4190335" 4
6 "4190335" 5
7 "4190335" 6
8 "4190335" 7
9 "4190335" 8
10 "4190335" 9
11 "4190335" 10
12 "4190335" 11
13 "4190335" 12
14 "4190335" 13
15 "4190335" 14
16 "4190335" 15
17 "4190335" 16
18 "4190335" 17
19 "4190335" 18
20 "4190335" 19
21 "4190335" 20
22 "4190335" 21
23 "4190335" 22
24 "4190335" 23
25 "4190335" 24
26 "4190335" 25
27 "4190335" 26
28 "4190335" 27
29 "4190335" 28
30 "4190335" 29
31 "4190335" 30
32 "4190335" 31
33 "4190335" 32
34 "4190335" 33
35 "4190335" 34
36 "4190335" 35
37 "4190335" 36
38 "4190335" 37
39 "4190335" 38
40 "4190335" 39
41 "4190335" 40
42 "4190335" 41
43 "4190335" 42
44 "4190335" 43
45 "4190335" 44
46 "4190335" 45
47 "4190335" 46
48 "4190335" 47
49 "4190335" 48
50 "4190335" 49
51 "4190335" 50
mixed_case_recommended_field WARNING 20081

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.

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

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_long_name" "WAVERLY - COLONIAL VILLAGE" 2
"routes.txt" "route_long_name" "NORTH LANSING - TURNER" 3
"routes.txt" "route_long_name" "GROESBECK AREA" 4
"routes.txt" "route_long_name" "W. MICHIGAN - WAVERLY - LCC WEST" 5
"routes.txt" "route_long_name" "KALAMAZOO - FRANDOR" 6
"routes.txt" "route_long_name" "NORTH GRAND RIVER-OLD TOWN-AIRPORT" 7
"routes.txt" "route_long_name" "GRAB & GO EXPRESS" 8
"routes.txt" "route_long_name" "OLD TOWN - W. LK LANSING - EASTWOOD" 9
"routes.txt" "route_long_name" "SOUTH HARRISON - JOLLY - DUNCKEL" 10
"routes.txt" "route_long_name" "CAPITAL CITY CROSSTOWN" 11
"routes.txt" "route_long_name" "WILLIAMSTON-WEBBERVILLE LTD" 12
"routes.txt" "route_long_name" "MASON LTD" 13
"routes.txt" "route_long_name" "UNIVERSITY VILLAGE" 14
"routes.txt" "route_long_name" "EAST NEIGHBORHOOD" 15
"routes.txt" "route_long_name" "SOUTH NEIGHBORHOOD" 16
"routes.txt" "route_long_name" "BRODY NEIGHBORHOOD - UNIV. VILLAGE" 17
"routes.txt" "route_long_name" "ABBOT - CHANDLER" 18
"routes.txt" "route_long_name" "ABBOT - CHANDLER LATE NITE" 19
"routes.txt" "route_long_name" "SOUTH & EAST NEIGHBORHOODS" 20
"routes.txt" "route_long_name" "SOUTH MLK - MILLER" 21
"routes.txt" "route_long_name" "COMM LOT- SNYDER HALL - CLIN CENTER" 22
"routes.txt" "route_long_name" "UNION - S.NEIGHBORHOOD" 23
"routes.txt" "route_long_name" "BRODY NEIGHBORHOOD - UNIV. VILLAGE" 24
"routes.txt" "route_long_name" "SOUTH NEIGHBORHOOD" 25
"routes.txt" "route_long_name" "EAST NEIGHBORHOOD" 26
"routes.txt" "route_long_name" "UNIVERSITY VILLAGE" 27
"routes.txt" "route_long_name" "SOUTH MLK - MILLER" 28
"routes.txt" "route_long_name" "PENNSYLVANIA - HOLT" 29
"routes.txt" "route_long_name" "WAVERLY - COLONIAL VILLAGE" 30
"routes.txt" "route_long_name" "NORTH LANSING - TURNER" 31
"routes.txt" "route_long_name" "SOUTH CEDAR-EDGEWOOD" 32
"routes.txt" "route_long_name" "ENTERTAINMENT EXPRESS" 33
"routes.txt" "route_long_name" "AURELIUS-MILLER" 34
"routes.txt" "route_long_name" "CEDAR - JOLLY CONNECTION" 35
"routes.txt" "route_long_name" "CHARLOTTE CONNECTOR" 36
"routes.txt" "route_long_name" "GRAND LEDGE CONNECTOR" 37
"routes.txt" "route_long_name" "GROESBECK AREA" 38
"routes.txt" "route_long_name" "W. MICHIGAN - WAVERLY - LCC WEST" 39
"routes.txt" "route_long_name" "MSU - HASLETT - OKEMOS" 40
"routes.txt" "route_long_name" "BRODY & EAST NEIGHBORHOODS" 41
"routes.txt" "route_long_name" "SOUTH WASHINGTON-PLEASANT GROVE" 42
"routes.txt" "route_long_name" "WILLOW-MARKETPLACE" 43
"routes.txt" "route_long_name" "DOWNTOWN LANSING-MERIDIAN MALL" 44
"routes.txt" "route_long_name" "CEDAR - JOLLY CONNECTION" 45
"routes.txt" "route_long_name" "AURELIUS-MILLER" 46
"routes.txt" "route_long_name" "ENTERTAINMENT EXPRESS" 47
"routes.txt" "route_long_name" "SOUTH CEDAR-EDGEWOOD" 48
"routes.txt" "route_long_name" "MSU - HASLETT - OKEMOS" 49
"routes.txt" "route_long_name" "MSU - OKEMOS - HASLETT" 50
"routes.txt" "route_long_name" "EAST LANSING - E. LAKE LANSING ROAD" 51
route_color_contrast WARNING 4

route_color_contrast

Insufficient route color contrast.

A route's color and route_text_color should be contrasting.

You can see more about this notice here.

routeId (?) The id of the faulty record. csvRowNumber (?) The row number of the faulty record. routeColor (?) The faulty record's HTML route color. routeTextColor (?) The faulty record's HTML route text color.
"12131" 37 "#0000B7" "#000000"
"12041" 44 "#0000FF" "#000000"
"12087" 69 "#0000FF" "#000000"
"12085" 71 "#0000B7" "#000000"
stop_too_far_from_shape WARNING 3

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.
235 "55708" "4187702" 8419 "6142" "NBD Commercial Drive before Marketplace Blvd" [42.74107,-84.674779] 271.2162345866329
3 "55709" "4187712" 64 "6142" "NBD Commercial Drive before Marketplace Blvd" [42.74107,-84.674779] 271.2162345866329
1050 "55713" "4186984" 34811 "3268" "SBD Cedar past E Mason St" [42.69015900023738,-84.54816100269383] 209.0467638188458
stop_too_far_from_shape_using_user_distance WARNING 192

stop_too_far_from_shape_using_user_distance

Stop time too far from shape.

A stop time entry that is a large distance away from the location of the shape in shapes.txt as defined by shape_dist_traveled values.

You can see more about this notice here.

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

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.
1433 "55560" "4155187" 45609 "5754" "EBD Saginaw past Walnut" [42.74087,-84.553809] 224.9166225599342
3153 "55563" "4155313" 100196 "3038" "EBD Allegan past S Pine St" [42.733759,-84.56005] 183.9431427278738
3153 "55563" "4155313" 100197 "3039" "EBD Allegan before Townsend St" [42.73259,-84.55392] 165.67463975744948
3101 "55562" "4155233" 98384 "5740" "EBD Saginaw before Cedar" [42.740849999999995,-84.549739] 114.90287469018185
3101 "55562" "4155233" 98385 "3685" "EBD Saginaw before Larch Street" [42.740839,-84.548] 244.84789938730586
251 "55568" "4155546" 9134 "5742" "NBD Cap. City Blvd @ Peckham" [42.770099,-84.588849] 129.9055279355924
1065 "55567" "4155656" 35300 "5742" "NBD Cap. City Blvd @ Peckham" [42.770099,-84.588849] 129.9055279355924
979 "55565" "4155392" 32142 "3748" "EBD Cesar Chavez before Turner" [42.747399,-84.552139] 134.8388364563967
979 "55565" "4155392" 32160 "2412" "WBD Delta River past Amherst Dr" [42.76189,-84.59613] 249.08478586682696
1364 "55569" "4155766" 43349 "1995" "EBD Kalamazoo past Lathrop St" [42.729919,-84.529679] 252.44622713631392
1364 "55569" "4155766" 43350 "4856" "EBD Kalamazoo past Leslie" [42.729959,-84.52611] 130.78415403612493
547 "55691" "4163049" 18101 "6173" "EBD Delta Market past Migaldi Ln" [42.73984900189615,-84.67979078695652] 145.2705747474451
616 "55570" "4155709" 20306 "1995" "EBD Kalamazoo past Lathrop St" [42.729919,-84.529679] 252.44622713631392
616 "55570" "4155709" 20307 "4856" "EBD Kalamazoo past Leslie" [42.729959,-84.52611] 130.78415403612493
827 "55572" "4155886" 26654 "3748" "EBD Cesar Chavez before Turner" [42.747399,-84.552139] 134.8388364563967
827 "55572" "4155886" 26662 "5697" "EBD Lake Lansing past Commonwealth" [42.759059,-84.532769] 255.6474345837514
20 "55579" "4156384" 890 "2868" "EBD Mt Hope before Cedar" [42.71193,-84.55267] 370.8519141894016
20 "55579" "4156384" 899 "6083" "EBD McLaren Drive before Collins" [42.704569,-84.50193000000002] 149.3510433534395
20 "55579" "4156384" 923 "6042" "Capital Area Multimodal Gateway" [42.71829,-84.493899] 212.80172894970886
5 "55697" "4165305" 181 "3038" "EBD Allegan past S Pine St" [42.733759,-84.56005] 183.9431427278738
5 "55697" "4165305" 182 "3039" "EBD Allegan before Townsend St" [42.73259,-84.55392] 165.67463975744948
210 "55584" "4156634" 7466 "6083" "EBD McLaren Drive before Collins" [42.704572589826874,-84.50162261132164] 146.99952106535318
1163 "55589" "4156843" 38006 "2913" "EBD Haslett past N Okemos Rd" [42.746999,-84.42761] 106.5893063793898
1163 "55589" "4156843" 38019 "2666" "SBD Marsh past Nemoke Trl" [42.741943596940324,-84.40807673464369] 141.53421038747302
906 "55588" "4156533" 29771 "87" "WBD Shaw before Farm Lane" [42.71139,-84.493799] 2128.3047133377304
485 "55591" "4156821" 16833 "3982" "SBD Dobie past Chief Okemos Cir" [42.71643,-84.41037] 221.5142013472987
485 "55591" "4156821" 16835 "3984" "SBD Dobie at Birchwood Dr" [42.708648999999994,-84.410439] 163.23571732053477
117 "55599" "4157815" 4351 "2878" "NBD Red Cedar past N Shaw Ln" [42.72587000000001,-84.48232] 324.93077838249553
249 "55803" "4188654" 9076 "5802" "SBD Farm Lane past Green Way Drive" [42.71930999999999,-84.47032] 706.7212185525242
6946 "55818" "4172750" 216074 "3038" "EBD Allegan past S Pine St" [42.733759,-84.56005] 183.9431427278738
6946 "55818" "4172750" 216075 "3039" "EBD Allegan before Townsend St" [42.73259,-84.55392] 165.67463975744948
7453 "55817" "4172751" 231445 "3038" "EBD Allegan past S Pine St" [42.733759,-84.56005] 183.9431427278738
7453 "55817" "4172751" 231446 "3039" "EBD Allegan before Townsend St" [42.73259,-84.55392] 165.67463975744948
7453 "55817" "4172751" 231450 "1898" "EBD Malcolm X past S Grand Ave" [42.72549000000001,-84.55231] 180.1877483542848
6957 "55700" "4190097" 216437 "1768" "WBD Reo before Sidney St" [42.686719532609885,-84.5836777176802] 102.7710885733426
6944 "55821" "4172756" 216035 "3038" "EBD Allegan past S Pine St" [42.733759,-84.56005] 183.9431427278738
6944 "55821" "4172756" 216036 "3039" "EBD Allegan before Townsend St" [42.73259,-84.55392] 165.67463975744948
6943 "55820" "4172757" 215972 "3038" "EBD Allegan past S Pine St" [42.733759,-84.56005] 183.9431427278738
6943 "55820" "4172757" 215973 "3039" "EBD Allegan before Townsend St" [42.733759,-84.56005] 362.5309805209734
6943 "55820" "4172757" 215974 "3040" "EBD Allegan past Capitol Ave" [42.733759,-84.56005] 580.7934212745909
6943 "55820" "4172757" 215996 "4018" "EBD Grand River at Water St" [42.687959,-84.277109] 151.12132608927783
36 "55704" "4166585" 1550 "1802" "NBD Washington before Berry Ave" [42.69751,-84.566199] 268.4919299232421
36 "55704" "4166585" 1552 "1804" "NBD Washington past Dunlap St" [42.70120000000001,-84.561269] 204.5036431225336
36 "55704" "4166585" 1554 "1806" "NBD Washington past Kensington R" [42.70571,-84.557569] 115.33247640518621
1425 "55703" "4166329" 45303 "1802" "NBD Washington before Berry Ave" [42.69751,-84.566199] 268.4919299232421
1425 "55703" "4166329" 45305 "1804" "NBD Washington past Dunlap St" [42.70120000000001,-84.561269] 204.5036431225336
1425 "55703" "4166329" 45307 "1806" "NBD Washington past Kensington R" [42.70571,-84.557569] 115.33247640518621
1417 "55702" "4166324" 44991 "1802" "NBD Washington before Berry Ave" [42.69751,-84.566199] 268.4919299232421
1417 "55702" "4166324" 44993 "1804" "NBD Washington past Dunlap St" [42.70120000000001,-84.561269] 204.5036431225336
1417 "55702" "4166324" 44995 "1806" "NBD Washington past Kensington R" [42.70571,-84.557569] 115.33247640518621
stops_match_shape_out_of_order WARNING 4

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.
20 "55579" "4156384" 923 "6042" "Capital Area Multimodal Gateway" [42.71884354803953,-84.49642542020695] 922 "2572" "SBD Harrison before Service Rd" [42.71881900001222,-84.493909]
2172 "55725" "4167696" 69756 "5647" "WBD Jolly before Cedar" [42.682974491027096,-84.54598911835744] 69755 "6180" "EBD Jolly past Ora" [42.682986436600174,-84.5547909985025]
1267 "55527" "4153238" 40815 "5647" "WBD Jolly before Cedar" [42.682974491027096,-84.54598911835744] 40814 "6180" "EBD Jolly past Ora" [42.682986436600174,-84.5547909985025]
130 "55773" "4191751" 4861 "6042" "Capital Area Multimodal Gateway" [42.71884354803953,-84.49642542020695] 4860 "2572" "SBD Harrison before Service Rd" [42.71881900001222,-84.493909]
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.
"20251213" "20251013" "20251212"