Feed status · checked 2026-10-07
Capital District Transportation Authority (CDTA)
Based on a Mobility Database mirror copy of the feed source on file; publisher ownership is not verified
Service mode Bus
unchanged since 2026-10-06
Cataloged in New York.
A data-quality and completeness lens to help an agency improve its GTFS feed. Not an official compliance determination from any transit program. New to this? How to read your scorecard. Interactive view of this scorecard. Rubric v1.4, validator 8.0.1.
Checked for changes 39 minutes ago; last fetch returned HTTP 404.
Measured 4 of 4 score categories from the Mobility Database's mirror copy of the feed.
How we measured this
Confidence in this measurement: medium.
- All four score categories were measured this run.
- Realtime was sampled in one bounded window of 9 snapshots.
- The configured feed URL was unreachable, so the Mobility Database's hosted mirror copy was scored instead. Publisher ownership of the configured URL is not verified.
Confidence describes how much the pipeline could measure this run, not the feed itself. It never changes the grade.
About this feed
Capital District Transportation Authority (CDTA)’s published feed lists 69 bus routes, 13,940 scheduled trips and 2,930 stops. Its service dates run from 2026-05-29 through 2026-08-29. It publishes realtime trip updates, vehicle positions and service alerts; when we checked, all of them answered. The published file has not changed since our first check on 2026-06-19.
Top things to fix
Re-export the feed with a calendar that reaches further out. Set feed_end_date in feed_info.txt past your next service change.Likely your export tool
Service data ended 39 day(s) ago. When the calendar runs out, trip planners stop showing this agency even though the buses are still running. Riders are told the service does not exist.
This one is about the feed as a whole, so there is no share of it to count.
⏱ Usually one export setting; export on a schedule so it never lapses again.worth about +100 points in its category
Remove past service periods the next time you export the feed.Likely your export tool
Some service calendars in the feed have already ended. Expired calendars are dead weight and can hide real schedule problems from your staff and vendors.
This is a validator notice, and the validator decides what each instance covers, so no share of the network can be read from it here.
⏱ One setting in most export tools.worth about +6 points in its category
Remove retired stops from the export, or add them back to the trips that should serve them.Likely your export tool
Some stops exist in the feed but no trip ever stops at them. Riders may walk to a stop where no bus is scheduled to arrive.
This is a validator notice, and the validator decides what each instance covers, so no share of the network can be read from it here.
⏱ A review pass in your scheduling software.worth about +6 points in its category
Riders and need behind these fixes
- This feed carries no National Transit Database ID, so annual rider-trips are not known for it.
- New York as a whole measures moderate on transit need. That is a statewide reading, not one for this feed's service area. Source: US Census ACS 5-year 2022, statewide overlay, as of 2026-10-05.
These describe this feed only. They do not rank agencies, and they do not change the grade or the order of the fixes.
Finding handoff
Move one finding to a recheck
Select one finding. Copy the request, make the change in the feed-producing tool, then compare the next complete run.
- Finding
- Fix 01 in Top things to fix: its feed evidence and the requested change.
- Recheck
- Publish the changed feed at the same URL. On the next complete, comparable scorecard run, confirm that this finding is no longer reported.
Copy handoff text
- Finding
- Fix 02 in Top things to fix: its feed evidence and the requested change.
- Recheck
- Publish the changed feed at the same URL. On the next complete, comparable scorecard run, confirm that this finding is no longer reported.
Copy handoff text
- Finding
- Fix 03 in Top things to fix: its feed evidence and the requested change.
- Recheck
- Publish the changed feed at the same URL. On the next complete, comparable scorecard run, confirm that this finding is no longer reported.
Copy handoff text
How to make and check these changes
Check the result on the published feed. Read the guide, make the change in your tool, and use the next comparable run to see whether the finding is still reported. Only an action or ticket record can attribute who made the change.
Fix 01 · Read the fix guide for scorecard_feed_expired
Make the change. Make this change in whatever tool produces your feed, then re-export.
Check the result. The next scorecard run checks this finding again. If a comparable check no longer reports it, the feed's clearance log records that result. This confirms feed state, not who made the change. See this feed's finding-clearance log.
Fix 02 · Read the fix guide for expired_calendar
Make the change. Make this change in whatever tool produces your feed, then re-export.
Check the result. The next scorecard run checks this finding again. If a comparable check no longer reports it, the feed's clearance log records that result. This confirms feed state, not who made the change. See this feed's finding-clearance log.
Fix 03 · Read the fix guide for stop_without_stop_time
Make the change. Make this change in whatever tool produces your feed, then re-export.
Check the result. The next scorecard run checks this finding again. If a comparable check no longer reports it, the feed's clearance log records that result. This confirms feed state, not who made the change. See this feed's finding-clearance log.
Rider view: what this feed publishes
A quick read of rider-facing information in this feed.
- Schedule visibility
- The feed's last published service date was 39 days ago.
- Published accessibility data
- Accessibility information is stated for 100% of stops and 100% of trips. This measures published data, not whether stops or vehicles are physically usable.
- Fare information
- Fare information is published using GTFS Fares v1.
- Realtime information
- One or more realtime feeds were reachable; live-arrival coverage is not known.
Important: This does not rate service reliability. Riders should confirm current service alerts, fares, and accessibility accommodations with the transit operator before traveling.
Send your vendor a fix request
You may not control the GTFS export yourself. Copy this and send it to whoever runs your scheduling software export. It names each fix with the validator notice and a guide link.
Send the agency a note
Supporting this agency? Copy this and email it to them. It names what lapsed, why it matters to riders, and the one setting to change.
Score by category
The MobilityData validator flagged 5 kinds of issue across 34 instances (0 error, 32 warning, 2 informational).
Service data ended 39 day(s) ago. Trip planners have likely already dropped this feed.
100% of stops state wheelchair accessibility (100% marked accessible, 0% marked not accessible). This measures what the feed publishes, not whether a stop is physically usable. Fare data is published.
100% of stops state accessibility (100% marked accessible). Reflects what the feed states, not verified physical usability.
1 accessibility depth signal
2686 stop name(s) use abbreviations or symbols a screen reader may mispronounce, with no spoken form set ("Second Ave & S. Bertha St", "Second Ave & Jeanette St", "3rd Ave & 4th St", and more).
Consider: Add tts_stop_name with the spoken form, e.g. 'Main Street and Second Avenue', for the affected stops.
Opportunities to strengthen the data, not deductions from the sub-score above. States what the second accessibility lens can check from the feed, not verified physical usability.
Fares are applied to trips.
Sampled 9 times outside service hours: 3 of 3 configured feeds healthy; vehicle position plausibility was not measurable.
Routes and stops
Each route is drawn once, using the longest shape its trips follow; stops are the dots.
This feed has 2930 stops.
The route and stop data is ready below. Load the map only when you want the geographic view. It uses additional data.
Basemap: OpenFreeMap, © OpenStreetMap contributors. Routes and stops: this agency's GTFS feed.
- 1 (green)
- 10 (green)
- 100 (green)
- 106 (green)
- 107 (green)
- 114 (green)
- 117 (green)
- 12 (green)
- 125 (green)
- 13 (green)
- 155 (green)
- 18 (green)
- 182 (green)
- 214 (green)
- 22 (green)
- 224 (green)
- 233 (green)
- 286 (green)
- 289 (green)
- 351 (green)
- 353 (green)
- 355 (green)
- 370 (green)
- 402 (green)
- 404 (green)
- 405 (green)
- 407 (green)
- 411 (green)
- 412 (green)
- 419 (green)
- 450 (green)
- 519 (yellow)
- 524 (yellow)
- 540 (yellow)
- 560 (yellow)
- 600 (green)
- 601 (green)
- 605 (green)
- 712 (yellow)
- 713 (yellow)
- 737 (yellow)
- 763 (yellow)
- 801 (brown)
- 802 (brown)
- 803 (brown)
- 804 (brown)
- 805 (brown)
- 806 (brown)
- 807 (brown)
- 808 (brown)
- 810 (brown)
- 812 (brown)
- 813 (brown)
- 815 (brown)
- 821 (brown)
- 840 (brown)
- 85 (green)
- 87 (green)
- 872 (brown)
- 875 (green)
- 876 (red)
- 877 (red)
- 905 (red)
- 910 (purple)
- 922 (teal)
- 923 (teal)
- 93 (green)
- 96 (red)
| Route | Type | Line color |
|---|---|---|
| 1 Central Avenue | Bus | green |
| 10 Western Avenue | Bus | green |
| 100 Mid City Belt | Bus | green |
| 106 Uptown Belt | Bus | green |
| 107 Albany Glenmont | Bus | green |
| 114 Madison Ave - Western Ave | Bus | green |
| 117 Colonie Crosstown | Bus | green |
| 12 Washington Avenue | Bus | green |
| 125 Clinton Ave - Sand Creek Rd. | Bus | green |
| 13 New Scotland Avenue | Bus | green |
| 155 Suburban Circulator | Bus | green |
| 18 Delaware Avenue | Bus | green |
| 182 Troy - Albany via Cohoes and Latham | Bus | green |
| 214 Rensselaer 3rd Street | Bus | green |
| 22 Albany - Troy via Watervliet | Bus | green |
| 224 Albany - Troy via I-90 | Bus | green |
| 233 Albany - Schodack | Bus | green |
| 286 Troy / Wynantskill | Bus | green |
| 289 Griswold Heights - St. Mary's Hospital | Bus | green |
| 351 Van Vranken Ave - Broadway | Bus | green |
| 353 Scotia-Mt.Pleasant | Bus | green |
| 355 Schenectady Wolf Road | Bus | green |
| 370 Troy/Schenectady | Bus | green |
| 402 Bay/College | Bus | green |
| 404 Hudson Falls / Fort Edward | Bus | green |
| 405 Moreau / S. Glens Falls | Bus | green |
| 407 West Glens Falls | Bus | green |
| 411 Glen St / Walmart | Bus | green |
| 412 Glen St / Aviation Mall | Bus | green |
| 419 Route 9 / Lake George | Bus | green |
| 450 Schenectady - Wilton via Route 50 | Bus | green |
| 452 Skidmore College/Downtown Saratoga | Bus | green (no shape in feed) |
| 519 Delmar Bypass Express | Bus | yellow |
| 524 Broadway Menands Express | Bus | yellow |
| 540 NX - Northway Express | Bus | yellow |
| 560 Thruway Express | Bus | yellow |
| 600 Neighborhood Belt | Bus | green |
| 601 S. Amsterdam & Route 30 | Bus | green |
| 605 Amsterdam to Schenectady via VIA/Port | Bus | green |
| 712 Harriman Campus - Patroon Creek | Bus | yellow |
| 713 Saratoga Springs - Glens Falls | Bus | yellow |
| 737 Corporate Woods - Airport | Bus | yellow |
| 763 Schenectady/Guilderland via Route 20 | Bus | yellow |
| 801 Albany Shuttle | Bus | brown |
| 802 Troy Shuttle | Bus | brown |
| 803 North Albany Shuttle | Bus | brown |
| 804 East-West Commuter | Bus | brown |
| 805 Mid Town Shuttle | Bus | brown |
| 806 Delaware Shuttle | Bus | brown |
| 807 Suburban Shuttle | Bus | brown |
| 808 Albany - North Greenbush Shuttle | Bus | brown |
| 810 Schenectady Shuttle | Bus | brown |
| 812 Schenectady - Albany Shuttle | Bus | brown |
| 813 Ravena Shopping Bus | Bus | brown |
| 815 Troy Shopping Bus | Bus | brown |
| 821 North Greenbush Shopping Bus | Bus | brown |
| 840 Saratoga Stonequist Shopper Bus | Bus | brown |
| 85 Fifth Avenue | Bus | green |
| 87 Hoosick St - RPI | Bus | green |
| 872 Albany County Nature Bus | Bus | brown |
| 875 Saratoga Summer Trolley | Bus | green |
| 876 Glens Falls Summer Trolley | Bus | red |
| 877 Glens Falls Summer Trolley North | Bus | red |
| 905 BusPlus Red Line | Bus | red |
| 910 BusPlus Purple Line | Bus | purple |
| 922 BusPlus Blue Line Cohoes to Delaware Station | Bus | teal |
| 923 BusPlus Blue Line Waterford to Rail Trail Station | Bus | teal |
| 93 Star | Bus | green |
| 96 Grafton State Park | Bus | red |
List every stop
- Route 378 Station - 550 Broadway
- Second Ave & S. Bertha St
- Second Ave & Jeanette St
- 3rd Ave & 4th St
- Port Schuyler Station - 3rd Ave & 5th St
- 3rd Ave & 7th St
- Broadway & 1st
- Southern Blvd & Delaware Ave
- 1541 Broadway (Senior Citizen Center)
- 58 Southern Blvd
- Southern Blvd & Leighton St
- Southern Blvd & Southern Blvd
- Manning Blvd & Central Ave
- 2nd Ave & 25th St
- Second Ave & Delaware Ave
- McCarty Ave & S. Bertha St
- Broadway & Wolfert Ave
- New Scotland Ave & Lenox Ave
- Albany Bus Terminal
- Wolf Rd & Colonie Center
- 32 Wolf Rd (Bed Bath and Beyond)
- 25th St & Whitehall St
- Main Ave & Milhizer Ave
- 2nd Ave & 21st St
- 1541 Broadway (Senior Citizen Center)
- Broadway & 13th St
- 3rd Ave & 7th St
- Port Schuyler Station - 3rd Ave & 6th
- 3rd Ave & 4th St
- 587 Broadway (The Village One Apts)
- Broadway & Brookside Ave
- 590 Broadway (FedEx)
- Broadway & Harts Ln
- Broadway & Menands Rd
- Broadway & Brookside Ave
- Riverview Center Station - Broadway & I-787 Exit 6
- Broadway & Lawn Ave
- Broadway & 1st St
- Broadway & Emmet St
- Broadway & Loudonville Rd
- Warehouse District Station-Broadway & Pleasant St
- Broadway & Van Woert St
- Broadway & Thatcher St
- Broadway & Loudonville Rd
- Broadway & Emmet St
- Broadway & Lindberg Ave
- Central Ave & Lexington Ave
- Central Ave & N. Lake Ave
- Quail/WAMC Station - Central Ave & Quail St
- Central Ave & Partridge St
- Manning Sq Station - Central Ave & N. Manning Blvd
- N. Allen Station - Central Ave & N. Allen St
- Central Ave & Colvin Ave
- Central Ave & Vatrano Rd
- Central Ave & Osborne Rd
- 1010 Central Ave
- Central Ave & Fuller Rd
- Colonie Station - Central Ave & Colonie Center
- Albany Shaker Rd & Rt.155
- Albany International Airport
- The Desmond Hotel
- Central Ave & Fuller Rd
- Central Ave & Van Buren Ave
- 1160 Central Ave (Sunset Lanes)
- Central Ave & Yardboro Ave
- West Mall Station - Central Ave & Hannaford Plaza
- 709 Central Ave (Market 32)
- Central Ave & King Ave
- 709 Central Ave (Market 32)
- N. Allen Station - Central Ave & N. Allen St
- Central Ave & Ontario St
- Manning Sq Station - Central Ave & N. Manning Blvd
- Central Ave & N. Lake Ave
- Central Ave & Robin St
- Central Ave & Lexington Ave
- Central Ave & Partridge St
- Central Ave & Ontario St
- Quail/WAMC Station - Central Ave & Quail St
- Central Ave & Henry Johnson Blvd
- Western Ave & Tryon Pl
- Western Ave & Homestead St
- Western Ave & Magazine St
- Western Ave & Locust St
- Western Ave & Russell Rd
- Western Ave & Holmes Dale Ave
- Western Ave & Daytona Ave
- Western Ave & Brevator St
- Western Ave & Ormond St / Davis Ave
- Colonial Station
- Western Ave & Brookline Ave
- Western Ave & S. Manning Blvd
- Western Ave & Ontario St
- Quail Station - Western Ave & Quail St
- UAlbany Downtown Sta - Western Ave & Thurlow Terr
- Western Ave & Robin St
- Western Ave & Sprague Pl
- Washington Ave & Henry Johnson Blvd
- Madison Ave & Willett St
- Madison Ave & New Scotland Ave
- Madison Ave & S. Lake Ave
- Madison Ave & Quail St
- Madison Ave & Robin St
- Madison Ave & Partridge St
- Madison Ave & Saint Rose College
- Madison Ave & W. Lawrence St
- Western Ave & N. Pine Ave
- Western Ave & Manning Blvd
- Western Ave & Belvedere Ave
- Quail Station - Western Ave & Quail St
- UAlbany Downtown Sta - Western Ave & Thurlow Terr
- Colonial Station
- Western Ave & Rosemont St
- Western Ave & Knowles Terr
- Western Ave & Parkwood St
- Broadway & Fourth Ave
- 3rd Ave & Adams St
- East St & Fourth Ave
- East St & Herrick St (Joseph Bruno Rail Station)
- East St & Wendell St
- East St & Partition St
- East St & Willow St
- Western Ave & Homestead Ave
- Madison Ave & S. Main Ave
- Madison Ave & Saint Rose College
- Madison Ave & Partridge St
- Madison Ave & Ontario St
- Madison Ave & Quail St
- Madison Ave & S. Lake St
- Madison Ave & Robin St
- Madison Ave & New Scotland Ave
- Madison Ave & Willett St
- Lark St & Washington Ave
- 3rd St & Madison St
- 3rd St & Jackson St
- 4th St & 1st St
- Burden Ave & Centre St
- Frontage Rd & Pitch Pine Rd
- Western Ave & Chapman Dr
- Western Ave & Alton Rd
- Western Ave & Rapp Rd
- Western Ave & Camp Terr
- Western Ave & Kraus Rd
- Western Ave & Gipp Rd
- Western Ave & York Rd
- Western Ave & Witte Rd
- Serafini Village
- Western Ave & Alvinia Rd
- Western Ave & Willow St
- 2343 Western Ave
- Rt 20 & Western Turnpike Golf
- Rt 20 & Foundry Rd
- Western Ave & Windingbrook Dr
- Western Ave & Cornell Ave
- Western Ave & Highwood Cir
- Western Ave & Clark Pkwy
- Western Ave & Witte Rd
- Western Ave & Palma Blvd
- Western Ave & Homes Terr
- Western Ave & Johnston Rd
- Western Ave & Gabriel Terr
- Western Ave & Alton Rd
- Western Ave & Chapman Dr
- Western Ave & Fuller Rd
- Western Ave & University Pl
- Delaware Ave & Delaware Terr
- Delaware Ave & Magnolia Terr
- Ontario St & Clinton Ave
- S. Pearl St & Van Zandt St
- S. Pearl St & 4th Ave
- Delaware Ave & Myrtle Ave
- 45 Delaware Ave (Hackett Middle School)
- Delaware Ave & Holland Ave
- 41 Holland Ave (Wallgreen Pharmacy)
- New Scotland Ave & Glenwood St
- 318 South Manning Mobility Hub
- New Scotland Ave & W. Erie St
- Holland Ave & Notre Dame Dr
- 84 Holland Ave (Veterans Hospital)
- 44 Holland Ave (NYS Office of Mental Health)
- Delaware Ave & Holland Ave
- Delaware Ave & Leonard Pl
- Delaware Ave & Park Ave
- Delaware Ave & Elm St
- Delaware Ave & Whitehall Rd
- Delaware Ave & Marinello Terr
- 365 Delaware Ave
- Delaware Ave & Hurlbut St
- Delaware Ave & Mona Terr
- Delaware Ave & Magnolia Terr
- Delaware Ave & Hurlbut St
- Delaware Ave & Stanwix St
- Broadway & Pine St
- Broadway & Bridge St
- 80 Broadway Station
- Broadway & N. 3rd St
- Broadway & Clinton Ave
- New Scotland Rd & Southwood Dr
- Maple Rd & Scotch Pine Dr
- Maple Rd & Hilton Rd (Nature Bus)
- Ontario St & 2nd St
- Eagle St & Howard St
- Madison Ave & Dove St
- Lark St & Hudson Ave
- Lark St & Hudson Ave
- Lark St & Lancaster St
- New Scotland Rd & Mason Ln
- Lark St & Madison Ave
- Sand Creek Rd & Old Myers Dr
- Sand Creek Rd & Rondack Rd
- 113 Sand Creek Rd (West Albany Fire Dept)
- Sand Creek Rd & Russell Rd
- Whitehall Rd & Carisle Ct
- Whitehall Rd & Elbel Ct
- Whitehall Rd & Edgecomb St
- Whitehall Rd & Marwill St
- Ten Broeck St & Clinton Ave
- Ten Broeck St & Ten Broeck Pl
- Lark Dr & Capital Woods Apts #1
- Lark Dr & Capital Woods Apts #2
- Ten Broeck St & Ten Broeck Pl
- Livingston Ave & N. Swan St
- Lark St & Manning Blvd
- Lark Dr & Capital Woods Apts #1
- Lark Dr & Capital Woods Apts #2
- Lark Dr & Capital Woods Apts #3
- Lark Dr & Capital Woods Apts #3
- Lark Dr & Manning Blvd
- Livingston Ave & Pennsylvania Ave
- Livingston Ave & Thorton St
- Livingston Ave & Judson St
- Livingston Ave & N. Lake Ave
- Morton Ave & Martin Luther King Jr. Blvd
- Morton Ave & S. Hawk St
- Morton Ave & Oneida Terr
- New Scotland Ave & Oakwood St
- New Scotland Ave & S. Main Ave
- New Scotland Ave & S. Lake Ave
- New Scotland Ave & Academy Rd
- New Scotland Ave & Ontario St
- New Scotland & Allen St (St. Peter's Hospital)
- New Scotland Ave & Manning Blvd
- New Scotland Ave & Halsdorf St
- New Scotland Ave & Euclid Ave
- New Scotland Ave & Harding St
- New Scotland Ave & Collins Pl
- New Scotland Ave & Whitehall Rd
- New Scotland Rd & Hopi St
- New Scotland Rd & Woodside Dr
- Morton Ave & Eagle St
- Livingston Ave & Judson St
- and 2680 more (see the full list on the map or in the GeoJSON)
Over time
Overall score across the last 2 checks — unchanged since 2026-10-06.
Show the numbers
| Check | Score | Change |
|---|---|---|
| 2026-10-06 | 74.0 | first check |
| 2026-10-07 | 74.0 | no change |
What changed since your last check
- Correctness no change
- Freshness no change
- Rider experience no change
- Realtime quality no change
Feed history
Every check on record for this feed, grouped by the published file, newest first. A new file means the published zip changed. Grades from earlier rubric versions are shown with their rubric and are not comparable with today’s grade or the trend above.
| Checked | Published file | Service dates through | Grade at the time |
|---|---|---|---|
| 2026-10-06 to 2026-10-07 (2 checks) | c093798fc820 | 2026-08-29 | Current rubric: see the trend above |
| 2026-08-06 to 2026-08-07 (2 checks) | c093798fc820 | 2026-08-29 | B, 81.1 under rubric 1.3, an earlier scoring contract; not comparable with today’s grade |
| 2026-06-19 to 2026-07-10 (21 checks) | c093798fc820 | 2026-08-29 | A, 90.3 under rubric 1.1, an earlier scoring contract; not comparable with today’s grade |
What changed in this feed
Overall grade and score held steady since 2026-10-06.
Same feed file as 2026-10-06; the published zip did not change.
Subscribe to this feed’s changes (Atom) to hear about grade drops and export changes in a reader, with no sign-up.
Everything we checked
7 findings, ordered by severity.
Show every finding
- Error1 instance
Service data ended 39 day(s) ago.
When the calendar runs out, trip planners stop showing this agency even though the buses are still running. Riders are told the service does not exist.
Fix: Re-export the feed with a calendar that reaches further out. Set feed_end_date in feed_info.txt past your next service change. (Usually one export setting; export on a schedule so it never lapses again.)
Finding code: scorecard_feed_expired · Read the fix guide for scorecard_feed_expired · See GTFS Best Practices (opens GTFS Best Practices on an external site)
- Warning25 instances
Some service calendars in the feed have already ended.
Expired calendars are dead weight and can hide real schedule problems from your staff and vendors.
Fix: Remove past service periods the next time you export the feed. (One setting in most export tools.)
Finding code: expired_calendar · Read the fix guide for expired_calendar · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
- Warning14 instances
14 of 13940 trips have no headsign, the text that tells riders where the bus is going. A trip counts when it has trip_headsign or a stop_headsign at every stop.
When a route has multiple directions or patterns, the route name alone may not tell riders which service is coming.
Fix: Add the destination, direction, or 'via' label riders actually see to trip_headsign. Do not copy the route name. If the label changes during the trip, use stop_headsign. (Usually one value per route pattern in your scheduling source.)
Finding code: scorecard_missing_headsigns · Read the fix guide for scorecard_missing_headsigns · See GTFS Best Practices (opens GTFS Best Practices on an external site)
- Warning6 instances
Some stops exist in the feed but no trip ever stops at them.
Riders may walk to a stop where no bus is scheduled to arrive.
Fix: Remove retired stops from the export, or add them back to the trips that should serve them. (A review pass in your scheduling software.)
Finding code: stop_without_stop_time · Read the fix guide for stop_without_stop_time · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
- Warning1 instance
Some rider-facing names are in ALL CAPS or all lowercase.
ALL-CAPS stop and headsign names are harder to read in apps and are read awkwardly by screen readers.
Fix: Use mixed case for stop names and headsigns (e.g. 'Main St & 2nd Ave', not 'MAIN ST & 2ND AVE'). (Often a bulk fix in your scheduling software.)
Finding code: mixed_case_recommended_field · Read the fix guide for mixed_case_recommended_field · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
- Info1 instance
The feed has a stretch of two weeks or more with no service running.
A long gap can mean dates were left out of the calendar. Apps then show no trips on those days.
Fix: Check whether the gap is real, like a seasonal break; if not, add the missing dates to the calendar. (A review of your calendar dates.)
Finding code: big_gap_in_service · Read the fix guide for big_gap_in_service · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
- Info1 instance
Some files contain columns that are not part of the GTFS spec.
Harmless to riders, but apps ignore these columns and they can hide typos in real column names.
Fix: Check the flagged column names for misspellings of standard GTFS fields; remove them if they are vendor extras. (A quick look at the flagged files.)
Finding code: unknown_column · Read the fix guide for unknown_column · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
NTD GTFS readiness Not ready
Resolve this before you certify on the D-10. Service data expired 39 days ago, so FTA would find the link out of date.
- Published Ready
- Published at a public URL.
- Valid Ready
- Passes validation with no errors.
- Current Not ready
- Service data expired 39 days ago, so FTA would find the link out of date.
- agency_id provided Ready
- agency.txt provides agency_id. For RY2026, keep one stable value for each NTD reporter represented in the feed and crosswalk each value on the P-50 form.
- agency_id equals your NTD ID (optional) Not checked yet
- This feed provides agency_id. For RY2026, keep one stable value for each NTD reporter represented in the feed and crosswalk it on the P-50 form. The value does not need to equal the five-digit NTD ID; we do not have that ID on file, so the optional equality comparison is not checked yet.
- shapes.txt covers your trips Ready
- All 13940 trips have a shape in shapes.txt.
In plain words: if you report to the federal transit database, you have to publish a working, up-to-date feed, provide a stable agency_id for each represented reporter, and confirm the feed and P-50 crosswalk each year. This box is a heads-up; your filings are the official check.
A readiness signal mapping this feed to the FTA National Transit Database GTFS requirement (Report Year 2023 onward: a public, valid, current feed, certified annually on the D-10). For RY2026, each represented reporter needs a stable agency_id, unique within the feed and crosswalked to its five-digit NTD ID on P-50; the values do not need to be equal. FTA also requires shapes.txt in the published GTFS: Full Reporters from Report Year 2025, and Reduced, Rural, and Tribal Reporters from Report Year 2026. Not an official determination; your certification is the official check.
Conformance mark Not yet
One requirement remains for this feed to earn the conformance mark. Service data expired 39 days ago.
- Valid Met
- Passes validation with no errors.
- Current Not yet
- Service data expired 39 days ago.
- Accessible Met
- States wheelchair access on 100% of stops and 100% of trips.
In plain words: earn this mark when your feed passes validation, has not expired, and says whether nearly every stop and trip is wheelchair accessible.
A pass credential for a feed that is valid, current, and states wheelchair access on nearly every stop and trip. Accessibility here measures what the feed publishes, not whether a stop is physically usable. How the conformance mark works.
Can riders use it?
Checks beyond structural validation: places where the feed is valid but a rider still could not travel.
- 6 of 2930 boardable stops are never served by any trip. Riders see these stops in apps and on the map but can never catch anything there, which erodes trust in the data. Remove stops no route serves, or add the trips that should call at them.
These do not change the grade. They catch trips with no rideable leg and stops no trip serves, the kind of gap a trip planner trips over.
Realtime reliability
The realtime feed responded on 100.0% of 200 checks in the 25 days to 2026-10-07, with 9s median lag.
Sampled on a schedule between full scores, so this tracks uptime and freshness over time rather than at a single moment. The window ends at the newest observation, which is not always today: if the monitor stops, this window stops with it.
Below the Google and Apple Maps four-week coverage bar. This feed's last day of service has passed, so Google and Apple Maps will stop showing your agency. Re-export with a calendar that covers at least the next four weeks.
How this agency maps to the standards
The scorecard is a data-quality lens, not a compliance determination. Its universal references describe good GTFS and useful rider information. Useful references here are GTFS Schedule Best Practices, GTFS-Realtime Best Practices, MobilityData grading scheme, Google Transit publication guidance, FTA National Transit Database GTFS requirement. Read the full standards crosswalk.
- Correctness 83 / 100
- GTFS Schedule best practices, checked by the MobilityData validator. MobilityData grading covers stop locations, route names, and colors. Google Transit requires a feed to pass validation for publication. FTA NTD readiness also checks that the published feed is valid.
- Freshness 0 / 100
- GTFS Schedule best practices call for a dataset that stays current. An expired calendar can remove service from Google Transit and other rider trip planners. FTA NTD readiness also checks that the published feed is current.
- Rider experience 100 / 100
- GTFS Best Practices for rider-facing fields. MobilityData grading covers stop names and headsigns.
- Realtime quality 100 / 100
- GTFS-Realtime best practices: a stable URL, high uptime, and frequent updates.
Part of the New York portfolio: the same scorecards for every feed we track in that group, on one free page.
For programs that support several agencies
This scorecard and the board one-pager for Capital District Transportation Authority (CDTA) are free, and they stay free. If you support several agencies, as a state program, a technical-assistance center, a feed vendor, or a consultancy, you can buy the program report bundle. It puts this agency's board report in one archive with the reports for the other agencies you support, and each cover carries your program's name, logo, and accent color.
The report for Capital District Transportation Authority (CDTA) uses the same numbers as this page: grade C (74.0 out of 100) as of the check on 2026-10-07, its category scores, its top fixes, and its score at each check.
One bundle, up to 25 agencies: $149, paid once, delivered within 2 business days or refunded. Other plans, including a monthly refresh, are on the bundle page.
See a sample bundle report: a real agency's current grade, with placeholder branding.
A purchase buys no influence over grades, methodology, or which agencies are listed. The grade on this page comes from the check on 2026-10-07, scored with rubric v1.4 and MobilityData gtfs-validator 8.0.1. Based on a Mobility Database mirror copy of the feed source on file; publisher ownership is not verified. Read how the grade is calculated.
Similar feeds in New York
Other scorecards in New York, starting with the same kind of service at a similar size. Listed for comparison, not ranked.
Cite this record
This page updates on every check. The record below does not: it is the dated file this grade came from, published at https://gtfsscorecard.org/data/artifacts/capital-district-transportation-authority-cdta/2026-10-07.json and never overwritten, pinning the grade, category scores, rubric version, validator version, reader archive profile, and the scored feed's sha256 as they stood on 2026-10-07. Use it in a board packet, a regulatory filing, or a research citation instead of linking the live page, whose content will differ on your next visit.
Citing the tool itself rather than one agency's record? Use the repo's CITATION.cff.