GTFS Schedule Validation Report

This report was generated by the Canonical GTFS Schedule validator, version 7.1.0 at 2026-05-09T19:03:48Z,
for the dataset file:///shared/foothilltransit_72dc2c7d.zip. No country code was provided.

Use this report alongside our documentation.

A new version of the Canonical GTFS Schedule validator is available! Please update to get the latest/best validation results.

Summary

Agencies included


Feed Info


Publisher Name:
Westcovina-ca-foothill
Feed Email:
N/A
Feed Language:
English
Feed Start Date:
2026-05-08
Feed End Date:
2026-11-07

Files included


  1. agency.txt
  2. calendar.txt
  3. calendar_dates.txt
  4. fare_attributes.txt
  5. feed_info.txt
  6. frequencies.txt
  7. routes.txt
  8. shapes.txt
  9. stop_times.txt
  10. stops.txt
  11. transfers.txt
  12. trips.txt

Counts


  • Agencies: 2
  • Blocks: 742
  • Routes: 37
  • Shapes: 118
  • Stops: 1995
  • Trips: 13540

Specification Compliance report

595 notices reported (0 errors, 593 warnings, 2 infos)

Notice Code Severity Total
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
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.
"10853" 19 "#B0E345" "#FFFFFF"
"20178" 20 "#E0CB00" "#FFFFFF"
"20270" 27 "#4DF5E8" "#FFFFFF"
"20281" 31 "#FFA0FE" "#FFFFFF"
same_name_and_description_for_route WARNING 35

same_name_and_description_for_route

Same name and description for route.

The GTFS spec defines routes.txt route_desc as:

Description of a route that provides useful, quality information. Do not simply duplicate the name of the route.

See the GTFS and GTFS Best Practices links below for more examples of how to populate the route_short_name, route_long_name, and route_desc fields.

You can see more about this notice here.

