← All agencies

Feed status · checked 2026-09-02

York Region Transit (YRT)

Based on the official feed source on file

Service mode Bus

70.8 / 100

up 15.9 since 2026-09-01 · F → C

Catalogued in Ontario, Canada.

Covers 59 daysRealtime not yet published

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 59 minutes ago; last changed 6 hours ago.

Measured 3 of 4 score categories from the official feed URL on file.

How we measured this

Confidence in this measurement: medium.

  • Realtime quality was not measured this run. It does not count against the grade.
  • The feed was downloaded from the official feed URL on file.

Confidence describes how much the pipeline could measure this run, not the feed itself. It never changes the grade.

Top things to fix

Fix 01

Set timepoint=1 on stops that are real time checks and 0 on the rest. If every published time is a scheduled one, mark them all 1.Likely your export tool

Some rows in stop_times.txt leave the timepoint column blank. That column says whether a time is a real checkpoint or an estimate. Blank leaves apps guessing, and they may show your estimates as promises.

⏱ Usually one export setting.worth about +8 points in its category

Fix 03

Check the flagged stops' shape_dist_traveled against the route shape, and re-generate it on export if they disagree.Likely your export tool

Some stops sit far from the route line, going by the feed's own distance values. Trip planners may draw the route down the wrong streets or point riders to the wrong corner.

⏱ Usually an export-tool fix, not hand editing.worth about +8 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
Some rows in stop_times.txt leave the timepoint column blank.
Next action
Set timepoint=1 on stops that are real time checks and 0 on the rest. If every published time is a scheduled one, mark them all 1.
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.

  1. Set timepoint=1 on stops that are real time checks and 0 on the rest. If every published time is a scheduled one, mark them all 1. · 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.

  2. Use mixed case for stop names and headsigns (e.g. 'Main St & 2nd Ave', not 'MAIN ST & 2ND AVE'). · 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.

  3. Check the flagged stops' shape_dist_traveled against the route shape, and re-generate it on export if they disagree. · 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 59 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
Realtime-feed availability and live-arrival coverage are not known from this scorecard.

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.

Score by category

Correctness50.2 / 100

The MobilityData validator flagged 12 kinds of issue across 1073723 instances (0 error, 1073711 warning, 12 informational).

Freshness98.3 / 100

Service data covers the next 59 days.

Rider experience77.5 / 100

100% of stops state wheelchair accessibility (80% marked accessible, 20% marked not accessible). This measures what the feed publishes, not whether a stop is physically usable. Fare data is published.

Accessibility100 / 100

100% of stops state accessibility (80% marked accessible). Reflects what the feed states, not verified physical usability.

3 accessibility depth signals

  • 33 route badge(s) pair a color and text color below the WCAG 4.5:1 contrast bar (083A, 165, 024, 025, 026, and more).

    Consider: Adjust route_color or route_text_color so each pair clears 4.5:1. Often switching the text between black and white is enough.

  • 4650 stop name(s) use abbreviations or symbols a screen reader may mispronounce, with no spoken form set ("WILLIAM BERCZY BLVD / WEATHERILL RD", "ISLINGTON AV / HAYHOE LANE", "BLOOMINGTON RD / YONGE ST", and more).

    Consider: Add tts_stop_name with the spoken form, e.g. 'Main Street and Second Avenue', for the affected stops.

  • This feed models stations or entrances but has no pathways.txt and levels.txt.

    Consider: Add pathways.txt connecting entrances, platforms, and elevators, and levels.txt for each floor, so the step-free route is described.

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.

FaresLegacy fares

Fares are applied to trips.

Realtime qualityNot yet measured

Not scored yet. Nothing here counts against the grade.

Routes and stops

Each route is drawn once, using the longest shape its trips follow; stops are the dots.

This feed has 4828 stops.

