Feed status · checked 2026-08-01
Capital District Transportation Authority (CDTA)
Based on the feed this agency publishes
Service mode Bus
down 2.0 since 2026-07-31
Catalogued 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.3, validator 8.0.1.
Checked for changes 80 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 agency's own feed URL was unreachable, so the Mobility Database's hosted mirror copy was scored instead.
Confidence describes how much the pipeline could measure this run, not the feed itself. It never changes the grade.
Top things to fix
Re-export with a validity window that reaches at least 60 days out.Likely your export tool
Service data runs out in 28 day(s). When the calendar runs out, trip planners stop showing this agency. Fixing it now is calmer than after riders notice.
⏱ One export setting.worth about +52 points in its category
Check with your AVL vendor that every vehicle assignment flows into TripUpdates, including school-day and tripper runs.
20 of 70 trips scheduled during the sampling window had no live predictions. Riders on those trips get schedule data dressed up as realtime. Caltrans expects every operating trip in TripUpdates.
⏱ A vendor data-mapping question.worth about +10 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.
⏱ One setting in most export tools.worth about +6 points in its category
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.
- Feed evidence
- Service data runs out in 28 day(s).
- Next action
- Re-export with a validity window that reaches at least 60 days out.
- 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
- Feed evidence
- 20 of 70 trips scheduled during the sampling window had no live predictions.
- Next action
- Check with your AVL vendor that every vehicle assignment flows into TripUpdates, including school-day and tripper runs.
- 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
- Feed evidence
- Some service calendars in the feed have already ended.
- Next action
- Remove past service periods the next time you export the feed.
- 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.
Re-export with a validity window that reaches at least 60 days out. · Read the fix guide
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.
Check with your AVL vendor that every vehicle assignment flows into TripUpdates, including school-day and tripper runs. · Read the fix guide
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.
Remove past service periods the next time you export the feed. · Read the fix guide
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 is in 28 days.
- 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
- Live-arrival data covered 71.4% of scheduled trips in the sampled window.
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 runs out in 28 day(s). Publish an updated feed soon or riders will lose trip planning.
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: 3 of 3 configured feeds healthy; 71.4% of scheduled trips had live predictions; 98.8% of vehicles on their route; predictions ran a median of 18s behind schedule.
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 4 checks — down 2.0 since 2026-07-31.
Show the numbers
| Check | Score | Change |
|---|---|---|
| 2026-07-25 | 83.7 | first check |
| 2026-07-30 | 83.7 | no change |
| 2026-07-31 | 83.3 | down 0.4 |
| 2026-08-01 | 81.3 | down 2.0 |
What changed since your last check
- Correctness no change
- Freshness down 1.6
- Rider experience no change
- Realtime quality down 8.3
What changed in this feed
Overall score fell 2.0 points since 2026-07-31.
Same feed file as 2026-07-31; the published zip did not change.
Changed counts
- up 20 of 70 trips scheduled during the sampling window had no live predictions. (5 → 20) (scorecard_rt_trip_coverage)
Subscribe to this feed’s changes (Atom) to hear about grade drops in a reader, with no sign-up.
What changed over time
On 2026-07-25 this feed started at grade B. On 2026-07-30 feed entered the expiry window (30 days of service left). As of 2026-08-01 it holds grade B.
A plain-language history of this feed, newest first.
- 2026-07-30 Feed entered the expiry window (30 days of service left).
Everything we checked
8 findings, ordered by severity.
Show every finding
- 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 · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
- Warning20 instances
20 of 70 trips scheduled during the sampling window had no live predictions.
Riders on those trips get schedule data dressed up as realtime. Caltrans expects every operating trip in TripUpdates.
Fix: Check with your AVL vendor that every vehicle assignment flows into TripUpdates, including school-day and tripper runs. (A vendor data-mapping question.)
Finding code: scorecard_rt_trip_coverage · Read the fix guide · See GTFS-Realtime reference (opens the GTFS-Realtime reference on an external site)
- Warning14 instances
14 of 13940 trips lack rider-facing destination or direction text.
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 · 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 · 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 · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
- Warning1 instance
Service data runs out in 28 day(s).
When the calendar runs out, trip planners stop showing this agency. Fixing it now is calmer than after riders notice.
Fix: Re-export with a validity window that reaches at least 60 days out. (One export setting.)
Finding code: scorecard_feed_expiring_soon · Read the fix guide · See GTFS Best Practices (opens GTFS Best Practices 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 · 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 · See MobilityData GTFS Validator rules (opens the validator rules on an external site)
NTD GTFS readiness Needs attention
This feed is close to NTD-ready. Service data runs out in 28 days; renew before you certify.
- Published Ready
- Published at a public URL.
- Valid Ready
- Passes validation with no errors.
- Current Needs attention
- Service data runs out in 28 days; renew before you certify.
- 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
This feed is close to the conformance mark. Service data runs out in 28 days; renew to qualify.
- Valid Met
- Passes validation with no errors.
- Current Not yet
- Service data runs out in 28 days; renew to qualify.
- 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 over the last 34 days, with 10s median lag.
Sampled on a schedule between full scores, so this tracks uptime and freshness over time rather than at a single moment.
Live predictions vs schedule
Arrival predictions ran a median 18s late versus the schedule, and stayed within 329s nine times in ten. They were on time (about a minute early to five late) 87.3% of the time. 98.8% of reported vehicle positions sat on or near the published route shape.
From the last full realtime sample: how far live arrival predictions sat from the schedule, and whether vehicle positions fell on the route. These feed the realtime score; they change no other category.
Clears the Google and Apple Maps four-week coverage bar. This feed has 28 days of service ahead, clearing the four-week (28-day) window Maps asks for. No validator errors either, so riders keep seeing this agency in their trip planners; warnings lower the grade here but do not remove a feed from Maps.
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 47 / 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 90 / 100
- GTFS-Realtime best practices: a stable URL, high uptime, and frequent updates.
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-08-01.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-08-01. 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.