csvRowNumber (?) The row number of the faulty record. routeId (?) The id of the faulty record. routeDesc (?) The `routes.routes_desc` of the faulty record. specifiedField (?) Either `route_short_name` or `route_long_name`.
2 "10067" "LA County Fair" "route_long_name"
3 "10195" "Pomona Transit Center via Reservoir St" "route_long_name"
4 "10197" "Pomona - Claremont - Montclair" "route_long_name"
5 "10282" "Puente Hills-Hacienda Hts-El Monte Sta" "route_long_name"
6 "10285" "Puente Hills-Whittier Hospital-La Habra" "route_long_name"
7 "10286" "Pomona - Diamond Bar - Brea Mall" "route_long_name"
8 "10289" "Pomona - Walnut - Puente Hills Mall" "route_long_name"
9 "10291" "La Verne - Pomona via Garey Ave" "route_long_name"
10 "10292" "Claremont Transit Ctr-Pomona Transit Ctr" "route_long_name"
11 "10482" "Pomona-Rowland Heights-Puente Hills Mall" "route_long_name"
14 "10490" "Express-Grand Av Park N Ride-Covina-DTLA" "route_long_name"
15 "10492" "El Monte-Arcadia-Montclair Transit Ctr" "route_long_name"
16 "10495" "Express - Industry Park N Ride - DTLA" "route_long_name"
17 "10499" "Express - Via Verde Park N Ride - DTLA" "route_long_name"
18 "10699" "Express - Montclair - Fairplex - DTLA" "route_long_name"
19 "10853" "Diamond Bar" "route_long_name"
20 "20178" "Puente Hills Mall - El Monte Station" "route_long_name"
21 "20185" "Azusa - West Covina - Puente Hills Mall" "route_long_name"
22 "20187" "Azusa - Arcadia - Pasadena" "route_long_name"
23 "20188" "Azusa-Claremont-Montclair Transit Ctr" "route_long_name"
24 "20190" "Pomona - West Covina - El Monte Station" "route_long_name"
25 "20194" "Pomona - Industry - La Puente - El Monte" "route_long_name"
26 "20269" "El Monte Station - Shops at Montebello" "route_long_name"
27 "20270" "Arcadia Sta. - Monrovia - El Monte Sta." "route_long_name"
28 "20272" "Duarte - Baldwin Park - West Covina" "route_long_name"
29 "20274" "West Covina - Industry - Whittier" "route_long_name"
30 "20280" "Azusa - Puente Hills Mall via Azusa Ave" "route_long_name"
31 "20281" "Glendora-Azusa-West Covina-Puente Hills" "route_long_name"
32 "20284" "Glendora-San Dimas-Covina-West Covina" "route_long_name"
33 "20295" "San Dimas Station-Cal Poly Pomona-Mt SAC" "route_long_name"
34 "20480" "West Covina-Pomona-Montclair Transit Ctr" "route_long_name"
35 "20493" "Express-Rowland Hts-Puente Hills-DTLA" "route_long_name"
36 "20498" "Express Service - West Covina - DTLA" "route_long_name"
37 "20707" "Montclair - Pomona - El Monte - L.A." "route_long_name"
38 "20861" "Duarte Mtn Vista-Huntington-Royal Oaks" "route_long_name"
stop_too_far_from_shape WARNING 1

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.
4922 "15458_shp-v48-a1" "t599-b16028-slE-v48-a1" 126485 "3142-a1" "Industry Park and Ride" [34.010461949412864,-117.84564419794198] 131.14004690312385
stop_too_far_from_shape_using_user_distance WARNING 552

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 552 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.
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 70 "2818-a1" "Union Station Patsaouras Bus Plaza W" [34.054406,-118.23752300000002] 418.6222431748833
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 71 "618-a1" "Arcadia St and Los Angeles St W" [34.05408000003898,-118.23479971885446] 406.4921234920963
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 72 "3015-a1" "Spring St and Temple St W" [34.05528050279517,-118.23918472436752] 308.6670238610028
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 73 "2475-a1" "Spring St and 1st St W" [34.0560396687854,-118.24043632898402] 357.82466511838106
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 74 "501-a1" "1st St and Broadway W" [34.05521089307829,-118.24235907996756] 330.499017485148
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 75 "3169-a1" "1st St and Hill St W" [34.05396888718466,-118.24350779083451] 320.8428836823202
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 76 "3153-a1" "Hope St and 1st St W" [34.0543238799615,-118.24652351630677] 404.232412954255
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 77 "3589-a1" "Flower St. and 3rd St." [34.056126441887585,-118.25017669377338] 409.01791330358645
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 78 "3162-a1" "Flower St and 4th St S" [34.055357445260334,-118.25105237519819] 402.18606130535204
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 79 "1193-a1" "6th St and Hope St W" [34.05271465589318,-118.25499539563393] 373.8188969834682
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 80 "1750-a1" "Hope St and 8th St W" [34.04933869315365,-118.2564705390348] 430.18797352485154
5349 "15457_shp-v48-a1" "t165-b15F92-slE-v48-a1" 81 "1751-a1" "Hope St and 9th St W" [34.047748112312824,-118.2579130770009] 431.3624210063146
4226 "15464_shp-v48-a1" "t5DC-b16041-slE-v48-a1" 132455 "2593-a1" "Los Angeles General Medical Center E" [34.05677703193844,-118.21391899663726] 346.1366651296063
4226 "15464_shp-v48-a1" "t5DC-b16041-slE-v48-a1" 132456 "896-a1" "Cal State LA E" [34.06189715208967,-118.17185667179481] 318.4980021737472
4226 "15464_shp-v48-a1" "t5DC-b16041-slE-v48-a1" 132457 "6129-a1" "Covina Transit Center" [34.099417544311024,-117.89182509892328] 253.1531528771237
4226 "15464_shp-v48-a1" "t5DC-b16041-slE-v48-a1" 132458 "6130-a1" "Grand Ave and Carter Dr E" [34.10572551248056,-117.87536674948826] 305.57367245446335
4226 "15464_shp-v48-a1" "t5DC-b16041-slE-v48-a1" 132459 "1624-a1" "Grand Ave and Gladstone St E" [34.110401956236956,-117.87254000954725] 370.22173764194554
4226 "15464_shp-v48-a1" "t5DC-b16041-slE-v48-a1" 132460 "1622-a1" "Grand Ave and Dawson Ave E" [34.113819069329075,-117.8725398847287] 368.04824959324003
4226 "15464_shp-v48-a1" "t5DC-b16041-slE-v48-a1" 132461 "831-a1" "Base Line Rd and Grand Ave E" [34.11847808402923,-117.87258683800256] 340.66066279225936
1574 "15454_shp-v48-a1" "t190-b15F94-slE-v48-a1" 394 "2255-a1" "Rio Rancho Rd and Park Ave W" [34.03331353540642,-117.7513717910096] 193.01082991048625
1574 "15454_shp-v48-a1" "t190-b15F94-slE-v48-a1" 395 "2985-a1" "Rio Rancho Rd and Rancho Valley Dr W" [34.033695734859435,-117.7551213366282] 173.83160440264635
1574 "15454_shp-v48-a1" "t190-b15F94-slE-v48-a1" 396 "2852-a1" "Pomona Ranch Plaza W" [34.030812134927885,-117.75952173374436] 187.5884360054296
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220788 "2594-a2" "Los Angeles General Medical Center W" [34.05636542952564,-118.21090470806031] 103.51203182458613
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220789 "2818-a2" "Union Station Patsaouras Bus Plaza W" [34.05407922249415,-118.23584009970658] 261.0808846479848
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220790 "618-a2" "Arcadia St and Los Angeles St W" [34.05397516728257,-118.23306769968741] 563.1441890633728
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220791 "3015-a2" "Spring St and Temple St W" [34.0545071107001,-118.23781109127286] 439.4862948141516
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220792 "2475-a2" "Spring St and 1st St W" [34.05523951442297,-118.23911763956389] 424.74917639155734
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220793 "501-a2" "1st St and Broadway W" [34.05626938451826,-118.24137177907726] 473.5269483069633
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220794 "3169-a2" "1st St and Hill St W" [34.055029501966075,-118.24251901799528] 407.2394670336989
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220795 "3153-a2" "Hope St and 1st St W" [34.0534475317469,-118.24524227517058] 556.1036049661591
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220796 "3589-a2" "Flower St. and 3rd St." [34.055817208277105,-118.24886514247596] 499.68865404041094
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220797 "3162-a2" "Flower St and 4th St S" [34.05644938064582,-118.24985060058894] 563.8022572043882
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220798 "1193-a2" "6th St and Hope St W" [34.05394315794697,-118.25394154239872] 540.7910872495305
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220799 "1750-a2" "Hope St and 8th St W" [34.05025666610491,-118.25735959251097] 477.599464113072
12353 "22761_shp-v4E-a2" "t1B8-b2746-sl3-v4E-a2" 220800 "1751-a2" "Hope St and 9th St W" [34.04885239114543,-118.25685173923834] 588.330848396001
4320 "15431_shp-v48-a1" "t212-b15FAC-slE-v48-a1" 8673 "641-a1" "Arrow Hwy and Citrus Ave E" [34.1068300050239,-117.8915728711839] 103.88167220231921
4320 "15431_shp-v48-a1" "t212-b15FAC-slE-v48-a1" 8699 "880-a1" "Bonita Ave and Towne Ave E" [34.09628013331164,-117.7374585935753] 100.56406711504985
4320 "15431_shp-v48-a1" "t212-b15FAC-slE-v48-a1" 8706 "509-a1" "First St and Mills Ave E" [34.094847020484664,-117.7084579382577] 115.01489744289309
4320 "15431_shp-v48-a1" "t212-b15FAC-slE-v48-a1" 8708 "695-a1" "Monte Vista Ave and Arrow Hwy E" [34.092455192491464,-117.69961049010247] 131.2181391774358
8429 "22781_shp-v4E-a2" "t21C-b3E-sl2-v4E-a2" 233956 "2564-a2" "Temple Ave and University Dr" [34.05042839848307,-117.82170667887029] 112.62623288345587
11804 "22731_shp-v4E-a2" "t1F4-b16-sl2-v4E-a2" 223626 "2026-a2" "Mission Blvd and Cypress St E" [34.054845995413906,-117.75935325238578] 132.04188215936088
11804 "22731_shp-v4E-a2" "t1F4-b16-sl2-v4E-a2" 223639 "1845-a2" "Indian Hill Blvd and Holt Ave E" [34.06360862437638,-117.71921632694156] 206.99694548745774
11804 "22731_shp-v4E-a2" "t1F4-b16-sl2-v4E-a2" 223652 "695-a2" "Monte Vista Ave and Arrow Hwy E" [34.09243454697714,-117.69945425492439] 117.3219033298746
12478 "22751_shp-v4E-a2" "t1BD-b272D-sl3-v4E-a2" 221287 "2818-a2" "Union Station Patsaouras Bus Plaza W" [34.0540905629091,-118.23597038723932] 273.12917334623654
12478 "22751_shp-v4E-a2" "t1BD-b272D-sl3-v4E-a2" 221288 "618-a2" "Arcadia St and Los Angeles St W" [34.053986864629046,-118.23319831749421] 551.1594719034027
12478 "22751_shp-v4E-a2" "t1BD-b272D-sl3-v4E-a2" 221289 "3015-a2" "Spring St and Temple St W" [34.054559583809336,-118.23792625072808] 428.14441437877804
12478 "22751_shp-v4E-a2" "t1BD-b272D-sl3-v4E-a2" 221290 "2475-a2" "Spring St and 1st St W" [34.055304119548516,-118.23922363125018] 417.7739660351504
12478 "22751_shp-v4E-a2" "t1BD-b272D-sl3-v4E-a2" 221291 "501-a2" "1st St and Broadway W" [34.05618299784484,-118.24145232124779] 461.72109789758963
12478 "22751_shp-v4E-a2" "t1BD-b272D-sl3-v4E-a2" 221292 "3169-a2" "1st St and Hill St W" [34.05494378084228,-118.24260057901337] 398.7354105383522
12478 "22751_shp-v4E-a2" "t1BD-b272D-sl3-v4E-a2" 221293 "3153-a2" "Hope St and 1st St W" [34.053514151268814,-118.24534649820279] 544.0097522416022
unused_station INFO 2

unused_station

Unused station.

A stop has location_type STATION (1) but does not appear in any stop's parent_station.

You can see more about this notice here.

csvRowNumber (?) The row number of the faulty record. stopId (?) The id of the faulty stop. stopName (?) The name of the faulty stop.
839 "ps1-a1" "Azusa Intermodal Transit Center"
842 "ps4-a1" "San Gabriel Blvd and Sierra Madre Ave"