Skip to route and stop data

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.

  • 001 (gray)
  • 010 (gray)
  • 105 (gray)
  • 107 (green)
  • 107B (green)
  • 012 (gray)
  • 013 (gray)
  • 014 (gray)
  • 016 (blue)
  • 165 (yellow)
  • 018 (gray)
  • 002 (yellow)
  • 020 (brown)
  • 021 (teal)
  • 023 (orange)
  • 024 (teal)
  • 025 (pink)
  • 026 (teal)
  • 003 (purple)
  • 300 (red)
  • 301 (teal)
  • 302 (teal)
  • 303 (brown)
  • 304 (green)
  • 305 (purple)
  • 032 (teal)
  • 320 (purple)
  • 033 (teal)
  • 360 (purple)
  • 361 (purple)
  • 391 (purple)
  • 004 (teal)
  • 040 (brown)
  • 401 (gray)
  • 402 (gray)
  • 403 (purple)
  • 404 (purple)
  • 405 (gray)
  • 408 (purple)
  • 410 (gray)
  • 411 (gray)
  • 412 (gray)
  • 413 (gray)
  • 414 (purple)
  • 415 (gray)
  • 416 (gray)
  • 417 (gray)
  • 418 (gray)
  • 419 (purple)
  • 420 (gray)
  • 423 (gray)
  • 424 (gray)
  • 425 (gray)
  • 426 (gray)
  • 427 (gray)
  • 428 (gray)
  • 429 (gray)
  • 430 (gray)
  • 431 (purple)
  • 432 (gray)
  • 433 (purple)
  • 434 (purple)
  • 437 (purple)
  • 438 (purple)
  • 044 (gray)
  • 440 (gray)
  • 442 (gray)
  • 443 (gray)
  • 444 (gray)
  • 445 (gray)
  • 446 (gray)
  • 447 (gray)
  • 448 (gray)
  • 449 (gray)
  • 450 (gray)
  • 452 (gray)
  • 460 (gray)
  • 461 (gray)
  • 462 (gray)
  • 463 (purple)
  • 464 (gray)
  • 465 (gray)
  • 466 (gray)
  • 467 (purple)
  • 469 (purple)
  • 470 (purple)
  • 471 (purple)
  • 473 (purple)
  • 005 (gray)
  • 050 (purple)
  • 051 (pink)
  • 052 (purple)
  • 522 (pink)
  • 054 (brown)
  • 055 (teal)
  • 056 (yellow)
  • 057 (teal)
  • 006 (purple)
  • blue (teal)
  • blue B (purple)
  • purple (purple)
  • purple A (purple)
  • orange (yellow)
  • yellow (yellow)
  • 007 (teal)
  • 077 (teal)
  • 008 (blue)
  • 080 (orange)
  • 081 (brown)
  • 082 (teal)
  • 083 (gray)
  • 083A (gray)
  • 085 (purple)
  • 086 (red)
  • 087 (yellow)
  • 088 (teal)
  • 009 (orange)
  • 090 (orange)
  • 090B (orange)
  • 091 (gray)
  • 091B (gray)
  • 096 (gray)
  • 098 (green)
  • 098|099 (green)
  • 099 (purple)
Routes in York Region Transit (YRT)'s feed
RouteTypeLine color
001 HIGHWAY 7Busgray
010 WOODBRIDGEBusgray
105 DUFFERINBusgray
107 KEELEBusgreen
107B KEELEBusgreen
012 PINE VALLEYBusgray
013 ISLINGTONBusgray
014 14TH AVENUEBusgray
016 16TH AVENUEBusblue
165 WESTONBusyellow
018 BUR OAKBusgray
002 MILLIKENBusyellow
020 JANEBusbrown
021 VELLOREBusteal
023 THORNHILL WOODSBusorange
024 WOODBINEBusteal
025 MAJOR MACKENZIEBuspink
026 MAPLEBusteal
003 THORNHILLBuspurple
300 BUSINESS EXPRESSBusred
301 MARKHAM EXPRESSBusteal
302 UNIONVILLE EXPRESSBusteal
303 BUR OAK EXPRESSBusbrown
304 MOUNT JOY EXPRESSBusgreen
305 BOX GROVE EXPRESSBuspurple
032 AURORA SOUTHBusteal
320 JANE EXPRESSBuspurple
033 WELLINGTON - LESLIEBusteal
360 VAUGHAN MILLS / WONDERLANDBuspurple
361 NASHVILLE EXPRESSBuspurple
391 BAYVIEW EXPRESSBuspurple
004 MAJOR MACKENZIEBusteal
040 UNIONVILLEBusbrown
401 ST BROTHER ANDRE SS VIA BOX GROVEBusgray
402 BUR OAK / PIERRE ELLIOTT TRUDEAU SSBusgray
403 ST BROTHER ANDRE SS VIA RAYMERVILLEBuspurple
404 MARKVILLE SSBuspurple
405 ST AUGUSTINE SSBusgray
408 OUR LADY QUEEN OF THE WORLD SSBuspurple
410 MARKHAM DISTRICT SS VIA CARLTONBusgray
411 MARKHAM DISTRICT SS VIA BOX GROVEBusgray
412 THORNLEA SSBusgray
413 ST ROBERT SS VIA JOHNBusgray
414 ST KATHARINE DREXEL SSBuspurple
415 STOUFFVILLE DISTRICT SSBusgray
416 MARKHAM DISTRICT SS VIA NINTH LINEBusgray
417 BILL HOGARTH SSBusgray
418 PIERRE ELLIOTT TRUDEAU SSBusgray (no shape in feed)
418 PIERRE E. TRUDEAU SS VIA 16TH AVEBusgray
419 PIERRE E. TRUDEAU SS VIA MAJOR MACBuspurple
420 NEWMARKET SS VIA SAVAGEBusgray
423 NEWMARKET SS VIA BRISTOLBusgray
424 KESWICK SSBusgray
425 HURON HEIGHTS SSBusgray
426 DR G.W. WILLIAMS SS VIA STONEBusgray
427 SACRED HEART SS VIA STONEHAVENBusgray
428 DR G.W. WILLIAMS SS VIA HENDERSONBusgray
429 CARDINAL CARTER SS VIA BAYVIEWBusgray
430 SACRED HEART SS VIA MAINBusgray
431 AURORA SS VIA MCCLELLANBuspurple
432 AURORA SSBusgray (no shape in feed)
432 AURORA SS VIA MAVRINACBusgray
433 CARDINAL CARTER SS VIA KINGSHILLBuspurple
434 CARDINAL CARTER SS VIA WELLINGTONBuspurple
437 ST MAXIMILIAN KOLBE SS VIA MAVRINACBuspurple (no shape in feed)
437 ST MAX. KOLBE SS VIA MAVRINACBuspurple
438 ST MAX. KOLBE SS VIA ORCHARD HTS.Buspurple
044 BRISTOLBusgray
440 ST THERESA SS VIA MILLBusgray
442 RICHMOND HILL SS VIA GAMBLEBusgray
443 LANGSTAFF SS VIA SHAFTSBURYBusgray
444 LANGSTAFF SS VIA VALLEYMEDEBusgray
445 ST ROBERT SS VIA SPADINABusgray
446 ST THERESA SS VIA MCCALLUMBusgray
447 ST THERESA SS VIA JEFFERSON FORESTBusgray
448 RICHMOND HILL SS VIA VALLEYMEDEBusgray
449 RICHMOND GREEN SS VIA HILLMOUNTBusgray
450 ST THERESA SS VIA TOWER HILLBusgray
452 RICHMOND GREEN SS VIA HAZELTONBusgray
460 HOLY CROSS SSBusgray
461 EMILY CARR SS VIA ROYALPARKBusgray
462 MAPLE SSBusgray
463 ST. JOAN OF ARC SS VIA KEELEBuspurple (no shape in feed)
463 ST JOAN OF ARC SS VIA KEELEBuspurple
464 ST JOAN OF ARC SS VIA AMERICABusgray
465 ST JOAN OF ARC SS VIA MELVILLEBusgray (no shape in feed)
465 ST JOAN OF ARC SS VIA PETER RUPERTBusgray
466 TOMMY DOUGLAS SS VIA FOSSIL HILLBusgray
467 TOMMY DOUGLAS SS VIA CITYVIEWBuspurple
468 EMILY CARR SS VIA KLEINBURGBuspurple (no shape in feed)
469 FATHER BRESSANI SSBuspurple
470 WESTMOUNT SSBuspurple
471 STEPHEN LEWIS SS VIA TEN OAKSBuspurple (no shape in feed)
471 STEPHEN LEWIS SS VIA DUFFERINBuspurple
473 STEPHEN LEWIS SS VIA THOMAS COOKBuspurple
005 CLARKBusgray
050 QUEENSWAYBuspurple
051 KESWICKBuspink
052 HOLLAND LANDINGBuspurple
522 MARKHAM LOCALBuspink
054 BAYVIEWBusbrown
055 DAVISBusteal
056 GORHAM - EAGLEBusyellow
057 MULOCKBusteal
006 MAJOR MACKENZIEBuspurple
blue VIVA BLUEBusteal
blue B VIVA BLUE BBuspurple
purple VIVA PURPLEBuspurple
purple A VIVA PURPLE ABuspurple
orange VIVA ORANGEBusyellow
yellow VIVA YELLOWBusyellow
007 MARTIN GROVEBusteal
077 HIGHWAY 7Busteal
008 KENNEDYBusblue
080 ELGIN MILLSBusorange
081 INSPIRATIONBusbrown
082 VALLEYMEDEBusteal
083 TRENCHBusgray
083A TRENCHBusgray
085 RUTHERFORDBuspurple
086 NEWKIRK - RED MAPLEBusred
087 AUTUMN HILLBusyellow
088 BATHURSTBusteal
009 NINTH LINEBusorange
090 LESLIEBusorange
090B LESLIEBusorange
091 BAYVIEWBusgray
091B BAYVIEWBusgray
096 KEELE - YONGEBusgray
098 YONGEBusgreen
098|099 YONGE (LATE NIGHT)Busgreen
099 YONGEBuspurple
List every stop
  • RICHMOND HILL CENTRE
  • RED MAPLE RD / ONEIDA CRES
  • RED MAPLE RD / BANTRY AV
  • LESLIE ST / COMMERCE VALLEY DR
  • RED MAPLE RD / SILVER LINDEN DR
  • LESLIE ST / MINTHORN BLVD
  • RED MAPLE RD / MACGREGOR AV
  • LESLIE ST / HIGHWAY 7
  • RED MAPLE RD / BANTRY AV
  • COMMERCE VALLEY DR / MINTHORN BLVD
  • RED MAPLE RD / ONEIDA CRES
  • COMMERCE VALLEY DR STOP # 1011
  • RED MAPLE RD / HIGH TECH RD
  • COMMERCE VALLEY DR STOP # 1013
  • COMMERCE VALLEY DR STOP # 1014
  • COMMERCE VALLEY DR / LESLIE ST
  • COMMERCE VALLEY DR / SOUTH PARK RD
  • SOUTH PARK RD / COMMERCE VALLEY DR
  • SOUTH PARK RD / POND DR
  • SOUTH PARK RD / PARK COMMON BLVD
  • SOUTH PARK RD STOP # 1026
  • TIMES AV / GALLERIA PKWY
  • HIGH TECH RD / RED MAPLE RD
  • TIMES AV / HIGHWAY 7
  • DONCASTER AV STOP # 1031
  • VALLEYMEDE DR / SAMANTHA CIR
  • DONCASTER AV STOP # 1033
  • VALLEYMEDE DR / RED OAK DR
  • DONCASTER AV STOP # 1035
  • VALLEYMEDE DR / LEICESTER RD
  • DONCASTER AV STOP # 1037
  • VALLEYMEDE DR / CHALMERS RD
  • DONCASTER AV / HENDERSON AV
  • VALLEYMEDE DR / HAZELMERE DR
  • HENDERSON AV / PROCTOR AV
  • VALLEYMEDE DR / BRIGGS AV
  • HENDERSON AV / CLARK AV
  • VALLEYMEDE DR / BLACKMORE AV
  • HENDERSON AV / ELGIN ST
  • VALLEYMEDE DR / SHEILA CRES
  • HENDERSON AV / JOHN ST
  • VALLEYMEDE DR / STRATHEARN AV
  • JOHN ST / CANDICE GATE
  • VALLEYMEDE DR STOP # 1050
  • JOHN ST / BAYVIEW AV
  • VALLEYMEDE DR / MEADOWCLIFFE AV
  • JOHN ST / PORTERFIELD CRES
  • VALLEYMEDE DR / 16TH AV
  • JOHN ST STOP # 1055
  • SPADINA RD / BOAKE TRL
  • JOHN ST / AILEEN RD
  • SPADINA RD / LYTTON BLVD
  • JOHN ST / BAYVIEW FAIRWAYS DR
  • SPADINA RD / BROOKSHILL CRES
  • JOHN ST / DAWN HILL TRL
  • SPADINA RD / WELDRICK RD
  • SPADINA RD / STRATHEARN AV
  • JOHN ST / COTTONWOOD CRT
  • SPADINA RD / CRESCENTVIEW RD
  • JOHN ST / CHESTNUT GATE
  • FRANK ENDEAN RD / FARMSTEAD RD
  • JOHN ST / ROCKINGHAM CRT
  • FARMSTEAD RD / KIMONO CR
  • JOHN ST / DON MILLS RD
  • FARMSTEAD RD / SHIRLEY DR
  • JOHN ST STOP # 1072
  • SHIRLEY DR / BAYFIELD DR
  • JOHN ST / STEELCASE RD
  • SHIRLEY DR / FUTURA AV
  • JOHN ST STOP # 1076
  • SHIRLEY DR / REDSTONE RD
  • JOHN ST / WOODBINE AV
  • SHIRLEY DR / VENTURE AV
  • ESNA PARK DR STOP # 1080
  • SHIRLEY DR / ROMANCE DR
  • ESNA PARK DR STOP # 1082
  • SHIRLEY DR / ELGIN MILLS RD
  • ESNA PARK DR STOP # 1084
  • ELGIN MILLS RD / MELBOURNE DR
  • ESNA PARK DR / ALDEN RD
  • ELGIN MILLS RD / GOODE ST
  • ESNA PARK DR / ALDEN RD
  • ELGIN MILLS RD / REDSTONE RD
  • ESNA PARK DR STOP # 1090
  • ELGIN MILLS RD / LESLIE ST
  • DENISON ST STOP # 1092
  • ELGIN MILLS RD / LESLIE ST
  • DENISON ST STOP # 1094
  • ELGIN MILLS RD / GOODE ST
  • DENISON ST / HOOD RD
  • ELGIN MILLS RD / MELBOURNE DR
  • DENISON ST / WARDEN AV
  • ELGIN MILLS RD / SHIRLEY DR
  • BERNARD TERMINAL
  • DENISON ST STOP # 1100
  • DENISON ST / BIRCHMOUNT RD
  • DENISON ST STOP # 1104
  • DENISON ST / CLAYTON DR
  • DENISON ST / GORVETTE RD
  • SHIRLEY DR / WAYSIDE AV
  • DENISON ST / KENNEDY RD
  • DENISON ST STOP # 1111
  • SHIRLEY DR / BAYFIELD DR
  • DENISON ST / TEDDINGTON AV
  • FARMSTEAD RD / SHIRLEY DR
  • DENISON ST STOP # 1115
  • FARMSTEAD RD / SHELL CRT
  • DENISON ST / ALDERGROVE DR
  • FARMSTEAD RD / FRANK ENDEAN RD
  • DENISON ST / BRIMLEY RD
  • FARMSTEAD RD / RUSHINGBROOK DR
  • DENISON ST / CARTMEL DR
  • FARMSTEAD RD / INDIGO ST
  • DENISON ST STOP # 1123
  • FARMSTEAD RD / BAYVIEW AV
  • DENISON ST / HILLCROFT DR
  • CENTRE ST / BEAVERTON RD
  • DENISON ST / TOWNLEY AV
  • HENDERSON DR / POPLAR CRES
  • CENTRE ST / BEAVERTON RD
  • HENDERSON DR / POPLAR CRES
  • CENTRE ST / BAYVIEW AV
  • HENDERSON DR / LEE GATE
  • FARMSTEAD RD / FRANK ENDEAN RD
  • HENDERSON DR / BALDWIN RD
  • FRANK ENDEAN RD / CASSATA AV
  • MCCLELLAN WAY / TAMARAC TRAIL
  • FRANK ENDEAN RD / MAJOR MACKENZIE D
  • MCCLELLAN WAY / BRIARDALE PL
  • SPADINA RD / STRATHEARN AV
  • MCCLELLAN WAY / BROOKEVIEW DR
  • SPADINA RD / WELDRICK RD
  • CHISWICK CRES / MCCLELLAN WAY
  • SPADINA RD / BROOKSHILL CRES
  • MCCLELLAN WAY / ALLENVALE DR
  • SPADINA RD / MARLBOROUGH ST
  • MCCLELLAN WAY / BATHURST ST
  • SPADINA RD / BOAKE TRL
  • SPADINA RD / 16TH AV
  • 15TH SDRD / DUFFERIN ST
  • FOOD BASICS STOP # 1152
  • EDWARD ST / ALLAURA BLVD
  • FOOD BASICS STOP # 1154
  • ALLAURA BLVD STOP # 1155
  • VALLEYMEDE DR / HORIZON CRT
  • ALLAURA BLVD / YONGE ST
  • VALLEYMEDE DR STOP # 1158
  • MURRAY DR / NISBET DR
  • VALLEYMEDE DR / STRATHEARN AV
  • MURRAY DR / CORBETT CRES
  • VALLEYMEDE DR / EMMANUEL DR
  • MURRAY DR / GLASS DR
  • VALLEYMEDE DR / BLACKMORE AV
  • MURRAY DR / SEATON DR
  • VALLEYMEDE DR / BRIGGS AV
  • MURRAY DR / GOLF LINKS DR
  • VALLEYMEDE DR / QUEENS COLLEGE DR
  • MURRAY DR / KENNEDY ST
  • VALLEYMEDE DR / CHALMERS RD
  • VALLEYMEDE DR / LEICESTER RD
  • VALLEYMEDE DR / RED OAK DR
  • VALLEYMEDE DR / LEICESTER RD
  • MURRAY DR / GOLF LINKS DR
  • MURRAY DR / SEATON DR
  • TIMES AV / GALLERIA PKWY
  • MURRAY DR / GLASS DR
  • SOUTH PARK RD / TIMES AV
  • MURRAY DR / NISBET DR
  • SOUTH PARK RD / PARK COMMON BLVD
  • MURRAY DR / MOSAICS AV
  • SOUTH PARK RD / POND DR
  • WELLINGTON ST / YONGE ST
  • SOUTH PARK RD / COMMERCE VALLEY DR
  • WELLINGTON ST / GEORGE ST
  • COMMERCE VALLEY DR / SOUTH PARK RD
  • WELLINGTON ST / HAIDA DR
  • COMMERCE VALLEY DR / LESLIE ST
  • WELLINGTON ST / MURRAY DR
  • LESLIE ST STOP # 1194
  • WELLINGTON ST / HAIDA DR
  • LESLIE ST STOP # 1196
  • WELLINGTON ST / GEORGE ST
  • COMMERCE VALLEY DR STOP # 1198
  • WELLINGTON ST / YONGE ST
  • NEWMARKET TERMINAL
  • COMMERCE VALLEY DR STOP # 1200
  • COMMERCE VALLEY DR STOP # 1202
  • COMMERCE VALLEY DR / MINTHORN BLVD
  • RICHMOND HILL GO STATION PLATFORM 6
  • DENISON ST / MCCOWAN RD
  • DENISON ST / COPPARD AV
  • DENISON ST / FEATHERSTONE AV
  • DENISON ST / MIDDLEFIELD RD
  • DENISON ST / COXWORTH AV
  • DENISON ST STOP # 1238
  • DENISON ST / MARKHAM RD
  • MARKHAM RD / ELSON ST
  • ELSON ST / MARYDALE AV
  • ORCHARD HEIGHTS BLVD / CYPRESS CT
  • ELSON ST / JORDANA DR
  • ORCHARD HEIGHTS BLVD / BANFF DR
  • ELSON ST / COXWORTH AV
  • ORCHARD HEIGHTS BLVD / HILL DR
  • ELSON ST / IRENEMOUNT CRES
  • ORCHARD HEIGHTS BLVD / MEADOWOOD DR
  • ELSON ST / MARY PEARSON DR
  • ORCHARD HEIGHTS BLVD / FIELDING DR
  • ELSON ST / MIDDLEFIELD RD
  • ORCHARD HEIGHTS BLVD / PINENEEDLE D
  • MIDDLEFIELD RD STOP # 1256
  • ORCHARD HEIGHTS BLVD / WHISPERING P
  • MIDDLEFIELD RD / DENISON ST
  • AURORA HEIGHTS DR / MCLEOD DR
  • EASTVALE DR / BILLINGSLEY CRES
  • AURORA HEIGHTS DR / CRAWFORD ROSE DR
  • EASTVALE DR / STEELES AV
  • AURORA HEIGHTS DR / HAIDA DR
  • STEELES AV / MARKHAM RD
  • YONGE ST / AURORA HEIGHTS DR
  • DENISON ST / MIDDLEFIELD RD
  • CARRVILLE RD / AVENUE RD
  • DENISON ST / FEATHERSTONE AV
  • CARRVILLE RD / MYERS BLVD
  • DENISON ST / COPPARD AV
  • CARRVILLE RD / AYR RD
  • DENISON ST / MCCOWAN RD
  • CARRVILLE RD / OKANAGAN DR
  • DENISON ST / TOWNLEY AV
  • CARRVILLE RD / BATHURST ST
  • DENISON ST / HILLCROFT DR
  • RUTHERFORD RD / THOMAS COOK AV
  • DENISON ST STOP # 1284
  • BUR OAK AV / RIVERLANDS AV
  • DENISON ST / CARTMEL DR
  • BUR OAK AV / THE MEADOWS AV
  • DENISON ST / BRIMLEY RD
  • DENISON ST / EDEN AV
  • BUR OAK AV / DONALD SIM AV
  • DENISON ST STOP # 1291
  • BUR OAK AV / ALMIRA AV
  • DENISON ST / MALLORY AV
  • BUR OAK AV / WHITE'S HILL AV
  • DENISON ST / FRESNO CRT
  • WHITE'S HILL AV / COUNTRY GLEN RD
  • DENISON ST / KENNEDY RD
  • WHITE'S HILL AV / NINTH LINE
  • DENISON ST / MILLIKEN MEADOWS DR
  • HIGHWAY 407 STATION
  • DENISON ST / CLAYTON DR
  • DENISON ST STOP # 1303
  • and 4578 more (see the full list on the map or in the GeoJSON)

Over time

Overall score across the last 4 checks — up 15.9 since 2026-09-01.

2026-08-06: 65.72026-08-07: 65.32026-09-01: 54.92026-09-02: 70.8
Show the numbers
Overall score by check, with the change from the previous check
CheckScoreChange
2026-08-0665.7 first check
2026-08-0765.3 down 0.4
2026-09-0154.9 down 10.4
2026-09-0270.8 up 15.9

What changed since your last check

  • Correctness down 16.0
  • Freshness up 91.6
  • Rider experience no change

What changed in this feed

Grade improved from F to C since 2026-09-01.

The feed file was re-published since 2026-09-01 (+6208 KB).

New since 2026-09-01 (3 findings)

Changed counts

  • up Some stops sit far from the route line, going by the feed's own distance values. (572 → 1500) (stop_too_far_from_shape_using_user_distance)
  • up Some rider-facing names are in ALL CAPS or all lowercase. (4358 → 4944) (mixed_case_recommended_field)
  • up Some service calendars have no days of the week switched on. (2 → 4) (service_has_no_active_day_of_the_week)
  • up Some service calendars in the feed have already ended. (1 → 3) (expired_calendar)
  • up Some stops sit far from the route line they belong to. (1 → 2) (stop_too_far_from_shape)
  • up About 4820 stop names are written in ALL CAPS. (4253 → 4820) (scorecard_stop_names_all_caps)

No longer reported since 2026-09-01 (1 finding)

  • Service data runs out in 4 day(s). (scorecard_feed_expiring_soon)

This records the later feed state. It does not establish who made a change or why.

Subscribe to this feed’s changes (Atom) to hear about grade drops and export changes in a reader, with no sign-up.

What changed over time

On 2026-08-06 this feed started at grade D. On 2026-09-01 the grade moved from D to F. On 2026-09-02 the grade moved from F to C. On 2026-09-02 the check no longer reported: service data runs out in 4 day(s). As of 2026-09-02 it holds grade C.

A plain-language history of this feed, newest first.

  • 2026-09-02 Grade went F to C, freshness rose 92 points.
  • 2026-09-01 Grade went D to F, freshness fell 42 points.

Everything we checked

15 findings, ordered by severity.

Show every finding
  • Warning1067253 instances

    Some rows in stop_times.txt leave the timepoint column blank.

    That column says whether a time is a real checkpoint or an estimate. Blank leaves apps guessing, and they may show your estimates as promises.

    Fix: Set timepoint=1 on stops that are real time checks and 0 on the rest. If every published time is a scheduled one, mark them all 1. (Usually one export setting.)

    Finding code: missing_timepoint_value · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning4944 instances

    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)

  • Warning1500 instances

    Some stops sit far from the route line, going by the feed's own distance values.

    Trip planners may draw the route down the wrong streets or point riders to the wrong corner.

    Fix: Check the flagged stops' shape_dist_traveled against the route shape, and re-generate it on export if they disagree. (Usually an export-tool fix, not hand editing.)

    Finding code: stop_too_far_from_shape_using_user_distance · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning4 instances

    Some service calendars have no days of the week switched on.

    Trips tied to these calendars never run; they are dead data that can mask real schedule problems.

    Fix: Delete the empty calendars or set their service days. (A few minutes in your scheduling software.)

    Finding code: service_has_no_active_day_of_the_week · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning3 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)

  • Warning2 instances

    Some files leave out fields that GTFS asks for but does not require.

    Recommended fields like agency_phone or stop descriptions make the feed more useful to riders and trip planners.

    Fix: Review the flagged fields and fill in the ones your riders would use. (A field at a time; not urgent.)

    Finding code: missing_recommended_field · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning2 instances

    Some stops sit far from the route line they belong to.

    Trip planners may draw the bus route through the wrong streets or point riders to the wrong corner.

    Fix: Check the flagged stops' coordinates and the route shape in your scheduling software; re-snap whichever is misplaced. (A few minutes per flagged stop.)

    Finding code: stop_too_far_from_shape · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning2 instances

    On some trips the stops fall along the route line in a different order than the schedule lists.

    Trip planners can draw the bus doubling back or skipping ahead, which confuses riders reading the map.

    Fix: Check the stop order and the shape direction in your scheduling software; the shape is often drawn backwards. (A few minutes per flagged trip.)

    Finding code: stops_match_shape_out_of_order · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning1 instance

    feed_info.txt lists no contact email and no contact URL.

    Without a contact, apps like Google Maps can't reach you when they find a problem in the feed.

    Fix: Add feed_contact_email or feed_contact_url to feed_info.txt. (One field, set once in export settings.)

    Finding code: missing_feed_contact_email_and_url · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning1 instance

    This feed models stations or entrances but has no pathways.txt.

    Trip planners can't guide riders through the station, and there is no step-free route information for wheelchair users.

    Fix: Add pathways.txt to link entrances, platforms, and elevators. Give each one a level. (Worth it for multi-level or large stations; flat stops don't need it.)

    Finding code: scorecard_station_no_pathways · Read the fix guide · See GTFS Schedule reference (opens the GTFS Schedule reference on an external site)

  • Info4820 instances

    About 4820 stop names are written in ALL CAPS.

    Mixed-case names are easier to read in apps and are read more naturally by screen readers.

    Fix: Rename stops to mixed case where the language has letter case (for example, 'Central Station'). (Often a bulk fix in your scheduling software.)

    Finding code: scorecard_stop_names_all_caps · Read the fix guide · See GTFS Best Practices (opens GTFS Best Practices on an external site)

  • Info9 instances

    Platform without parent station (flagged by the MobilityData validator).

    See the linked rule for what this affects.

    Fix: Review the rule documentation for 'platform_without_parent_station' at https://gtfs-validator.mobilitydata.org/rules.html and check the flagged rows in your feed. (Varies.)

    Finding code: platform_without_parent_station · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Info2 instances

    Unused station (flagged by the MobilityData validator).

    See the linked rule for what this affects.

    Fix: Review the rule documentation for 'unused_station' at https://gtfs-validator.mobilitydata.org/rules.html and check the flagged rows in your feed. (Varies.)

    Finding code: unused_station · 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)

  • Info1 instance

    feed_info.txt has no technical contact (feed_contact_email or feed_contact_url).

    App makers and state data programs have nobody to email when they spot a problem. Small errors then sit in the feed for months.

    Fix: Add feed_contact_email to feed_info.txt. (One field.)

    Finding code: scorecard_no_feed_contact · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

Conformance mark Awarded

This feed earns the conformance mark: valid, current, and stating wheelchair access on nearly every stop and trip.

GTFS conformance mark for York Region Transit (YRT)

Valid Met
Passes validation with no errors.
Current Met
Service data covers the next 59 days.
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.

Clears the Google and Apple Maps four-week coverage bar. This feed has 59 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. Read the full standards crosswalk.

Correctness 50 / 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.
Freshness 98 / 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.
Rider experience 78 / 100
GTFS Best Practices for rider-facing fields. MobilityData grading covers stop names and headsigns.
Realtime quality Not yet published
GTFS-Realtime best practices: a stable URL, high uptime, and frequent updates.

Show your grade

Put a badge on your agency site or feed README. It updates after each completed scoring check and links back to this scorecard.

York Region Transit (YRT) GTFS data quality grade: C

Prefer a shields.io style? Point a dynamic endpoint badge at the published badge.json.

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/york-region-transit/2026-09-02.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-09-02. 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.