← All agencies

Feed status · checked 2026-09-05

Transport for NSW (Greater Sydney)

Based on the official feed source on file

Service mode Tram + Metro + 3 more

37.8 / 100

First scorecard for this agency

Catalogued in New South Wales, Australia.

Covers 90 daysAccessibility gapsStation pathwaysRealtime not yet published

The complete Greater Sydney schedule bundle: 10,179 routes and 199,757 trips across light rail, metro, rail, bus and ferry. It is one regional file covering many operators, counted here as one feed record rather than as separate agencies. At 279 MiB it needs the large-feed ingestion tier. The per-mode Transport for NSW API feeds still require an API key; this bundle does not, which is what changed since the 2026-07 review deferred Sydney on its registration wall.

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.

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

Re-generate shape distances in your export; flag to your vendor if it persists.Likely your export tool

Some trips have stop times whose distances along the route go backwards. Apps can show transit vehicles jumping backwards or mis-order stops.

⏱ Usually an export-tool fix, not hand editing.worth about +18 points in its category

Fix 02

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

Number out of range (flagged by the MobilityData validator). See the linked rule for what this affects.

⏱ Varies.worth about +12 points in its category

Fix 03

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

Block trips with overlapping stop times (flagged by the MobilityData validator). See the linked rule for what this affects.

⏱ Varies.worth about +12 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 trips have stop times whose distances along the route go backwards.
Next action
Re-generate shape distances in your export; flag to your vendor if it persists.
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. Re-generate shape distances in your export; flag to your vendor if it persists.

    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. Self-check a feed before you publish.

  2. Review the rule documentation for 'number_out_of_range' at https://gtfs-validator.mobilitydata.org/rules.html and check the flagged rows in your feed.

    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. Self-check a feed before you publish.

  3. Review the rule documentation for 'block_trips_with_overlapping_stop_times' at https://gtfs-validator.mobilitydata.org/rules.html and check the flagged rows in your feed.

    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. Self-check a feed before you publish.

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 90 days.
Published accessibility data
Accessibility information is stated for 1.6% of stops and 100% of trips. This measures published data, not whether stops or vehicles are physically usable.
Fare information
No fare information is published in the feed.
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.

Ungraded capability read

Ferry data profile

A ferry-specific view of what this GTFS feed publishes. Schedule measurements use ferry routes and trips only; fare and realtime facts are labelled as whole-feed. Unknown values are not treated as no.

Ferry service
24 routes · 7,442 trips
Terminal structure
96 ferry boarding locations; 96 link to 78 referenced station records.
Terminal access
Unknown: none of the 96 eligible child terminal locations publish stop_access.
Published accessibility
100% of ferry boarding locations publish a value; 77.1% of all ferry boarding locations explicitly say allowed (74 of 96). Unstated values remain unknown. 100% of ferry trips publish a value; 99% of all ferry trips explicitly say allowed (7,365 of 7,442). Unstated values remain unknown. This reports published values, not verified physical usability.
Bicycles
Unknown: none of the 7,442 ferry trips publish bikes_allowed.
Cars
Unknown: none of the 7,442 ferry trips publish cars_allowed.
Fares
Whole feed: no applied fare data is published. This is not evidence that ferry service is free.
Realtime
Whole feed: no GTFS-Realtime endpoints are configured in this scorecard.

Descriptive only. This profile does not change the grade or verify vessels, terminal facilities, vehicle carriage, fares, or accessibility in the real world. Field meanings follow the GTFS Schedule reference.

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

Correctness0.0 / 100

The MobilityData validator flagged 22 kinds of issue across 22597 instances (12 error, 22145 warning, 440 informational).

Freshness85.0 / 100

Service data covers the next 90 days.

Rider experience52.9 / 100

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

Accessibility38.5 / 100

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

2 accessibility depth signals

  • 9910 route badge(s) pair a color and text color below the WCAG 4.5:1 contrast bar (14SC, 43SC, 75SC, 76SC, SC01, 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.

  • 158666 stop name(s) use abbreviations or symbols a screen reader may mispronounce, with no spoken form set ("Central Station, Eddy Av", "Central Station, Eddy Av, Stand A", "Central Station, Eddy Av, Stand B", 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.

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 171069 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.

  • 14SC (teal)
  • 43SC (teal)
  • 75SC (teal)
  • 76SC (teal)
  • SC01 (teal)
  • SH100 (teal)
  • 12M (teal)
  • 4001 (teal)
  • 4002 (teal)
  • 4003 (teal)
  • 4005 (teal)
  • 4008 (teal)
  • 4009 (teal)
  • 4010 (teal)
  • 4011 (teal)
  • 4012 (teal)
  • 4013 (teal)
  • 4014 (teal)
  • 4016 (teal)
  • 4017 (teal)
  • 4019 (teal)
  • 4020 (teal)
  • 4021 (teal)
  • 4022 (teal)
  • 4027 (teal)
  • 4034 (teal)
  • 4036 (teal)
  • 4037 (teal)
  • 4040 (teal)
  • 4042 (teal)
  • 4043 (teal)
  • 4044 (teal)
  • 4047 (teal)
  • 4048 (teal)
  • 4049 (teal)
  • 4050 (teal)
  • 4052 (teal)
  • 4053 (teal)
  • 4055 (teal)
  • 4058 (teal)
  • 4059 (teal)
  • 4060 (teal)
  • 4062 (teal)
  • 4064 (teal)
  • 4067 (teal)
  • 4072 (teal)
  • 4073 (teal)
  • 4074 (teal)
  • 4075 (teal)
  • 4077 (teal)
  • 4079 (teal)
  • 4080 (teal)
  • 4082 (teal)
  • 4084 (teal)
  • 4086 (teal)
  • 4090 (teal)
  • 4094 (teal)
  • 4097 (teal)
  • 4098 (teal)
  • 4099 (teal)
  • 4102 (teal)
  • 4104 (teal)
  • 4105 (teal)
  • 4106 (teal)
  • 4107 (teal)
  • 4108 (teal)
  • 4110 (teal)
  • 4113 (teal)
  • 4115 (teal)
  • 4116 (teal)
  • 4122 (teal)
  • 4127 (teal)
  • 4128 (teal)
  • 4131 (teal)
  • 4134 (teal)
  • 4136 (teal)
  • 4138 (teal)
  • 4143 (teal)
  • 4145 (teal)
  • 4146 (teal)
  • 4147 (teal)
  • 4157 (teal)
  • 4158 (teal)
  • 4159 (teal)
  • 4165 (teal)
  • 4166 (teal)
  • 4501 (teal)
  • 4502 (teal)
  • 4504 (teal)
  • 4506 (teal)
  • 4507 (teal)
  • 4509 (teal)
  • 4510 (teal)
  • 4511 (teal)
  • 4512 (teal)
  • 4513 (teal)
  • 4514 (teal)
  • 4515 (teal)
  • 4516 (teal)
  • 4518 (teal)
  • 4521 (teal)
  • 4523 (teal)
  • 4525 (teal)
  • 4526 (teal)
  • 4527 (teal)
  • 4532 (teal)
  • 4534 (teal)
  • 4535 (teal)
  • 4536 (teal)
  • 4538 (teal)
  • 4540 (teal)
  • 4541 (teal)
  • 4548 (teal)
  • 4551 (teal)
  • 4552 (teal)
  • 4555 (teal)
  • 4556 (teal)
  • 4559 (teal)
  • 4560 (teal)
  • 4564 (teal)
  • 4565 (teal)
  • 4566 (teal)
  • 4567 (teal)
  • 4568 (teal)
  • 4569 (teal)
  • 4570 (teal)
  • 4571 (teal)
  • 4581 (teal)
  • 4584 (teal)
  • 4590 (teal)
  • 4591 (teal)
  • 4592 (teal)
  • 4593 (teal)
  • 4595 (teal)
  • 4599 (teal)
  • 4600 (teal)
  • 4604 (teal)
  • 4605 (teal)
  • 4606 (teal)
  • 4609 (teal)
  • 4611 (teal)
  • 4613 (teal)
  • 4614 (teal)
  • 4615 (teal)
  • 4616 (teal)
  • 4617 (teal)
  • 4620 (teal)
  • 4623 (teal)
  • 4624 (teal)
  • 4626 (teal)
  • 4629 (teal)
  • 4630 (teal)
  • 4631 (teal)
  • 4636 (teal)
  • 4637 (teal)
  • 4639 (teal)
  • 4640 (teal)
  • 4641 (teal)
  • 4642 (teal)
  • 4643 (teal)
  • 4644 (teal)
  • 4647 (teal)
  • 4651 (teal)
  • 4652 (teal)
  • 4653 (teal)
  • 4654 (teal)
  • 4655 (teal)
  • 4656 (teal)
  • 4657 (teal)
  • 4658 (teal)
  • 4659 (teal)
  • 4660 (teal)
  • 4661 (teal)
  • 4662 (teal)
  • 4663 (teal)
  • 4664 (teal)
  • 4665 (teal)
  • 4666 (teal)
  • 5004 (teal)
  • 5005 (teal)
  • 5006 (teal)
  • 5007 (teal)
  • 5008 (teal)
  • 5009 (teal)
  • 5010 (teal)
  • 5011 (teal)
  • 5012 (teal)
  • 5014 (teal)
  • 5018 (teal)
  • 5019 (teal)
  • 5020 (teal)
  • 5021 (teal)
  • 5022 (teal)
  • 5023 (teal)
  • 5024 (teal)
  • 5028 (teal)
  • 5029 (teal)
  • 5030 (teal)
  • 5037 (teal)
  • 5038 (teal)
  • 5039 (teal)
  • 5040 (teal)
  • 5041 (teal)
  • 5042 (teal)
  • 5043 (teal)
  • 5044 (teal)
  • 5045 (teal)
  • 5046 (teal)
  • 5047 (teal)
  • 5048 (teal)
  • 5049 (teal)
  • 5050 (teal)
  • 5051 (teal)
  • 5052 (teal)
  • 5053 (teal)
  • 5054 (teal)
  • 5056 (teal)
  • 5057 (teal)
  • 5058 (teal)
  • 5060 (teal)
  • 5062 (teal)
  • 5066 (teal)
  • 5069 (teal)
  • 5076 (teal)
  • 5077 (teal)
  • 5080 (teal)
  • 5081 (teal)
  • 5085 (teal)
  • 5086 (teal)
  • 5087 (teal)
  • 5088 (teal)
  • 5100 (teal)
  • 5101 (teal)
  • 5102 (teal)
  • 5103 (teal)
  • 5104 (teal)
  • 5105 (teal)
  • 5106 (teal)
  • 5107 (teal)
  • 5108 (teal)
  • 5109 (teal)
  • 5110 (teal)
  • 5111 (teal)
  • 5112 (teal)
  • 5114 (teal)
  • 5116 (teal)
  • 5120 (teal)
  • 5121 (teal)
  • 5122 (teal)
  • 5123 (teal)
  • 5124 (teal)
  • 5125 (teal)
  • 5126 (teal)
  • 5127 (teal)
  • 5128 (teal)
  • 5129 (teal)
  • 5130 (teal)
  • 5131 (teal)
  • 5132 (teal)
  • 5133 (teal)
  • 5134 (teal)
  • 5140 (teal)
  • 5141 (teal)
  • 5142 (teal)
  • 5143 (teal)
  • 5144 (teal)
  • 545 (teal)
  • 5501 (teal)
  • 5502 (teal)
  • 5503 (teal)
  • 5504 (teal)
  • 5505 (teal)
  • 5506 (teal)
  • 5507 (teal)
  • 5508 (teal)
  • 5509 (teal)
  • 5510 (teal)
  • 5512 (teal)
  • 5513 (teal)
  • 5514 (teal)
  • 5515 (teal)
  • 5516 (teal)
  • 5517 (teal)
  • 5519 (teal)
  • 5520 (teal)
  • 5522 (teal)
  • 5524 (teal)
  • 5525 (teal)
  • 5527 (teal)
  • 5528 (teal)
  • 5529 (teal)
  • 5532 (teal)
  • 5534 (teal)
  • 5537 (teal)
  • 5538 (teal)
  • 5539 (teal)
  • 5540 (teal)
  • 5541 (teal)
  • 5543 (teal)
  • 5544 (teal)
  • 5545 (teal)
  • 5546 (teal)
  • 5547 (teal)
  • 5548 (teal)
  • 5550 (teal)
  • 5556 (teal)
  • 5557 (teal)
  • 5559 (teal)
  • 5560 (teal)
  • 5561 (teal)
  • 5562 (teal)
  • 5563 (teal)
  • 5564 (teal)
  • 5566 (teal)
  • 5569 (teal)
  • 5570 (teal)
  • 5571 (teal)
  • 5572 (teal)
  • 5573 (teal)
  • 5574 (teal)
  • 5575 (teal)
  • 5576 (teal)
  • 5577 (teal)
  • 5578 (teal)
  • 5579 (teal)
  • 5581 (teal)
  • 5586 (teal)
  • 5587 (teal)
  • 5589 (teal)
  • 5594 (teal)
  • 5595 (teal)
  • 5596 (teal)
  • 5597 (teal)
  • 5600 (teal)
  • 5601 (teal)
  • 5602 (teal)
  • 5603 (teal)
  • 5604 (teal)
  • 5605 (teal)
  • 5606 (teal)
  • 5607 (teal)
  • 5608 (teal)
  • 5609 (teal)
  • 5610 (teal)
  • 5611 (teal)
  • 5612 (teal)
  • 5613 (teal)
  • 5614 (teal)
  • 5615 (teal)
  • 5616 (teal)
  • 5617 (teal)
  • 5620 (teal)
  • 5621 (teal)
  • 5622 (teal)
  • 5623 (teal)
  • 5624 (teal)
  • 5625 (teal)
  • 5626 (teal)
  • 5627 (teal)
  • 5628 (teal)
  • 5629 (teal)
  • 5630 (teal)
  • 5631 (teal)
  • 5632 (teal)
  • 5633 (teal)
  • 5634 (teal)
  • 5635 (teal)
  • 5640 (teal)
  • 5641 (teal)
  • 5642 (teal)
  • 5643 (teal)
  • 6001 (teal)
  • 6002 (teal)
  • 6003 (teal)
  • 6004 (teal)
  • 6005 (teal)
  • 6007 (teal)
  • 6009 (teal)
  • 6010 (teal)
  • 6012 (teal)
  • 6013 (teal)
  • 6014 (teal)
  • 6016 (teal)
  • 6017 (teal)
  • 6018 (teal)
  • 6019 (teal)
  • 6020 (teal)
  • 6021 (teal)
  • 6022 (teal)
  • 6023 (teal)
  • 6024 (teal)
  • 6025 (teal)
  • 6026 (teal)
  • 6027 (teal)
  • 6028 (teal)
  • 6029 (teal)
  • 6030 (teal)
  • 6031 (teal)
  • 6032 (teal)
  • 6033 (teal)
  • 6034 (teal)
  • 6035 (teal)
  • 6036 (teal)
  • 6037 (teal)
  • 6038 (teal)
  • 6040 (teal)
  • 6041 (teal)
  • 6042 (teal)
  • 6043 (teal)
  • 6044 (teal)
  • 6046 (teal)
  • 6047 (teal)
  • 6048 (teal)
  • 6049 (teal)
  • 6050 (teal)
  • 6051 (teal)
  • 6052 (teal)
  • 6053 (teal)
  • 6054 (teal)
  • 6055 (teal)
  • 6056 (teal)
  • 6057 (teal)
  • 6058 (teal)
  • 6059 (teal)
  • 6060 (teal)
  • 6061 (teal)
  • 6062 (teal)
  • 6063 (teal)
  • 6064 (teal)
  • 6065 (teal)
  • 6066 (teal)
  • 6067 (teal)
  • 6068 (teal)
  • 6070 (teal)
  • 6071 (teal)
  • 6072 (teal)
  • 6073 (teal)
  • 6075 (teal)
  • 6076 (teal)
  • 6077 (teal)
  • 6078 (teal)
  • 6080 (teal)
  • 6081 (teal)
  • 6083 (teal)
  • 6084 (teal)
  • 6088 (teal)
  • 6089 (teal)
  • 6090 (teal)
  • 6091 (teal)
  • 6095 (teal)
  • 6096 (teal)
  • 6097 (teal)
  • 6128 (teal)
  • 6129 (teal)
  • 6131 (teal)
  • 6500 (teal)
  • 6501 (teal)
  • 6502 (teal)
  • 6503 (teal)
  • 6504 (teal)
  • 6505 (teal)
  • 6506 (teal)
  • 6507 (teal)
  • 6509 (teal)
  • 6510 (teal)
  • 6512 (teal)
  • 6513 (teal)
  • 6514 (teal)
  • 6515 (teal)
  • 6517 (teal)
  • 6520 (teal)
  • 6521 (teal)
  • 6522 (teal)
  • 6523 (teal)
  • 6524 (teal)
  • 6525 (teal)
  • 6526 (teal)
  • 6527 (teal)
  • 6528 (teal)
  • 6529 (teal)
  • 6530 (teal)
  • 6531 (teal)
  • 6532 (teal)
  • 6533 (teal)
  • 6534 (teal)
  • 6536 (teal)
  • 6538 (teal)
  • 6539 (teal)
  • 6540 (teal)
  • 6541 (teal)
  • 6543 (teal)
  • 6544 (teal)
  • 6545 (teal)
  • 6546 (teal)
  • 6547 (teal)
  • 6548 (teal)
  • 6549 (teal)
  • 6550 (teal)
  • 6551 (teal)
  • 6553 (teal)
First 500 of 10,208 routes in Transport for NSW (Greater Sydney)'s feed
RouteTypeLine color
14SC Thirroul, then all stations to DaptoBusteal
43SC Central, Sutherland, North Wollongong, Wollongong then DaptoBusteal
75SC Sutherland, Waterfall, then OtfordBusteal
76SC Wollongong, then express to OtfordBusteal
SC01 Kiama to BomaderryBusteal
SH100 Moss Vale to GoulburnBusteal
12M Chatswood to Tallawong (Limited Stops)Busteal
4001 Penrith Station to McCarthy CollegeBusteal
4002 Swallow Dr opp Skylark Cres to Caroline Chisholm CollegeBusteal
4003 Caroline Chisholm College to York PS via Regentville PSBusteal
4005 Weir Rd after Seventh St to Holy Family PSBusteal
4008 Bennett Rd after Shepherd St to Penrith Christian SchoolBusteal
4009 Xavier College to Henry Fulton PSBusteal
4010 Weir Rd after Seventh St to Caroline Chisholm CollegeBusteal
4011 Glenmore Park HS to St Dominic's CollegeBusteal
4012 Penrith Station to McCarthy HSBusteal
4013 Fifth Rd opp Llandilo Rd to Llandilo PSBusteal
4014 Llandilo PS to Caroline Chisholm CollegeBusteal
4016 Mulgoa Rise to Surveyors Creek PS via Glenmore Park PSBusteal
4017 Penrith Station to McCarthy CollegeBusteal
4019 Penrith Station to McCarthy CollegeBusteal
4020 159 Park River Cl to Penrith Christian SchoolBusteal
4021 Penrith Station to Penrith PS and Penrith HSBusteal
4022 Penrith Station to St Pauls GrammarBusteal
4027 Xavier College to Llandilo PSBusteal
4034 Weir Rd at Fifth St to McCarthy CollegeBusteal
4036 Little Joeys Pre-School to Emmaus CollegeBusteal
4037 Banks Dr opp Teak St to Emmaus CollegeBusteal
4040 Swallow Dr at Fantail Cres to Emmaus CollegeBusteal
4042 Penrith Station to Penrith PS and Penrith HSBusteal
4043 Colorado Dr after Explorers Way to Penrith PS and Penrith HSBusteal
4044 Victoria St at Richmond Rd to Glenmore Park HSBusteal
4047 Victoria St at Richmond Rd to Caroline Chisholm CollegeBusteal
4048 Taylors Rd at Silverdale Rd to Holy Family PSBusteal
4049 Mulgoa Rd after School House Rd to Kingswood HSBusteal
4050 Banks Dr after Mamre Rd to Emmaus CollegeBusteal
4052 Banks Dr after Mamre Rd to Erskine Park HSBusteal
4053 Swallow Dr opp Skylark Cres to Emmaus CollegeBusteal
4055 Mulgoa Rd after School House Rd to McCarthy CollegeBusteal
4058 Surveyors Creek Rd at Kiber Dr to St Nicholas of Myra PSBusteal
4059 McCarthy College to Penrith SationBusteal
4060 Penrith Station to Penrith Anglican CollegeBusteal
4062 Greygums Rd opp Bottlebrush Dr to St Mary Mackillop PSBusteal
4064 Penrith South PS to St Pauls GrammarBusteal
4067 Mamre Rd at Lonsdale St to Emmaus CollegeBusteal
4072 Bringelly Rd after The Northern Rd to Xavier CollegeBusteal
4073 Richmond St opp Cooper St to Xavier CollegeBusteal
4074 Caroline Chisholm College to Penrith Christian SchoolBusteal
4075 Penrith Station to Penrith Anglican CollegeBusteal
4077 Andromeda Dr before The Northern Rd to Henry Fulton PSBusteal
4079 Caloola Av before Kareela Ave to Penrith HSBusteal
4080 Wallacia to Caroline Chisholm CollegeBusteal
4082 Jeanette St at Mulgoa Rd to St Dominic's CollegeBusteal
4084 St Clair Shopping Centre to Emmaus CollegeBusteal
4086 Mt Druitt Station to Emmaus CollegeBusteal
4090 Penrith Station to Penrith PS and Penrith HSBusteal
4094 Penrith Station to McCarthy CollegeBusteal
4097 Penrith Station to Penrith PS and Penrith HSBusteal
4098 Sunflower Dr at O'Connell St to Emmaus CollegeBusteal
4099 Mt Druitt Station to Chifley College Dunheved CampusBusteal
4102 Allison Dr opp Langley Av to Nepean Christian SchoolBusteal
4104 Erskine Park HS to Trinity PSBusteal
4105 Weir Rd after Seventh St to Penrith Anglican CollegeBusteal
4106 Silverdale Rd before Farnsworth Av to Nepean Christian SchoolBusteal
4107 Penrith Anglican College to Penrith Christian SchoolBusteal
4108 Saddington St after Mamre Rd to Erskine Park HSBusteal
4110 Weir Rd after Seventh St to St Dominic's CollegeBusteal
4113 Kingswood Station to Kingswood PSBusteal
4115 St Marys Station to Emmaus CollegeBusteal
4116 Sunflower Dr after Myrtle Rd to Kingswood HSBusteal
4122 Werrington Station to St Dominic's CollegeBusteal
4127 Banks Dr after Mamre Rd to Erskine Park HSBusteal
4128 Colorado Dr at Explorers Way to Emmaus CollegeBusteal
4131 Kingswood HS to Glenmore Park HSBusteal
4134 John Batman Av at Lockyer Av to Xavier CollegeBusteal
4136 Erskine Park HS to Emmaus CollegeBusteal
4138 St Dominic's College to Corpus Christi PSBusteal
4143 Banks Dr after Mamre Rd to St Dominic's CollegeBusteal
4145 School House Rd after Mulgoa Rd to Penrith Christian SchoolBusteal
4146 Gipps St after Great Western Hwy to St Josephs PSBusteal
4147 Luddenhan Rd after Mamre Rd to St Clair HSBusteal
4157 St Marys Station to Xavier College via Ropes CrossingBusteal
4158 Silverdale to Glenmore Park High SchoolBusteal
4159 Warragamba to Glenmore Park High School via WallaciaBusteal
4165 Ropes Crossing to Xavier CollegeBusteal
4166 Jordan Springs to Jordan Springs PSBusteal
4501 Caroline Chisholm College to Borrowdale Way opp Seaton CrBusteal
4502 McCarthy College to Weir Rd opp Seventh StBusteal
4504 Trinity PS to Chameleon Dr at Carcoar ClBusteal
4506 Jamison HS to Penrith StationBusteal
4507 McCarthy College to Penrith StationBusteal
4509 Holy Family PS to Weir Rd opp Seventh StBusteal
4510 Mamre Anglican School to Captain Cook Dr before Palmyra AvBusteal
4511 Erskine Park HS to Kent Rd at Lansdowne RdBusteal
4512 Mamre Anglican School to St Marys StationBusteal
4513 St Dominic's School to Penrith StationBusteal
4514 Caroline Chisholm College to Mamre at SaddingtonBusteal
4515 Trinity PS to Swallow Dr at Skylark CrBusteal
4516 Mamre Anglican School to Mulgoa Rd opp Wallacia HotelBusteal
4518 Mamre Anglican School to Carpenter St before Marsden RdBusteal
4521 Penrith Anglican College to Park River Cl at Fairlight RdBusteal
4523 St Josephs PS to Penrith Anglican CollegeBusteal
4525 Penrith Anglican College to Surveyors Creek PS via Garswood RdBusteal
4526 Penrith Anglican College to Penrith StationBusteal
4527 Glenmore Park HS to St Dominic's CollegeBusteal
4532 St Paul's Grammar School to Penrith StationBusteal
4534 York PS to Weir Rd opp Seventh StBusteal
4535 Kingswood HS to Sunflower Dr before Gipps StBusteal
4536 Penrith Christian Community School to Weir Rd opp Seventh StBusteal
4538 Penrith Christian Community School to Trinity Dr at Cleeve PlBusteal
4540 St Paul's Grammar School to Penrith StationBusteal
4541 Caroline Chisholm College to The Northern Rd before Cranebrook RdBusteal
4548 Corpus Christi Catholic PS to Castlereagh Rd before High St via CastlereaghBusteal
4551 Trinity Catholic PS to Cook Pde at Clyde AvBusteal
4552 Mamre Anglican School to Luddenhan Rd before Mamre Rd via Kemps CreekBusteal
4555 Caroline Chisholm HS to Coonawarra Dr at Colorado DrBusteal
4556 Our Lady of the Rosary Church to St Marys Station via Queen StBusteal
4559 St Dominics College to Ridgetop Dr before Glenmore PkwyBusteal
4560 Penrith Anglican College to Weir Rd opp Seventh StBusteal
4564 McCarthy HS to Penrith Station via High StBusteal
4565 Trinity Catholic PS to St Clair Av after Banks DrBusteal
4566 Emmaus College to St Marys StationBusteal
4567 McCarthy Catholic College to Penrith StationBusteal
4568 Xavier College to Greenbank/HarvestBusteal
4569 Nepean Christian School to Glenbrook St at Warragamba CrBusteal
4570 Emmaus College to Roper Rd opp Carlisle AvBusteal
4571 Mamre Anglican School to Brisbane St before Australia StBusteal
4581 Xavier College to John Batman Av at Lockyer AvBusteal
4584 Emmaus College to Swallow Dr opp Warbler StBusteal
4590 Erskine Park HS to Banks Dr at Mamre RdBusteal
4591 Mamre Anglican School to Solander Dr after Naoli PlBusteal
4592 Caroline Chisholm HS to Sunflower Dr before Gipps StBusteal
4593 Penrith Station to Evan St at Darling St via South PenrithBusteal
4595 Caroline Chisholm HS to St Dominic's CollegeBusteal
4599 St Dominic's College to St Dominics College vai Werrington DownsBusteal
4600 St Dominics School to Bija Dr op Burra CrBusteal
4604 McCarthy Catholic College to Regentville PSBusteal
4605 Nepean Christian School to Penrith StationBusteal
4606 Jamison HS to Penrith Anglican CollegeBusteal
4609 St Pauls Grammar School to Penrith StationBusteal
4611 Glenmore Park HS to Silverdale Rd opp Taylors RdBusteal
4613 Mamre Anglican School to Mt Druitt StationBusteal
4614 Kingswood HS to Jamison Rd before Dent StBusteal
4615 Penrith Anglican College to Maxwell St opp Parsons AvBusteal
4616 Erskine Park HS to St Marys StationBusteal
4617 The Lakes Christian College to Penrith StationBusteal
4620 Trinity Catholic PS to Cook Pde at Pine Creek CctBusteal
4623 Cranebrook HS to Dunheved Rd at Greenbank DrBusteal
4624 St Dominic's College to Harvest Dr at Greenbank DrBusteal
4626 Xavier College to Victoria St at Richmond RdBusteal
4629 Erskine Park HS to Banks Dr at Mamre RdBusteal
4630 Caroline Chisholm HS to Parker St after Oxford StBusteal
4631 Caroline Chisholm HS to Gipps St before Great Western HwyBusteal
4636 Cranebrook HS to Llandilo Rd opp Galvin RdBusteal
4637 Colyton HS to St Marys StationBusteal
4639 St Nicholas of Myra School to St Pauls Grammar SchoolBusteal
4640 McCarthy Catholic College to Parker St after Oxford StBusteal
4641 St Josephs PS to Garswood Rd before The Northern RdBusteal
4642 Trinity Catholic PS to Melville Rd before Hunter StBusteal
4643 Chifley College Dunheved Campus to Mt Druitt StationBusteal
4644 St Pauls Grammar School to Claremont Meadows ShopsBusteal
4647 Mamre Anglican School to St Dominic's CollegeBusteal
4651 Xavier College to Dunheved Rd at Greenbank DrBusteal
4652 Penrith Christian School to Penrith StationBusteal
4653 St Dominic's College to Kingswood Station, Park St via Cambridge ParkBusteal
4654 Erskine Park HS to Mt Druitt StationBusteal
4655 Kingswood HS to Regentville PSBusteal
4656 Xavier College to Andromeda Dr at Vincent RdBusteal
4657 St Marys Station to Xavier College via Ropes CrossingBusteal
4658 Chifley College Dunheved Campus to St Marys StationBusteal
4659 Glenmore Park PS to Mulgoa Rise via Surveyors Creek PSBusteal
4660 Glenmore Park High School to SilverdaleBusteal
4661 Caroline Chisholm College to Orchard HillsBusteal
4662 Bethany Primary School to Luddenham via WallaciaBusteal
4663 Holy Family Primary School to Wallacia via MulgoaBusteal
4664 Glenmore Park High School to Warragamba via WallaciaBusteal
4665 Xavier College to Ropes Crossing via Shanes ParkBusteal
4666 Jordan Springs PS to Jordan SpringsBusteal
5004 Windsor Station to The Kings SchoolBusteal
5005 Wilberforce PS to Windsor StationBusteal
5006 Windsor Station to Windsor PSBusteal
5007 Barnetts Rd after Oakes Rd to St Monica's PSBusteal
5008 Pellizzer Rd after Balmoral Rd to Hills Grammar SchoolBusteal
5009 Stannix Park Rd at Carrs Rd to Windsor HSBusteal
5010 Richmond Station to Bede Polding CollegeBusteal
5011 Bede Polding College to Hobartville PSBusteal
5012 Hobartville PS to Londonderry PSBusteal
5014 Hawkesbury Rd opp Hillcrest Rd to Hobartville PSBusteal
5018 Richmond HS to Chisholm Catholic PSBusteal
5019 Chisholm Catholic PS to Windsor PSBusteal
5020 Windsor Station to Windsor PS via Moses StBusteal
5021 The Northern Rd opp Whitegates Rd to Llandilo PSBusteal
5022 Richmond Station to Bede Polding CollegeBusteal
5023 Bede Polding College to Windsor HSBusteal
5024 Spinks Rd opp Grand Pde to St Nicholas of Myra ChurchBusteal
5028 Richmond Station to St Matthews Catholic PS viaBusteal
5029 Bede Polding College to Windsor HS via LondonderryBusteal
5030 Londonderry Rd before The Northern Rd to Windsor South PSBusteal
5037 Windsor Station to Windsor HSBusteal
5038 Bede Polding College to Windsor HSBusteal
5039 Seventh Av after The Northern Rd to Bede Polding CollegeBusteal
5040 Sirius Rd at Rifle Range Rd to Richmond StationBusteal
5041 Singleton Rd at Kurmond Rd to Hawkesbury HSBusteal
5042 Londonderry Rd at Cranebrook Rd to Londonderry PSBusteal
5043 Londonderry PS to Richmond HSBusteal
5044 Londonderry Rd before Reynolds Rd to Richmond PSBusteal
5045 The Northern Rd after Richmond Rd to Richmond HSBusteal
5046 Richmond Station to Richmond PS via Windsor StBusteal
5047 St Marys Rd after Richmond Rd to Windsor HS via Arndell Anglican CollegeBusteal
5048 Windsor Marketplace to Windsor High SchoolBusteal
5049 Putty Rd opp Morilla Rd to Glossodia PS via Kurrajong East PSBusteal
5050 Comleroy Rd before Oswald Park Pl to Richmond North PSBusteal
5051 Titus Rd at Blaxlands Ridge Rd to Hawkesbury Independent SchoolBusteal
5052 Bull Ridge Rd after Putty Rd to Kurrajong East PSBusteal
5053 East Kurrajong Rd opp Ala Moana Rd to Kurrajong East PSBusteal
5054 River Rd at Springwood Rd to Windsor Station via Richmond StationBusteal
5056 Tennyson Rd after Kurmond Rd to Hawkesbury HS via George RdBusteal
5057 Hawkesbury HS to Kurmond PSBusteal
5058 Kurmond Rd at Spinks Rd to Wilberforce PSBusteal
5060 Creek Ridge Rd after Lamrock Av to Kurmond PS via Richmond North PSBusteal
5062 Ski Lodge Rd at Holmes Dr to Glossodia PS via Wilberforce PS and Hawkesbury HSBusteal
5066 Comleroy Rd after Bells Line Of Rd to Kurmond PS via Comleroy Road PSBusteal
5069 Richmond North PS to Grose View PSBusteal
5076 Rouse Hill Town Centre to Gilroy College via Kellyville and Bella VistaBusteal
5077 Green Rd after Wrights Rd to Rouse Hill Anglican College via Kellyville HSBusteal
5080 Old Northern Rd after Cecil Av to Windsor Rd after Cook StBusteal
5081 Jordan Springs Blvd before McGarritys Pd to Henry Fulton PSBusteal
5085 Grose Vale Rd at Riverview St to Arndell Anglican CollegeBusteal
5086 Sackville Rd at Old Sackville Rd to Wilberforce PSBusteal
5087 Castlereagh Rd at Rickards Rd to Hobartville PS via Richmond PSBusteal
5088 Londonderry Rd before The Northern Rd to Bede Polding CollegeBusteal
5100 Canning Pl at Cattai Rd to St Paul's Grammar School via Windsor HSBusteal
5101 Windsor Station to Old Pitt Town Rd after Boundary RdBusteal
5102 Balmain Rd opp Hunter St to Oakville PS via Mcgraths HillBusteal
5103 Windsor Station to Chisholm PSBusteal
5104 Old Stock Route Rd before Saunders Rd to Lorien Novalis SchoolBusteal
5105 Boundary Rd at Old Pitt Town Rd to Maraylya PSBusteal
5106 Riverstone Station to Rouse Hill PS via William Clarke CollegeBusteal
5107 Old Stock Route Rd at Saunders Rd to Galston HS via New Hope SchoolBusteal
5108 Boundary Rd before Commercial Rd to Chisholm PS via Arndell Anglican CollegeBusteal
5109 Maguires Rd at McClymonts Rd to Oakville PS via Maraylya PSBusteal
5110 Wisemans Ferry Turnaround to Canoelands Interchange, Old Northern RdBusteal
5111 South Sydney Juniors Resort to Hawkesbury HS via Ebenezer PSBusteal
5112 Sackville Ferry Rd at Manning Rd to Hawkesbury HSBusteal
5114 Lower Portland Fire Station to Canoelands Interchange, Old Northern RdBusteal
5116 Pitt Town Rd at Charles St to Bootles La after Bathurst StBusteal
5120 Berambing Picnic Area to Kuyper Christian School via Colo HS and Kurrajong PSBusteal
5121 Putty Rd after Blaxlands Ridge Rd to Kuyper Christian SchoolBusteal
5122 Bowen Mountain Rd opp Wattle St to Colo HSBusteal
5123 Creek Ridge Rd opp Spinks Rd to Colo HSBusteal
5124 East Kurrajong Rd at Putty Rd to Colo HSBusteal
5125 Mill Rd after Bells Line of Rd to Colo HSBusteal
5126 Terrace Rd opp Beaumont Av to Colo HS via Hawkesbury HSBusteal
5127 Grose Vale Rd after Greggs Rd to Colo HSBusteal
5128 Grose Vale Rd opp Bells Rd to Colo HS via Sunnyside Cr and Enfield AvBusteal
5129 Old Bells Line Of Rd at Mason La to Colo HS via Kurrajong RdBusteal
5130 Richmond Station to Colo HSBusteal
5131 Slopes Rd at Comleroy Rd to Colo HSBusteal
5132 Nirimba Fields Public School to Rouse Hill Public SchoolBusteal
5133 Riverstone Station to Rouse Hill Anglican CollegeBusteal
5134 Rouse Hill to St Joseph's PS SchofieldsBusteal
5140 North Richmond to Hawkesbury HSBusteal
5141 Richmond Station to Richmond PS via March StBusteal
5142 Yobarnie Ave after Grose Vale Rd to Colo High SchoolBusteal
5143 Schofields Rd before Veron Rd to Galungara Public SchoolBusteal
5144 McGraths Hill to Santa Sophia Catholic CollegeBusteal
545 Macquarie Park to Parramatta via Eastwood and TelopeaBusteal
5501 Hobartville PS to Richmond Station via Richmond HSBusteal
5502 St Dominic's College to Penrith Station via Cranebrook HS and Penrith PSBusteal
5503 St Nicolas of Myra School to Penrith Station via Henry StBusteal
5504 Windsor South PS to Berger Rd at Ham StBusteal
5505 Windsor HS to Woods Rd before Mileham St via Bede Polding CollegeBusteal
5506 Tallawong Public School to Kensington Park Road, TallawongBusteal
5507 Braddock PS to St Dominic's CollegeBusteal
5508 Windsor Station to Scheyville Rd opp Pitt Town Dural Rd via St Matthews PS and Windsor PSBusteal
5509 Grose View PS to Richmond Station via Kuyper Christian SchoolBusteal
5510 Richmond Station to Putty Rd after Blaxlands Ridge Rd via Kuyper Christian SchoolBusteal
5512 Hawkesbury HS to Ski Lodge Rd at Holmes DrBusteal
5513 Arndell Anglican College to Grose Vale Rd opp Grose Wold Rd via Bowen MountainBusteal
5514 Freemans Reach PS to Glossodia PS via Boomerang Dr and Mitchell DrBusteal
5515 Glossodia PS to Freemans Reach ShopsBusteal
5516 Freemans Reach PS to Windsor HS via Windsor PS and Windsor StationBusteal
5517 Windsor HS to Colonial Dr opp Bligh Park Shopping Centre via Porpoise CrBusteal
5519 Richmond HS to Windsor PS via Porpoise CrBusteal
5520 Windsor PS to Andromeda Dr before The Northern Rd via South WindsorBusteal
5522 Windsor South PS to Londonderry PS via Bede Polding College and Bligh Park PSBusteal
5524 Braddock PS to Llandilo PS via Henry Fulton PSBusteal
5525 Llandilo PS to Londonderry Rd after Thomas RdBusteal
5527 Chisholm PS to St Marys Rd opp First Rd via Bede Polding CollegeBusteal
5528 Richmond HS to St Marys Rd before Richmond Rd via Bligh Park PS and Chisholm PSBusteal
5529 Richmond HS to Mill Rd before Roxana Rd via Richmond North PSBusteal
5532 Windsor Park PS to Windsor StationBusteal
5534 Windsor South PS to Agnes Banks via Bligh Park and RichmondBusteal
5537 Richmond HS to Londonderry Rd before The Northern Rd via Londonderry PSBusteal
5538 Londonderry PS to Warnock Rd at Castlereagh RdBusteal
5539 Richmond HS to Kurmond Rd at Spinks Rd via Windsor Station and GlossodiaBusteal
5540 St Monicas PS to Richmond Station via Francis StBusteal
5541 Freemans Reach PS to Sackville Rd after Grono Farm RdBusteal
5543 Freemans Reach PS to Glossodia PS via Kentucky Dr and Wattle CrBusteal
5544 Glossodia PS to Windsor MarketplaceBusteal
5545 Xavier College to Penrith Station via Cambridge GardensBusteal
5546 Richmond HS to St Paul's Grammar School via Londonderry PSBusteal
5547 St Paul's Grammar School to Richmond StationBusteal
5548 Hawkesbury Independent School to Comleroy Rd opp Roxana RdBusteal
5550 Hawkesbury HS to Bells Line Of Rd at Crooked LaBusteal
5556 Windsor PS to Chisholm PS via Harris St and James Meehan StBusteal
5557 Chisholm PS to Kurmond Rd opp Terrace Rd via St Matthew's PS and Wilberforce PSBusteal
5559 Hawkesbury HS to George Rd at Singleton RdBusteal
5560 Hawkesbury HS to Coobah Rd culdesac via Glossodia PSBusteal
5561 Richmond HS to Bede Polding CollegeBusteal
5562 Chisholm PS to Wilberforce PS via Richmond North PS and GlossodiaBusteal
5563 Xavier College to St Paul's Grammar School via Braddock PS and Samuel Terry PSBusteal
5564 St Paul's Grammar School to Windsor Station via Bede Polding CollegeBusteal
5566 Richmond HS to Colonial Dr opp Bligh Park Shopping Centre via Richmond PSBusteal
5569 Llandilo PS to Cranebrook Village Shopping CentreBusteal
5570 St Nicholas of Myra PS to Mileham St at Ham St via Cranebrook HSBusteal
5571 Comleroy Road PS to Kurmond PS via Hawkesbury Independent SchoolBusteal
5572 Richmond North PS to Redbank Rd at Bells Line Of RdBusteal
5573 Kurmond PS to Creek Ridge Rd opp Spinks Rd via Kuyper Christian SchoolBusteal
5574 Grose View PS to Richmond North PSBusteal
5575 Bede Polding College to Bowen Mountain Rd after Wattle StBusteal
5576 Hobartville PS to Richmond HSBusteal
5577 Richmond HS to St Pauls Grammar SchoolBusteal
5578 St Pauls Grammar School to Comleroy Rd before Oswald Park PlBusteal
5579 Arndell College to Porterringhi Rd at Sirius CtBusteal
5581 Bede Polding College to Windsor StationBusteal
5586 Arndell College to Bowman Rd opp Purcell RdBusteal
5587 Arndell College to Sanctuary Dr opp Nutwood Lane via Bligh ParkBusteal
5589 Bede Polding College to East Kurrajong Rd opp Tennyson RdBusteal
5594 Xavier College to Richmond StationBusteal
5595 Xavier College to Richmond Station via Cambridge Park PS and Penrith StationBusteal
5596 St Dominics College to Penrith Station via Henry StBusteal
5597 St Dominics College to Penrith Station via Henry StBusteal
5600 St Pauls Grammar School to Cattai Rd opp Canning Pl via Arndell CollegeBusteal
5601 St John Paul II College to Saint Johns SchoolBusteal
5602 Saint Johns School to Riverstone Station via Oakville and Mcgraths HillBusteal
5603 Bede Polding College to Windsor StationBusteal
5604 Oakhill College to Old Stock Route Rd at Saunders Rd via MaraylyaBusteal
5605 Saint Johns School to Wisemans Ferry Rd before Old Northern RdBusteal
5606 Our Lady of the Rosary PS to Meares Rd opp Crossley Av via Rousehill PSBusteal
5607 Galston HS to Pitt Town Rd at Saunders Rd via Pitt TownBusteal
5608 Bede Polding College to Pitt Town Rd before Wolseley Rd via OakvilleBusteal
5609 Pitt Town PS to Bathurst St before Bootles Lane via Maraylya and OakvilleBusteal
5610 Canoalands to Wiseman FerryBusteal
5611 Hawkesbury HS to South Sydney Juniors Resorts via Sackville NorthBusteal
5612 Hawkesbury HS to River Rd via Sackville NorthBusteal
5613 Cattai PS to Wiseman Ferry Rd after Sackville Ferry RdBusteal
5614 Maroota PS to Sackville Ferry Rd before Wisemans Ferry RdBusteal
5615 Maroota PS to Cattai PS via Sackville NorthBusteal
5616 Windsor HS to Pitt Town Rd at Ivy Av via OakvilleBusteal
5617 Cattai PS to Scheyville Rd before Dunns Rd via Pitt Town and Mcgraths HillBusteal
5620 Colo HS to Berambing Cr before Bells Line of RdBusteal
5621 Colo HS to Putty Rd after Blaxlands Ridge RdBusteal
5622 Colo HS to Bowen MountainBusteal
5623 Colo HS to Spinks Rd before Creek Rdge Rd via Glossodia PSBusteal
5624 Colo HS to East KurrajongBusteal
5625 Colo HS to Kurrajong HillsBusteal
5626 Colo HS to Richmond North PS via Freemans Reach PSBusteal
5627 Colo HS to Grose Vale Rd before Greggs RdBusteal
5628 Colo HS to Gross Vale Rd after bells RdBusteal
5629 Colo HS to Old Bells Line of Rd before Bells Line of RdBusteal
5630 Colo HS to Southee St before Londonderry Rd via Hobartville PSBusteal
5631 Colo HS to Hawkesbury Independent SchoolBusteal
5632 St Johns PS to Rouse Hill Town CentreBusteal
5633 Rouse Hill PS to Riverstone StationBusteal
5634 St John Paul II Catholic College Schofields to Rouse HillBusteal
5635 Berambing to Kurrajong Heights ShopsBusteal
5640 Bede Polding College to WilberforceBusteal
5641 Colo High School to Yobarnie Ave before Grose Vale RdBusteal
5642 Galungara Public School to South St after Veron RdBusteal
5643 Santa Sophia Catholic College to McGraths HillBusteal
6001 Forman Av before Glenwood Park Dr to St Marks CollegeBusteal
6002 Quakers Hill Station to Baulkham Hills HSBusteal
6003 Blacktown Station to St John Paul II CollegeBusteal
6004 St Michaels School to Blacktown South PSBusteal
6005 Blacktown Station to Walter Rd PSBusteal
6007 Mt Druitt Station to Colyton PSBusteal
6009 Glenwood Park Dr opp Peak St to St Marks College via Holy Cross PSBusteal
6010 St Elizabeth Nursing Home, Symonds Rd to Good Shepherd PSBusteal
6012 Blacktown Station to Nagle CollegeBusteal
6013 Riverstone Station to Riverstone PS via Schofields and Riverstone HSBusteal
6014 Carlisle Av at Dural Pl to St Clares HSBusteal
6016 Riverstone HS to Schofield PSBusteal
6017 Blacktown Station to Riverstone HS via Quakers HillBusteal
6018 Blacktown Station to Patrician Brothers College via Nagle CollegeBusteal
6019 Blacktown Station to St Andrews CollegeBusteal
6020 Arnott Rd at Ottley St to Quakers Hill HS via St John Paul II CollegeBusteal
6021 Evans Rd after Rooty Hill Rd to Eastern Creek PS via Rooty Hill StationBusteal
6022 Durham St after Carlisle Av to Rooty Hill HS via MinchinburyBusteal
6023 Mount Druitt Station to Good Shepherd PS via ShalveyBusteal
6024 Carlisle Av at Dural Pl to Colyton PS via Lethbridge ParkBusteal
6025 Mcfarlane Dr at Barossa Dr to Michinbury PS via Fleurs StBusteal
6026 St John Paul II College to St Andrews PS via Quakers HillBusteal
6027 Conrad Rd after Stanhope Pwy to St John Paul II CollegeBusteal
6028 St Marks College to Glenwood HSBusteal
6029 Quakers Hill Uniting Church to St Marks CollegeBusteal
6030 Quakers Hill Parkway at Eastern Rd to Quakers Hill PSBusteal
6031 Blacktown Station to Quakers Hill HSBusteal
6032 Archer St after Reservior Rd to Blacktown Boys HSBusteal
6033 Blacktown Station to Nagle CollegeBusteal
6034 Kildare Rd after Balmoral St to Evans HSBusteal
6035 Blacktown Station to Hambledon PS via Acacia GardensBusteal
6036 Glenwood HS to John XXIII PSBusteal
6037 Mt Druitt Station to Blacktown Boys HSBusteal
6038 Sentry Dr after Quakers Hill Parkway to Parklea PS via GlenwoodBusteal
6040 Blacktown Station to Evans HSBusteal
6041 Alwyn Lindfield Reserve, Glenwood Park Rd to St John Paul II CollegeBusteal
6042 Glenwood Park Dr before Peppercorn Pl to Oakhill CollegeBusteal
6043 Durham St after Nelson St to St Agnes HSBusteal
6044 Archbold Rd opp Salvation Army Industrial to St Aidans SchoolBusteal
6046 Mount Druitt Station to Bethel Christian SchoolBusteal
6047 Yarramundi Dr opp Hoyle Dr to St Andrews PSBusteal
6048 Shalvey PS to St Agnes HSBusteal
6049 Bungalow Rd at Aaron Pl to St Clares HSBusteal
6050 Cobham St after Vardys Rd to St John Paul II CollegeBusteal
6051 Quakers Hill Parkway after Eastern Rd to Blacktown Boys HSBusteal
6052 Carnavon Rd at Vine St to St Josephs PSBusteal
6053 Barnier Dr opp Wakely Av to Rousehill CollegeBusteal
6054 Rouse Hill to Schofields PSBusteal
6055 Blacktown Station to Nagle College via Tyndale Christian SchoolBusteal
6056 Carlisle Ave after Jersey Rd to St Agnes HSBusteal
6057 Woodcroft Dr opp Woodcroft Field to St John II College via Dean ParkBusteal
6058 The Ponds Bvd at Schofields Rd to Glenwood HSBusteal
6059 Adrienne St before Azzopardi Av to St Agnes HSBusteal
6060 Daniels Rd opp Shinnick Dr to St John Paul II CollegeBusteal
6061 The Ponds Bvd at Schofields Rd to St Marks CollegeBusteal
6062 Schofields to Wyndham CollegeBusteal
6063 Bali Dr opp Morell Cr to Quakers Hill PSBusteal
6064 Blacktown Station to Evans HSBusteal
6065 Evans HS to St John Vianneys PS via Blacktown West PSBusteal
6066 Yarramundi Dr opp Hoyle Dr to Blacktown Boys HSBusteal
6067 Golding Dr before Grayson Av to Good Shepherd PSBusteal
6068 Glendenning to St Andrew's PSBusteal
6070 Shalvey to Plumpton HSBusteal
6071 Mount Druitt to St Francis of Assisi PSBusteal
6072 Glendenning to Quakers Hill HSBusteal
6073 Colebee to Richard Johnson College Oakhurst CampusBusteal
6075 Quakers Hill East to Rouse Hill Anglican CollegeBusteal
6076 Kings Langley to Terra Sancta College Schofields CampusBusteal
6077 Quakers Hill Station to Quakers Hill HSBusteal
6078 Merriville Rd at Perfection Ave to The Ponds HSBusteal
6080 Stanhope Pkwy opp Stanhope Gardens Tennis Court to The Ponds HSBusteal
6081 Sentry Rd before Parklea Dr to The Ponds HSBusteal
6083 Conrad Rd opp Oakvale Av to The Ponds HSBusteal
6084 Perfection Av opp Bentwood Tce to The Ponds HSBusteal
6088 Rouse Hill Town Centre to Rouse Hill Anglican CollegeBusteal
6089 Rouse Hill Station to Kellyville HSBusteal
6090 Rouse Hill Station to William Clarke CollegeBusteal
6091 Riverstone Station to Australian Christian CollegeBusteal
6095 Acacia Gardens to The Ponds HSBusteal
6096 Plumpton Marketplace to Mt Druitt StationBusteal
6097 Nirimba Fields to Quakers Hill High SchoolBusteal
6128 Frontier Ave to Northbourne PS via Kaluta AveBusteal
6129 Annan Ave to Northbourne PS via Agland AveBusteal
6131 Dean Park to Marsden Park Anglican via ColebeeBusteal
6500 Rouse Hill Anglican College to Rouse HillBusteal
6501 St Johns PS to Knudsen ReserveBusteal
6502 Rouse Hill Anglican College to Quakers HillBusteal
6503 Evans HS to Blacktown StationBusteal
6504 St Andrew's PS to Doonside StationBusteal
6505 Richard Johnson Anglican School to EmertonBusteal
6506 St Clare's HS to Lethbridge ParkBusteal
6507 Sacred Heart PS to Carlise Av opp Dural Pl via ShalveyBusteal
6509 St Michael's PS to Lock St before Ross StBusteal
6510 St John Paul II College to MarayongBusteal
6512 Evans HS to Kilcare Rd before Balmoral StBusteal
6513 Evans HS to Blacktown StationBusteal
6514 Blacktown HS to Adrienne St before Lamb StBusteal
6515 Rooty Hill HS to Minchin Dr before Great Western HwyBusteal
6517 Sacred Heart PS to Minchin Dr before Great Western HwyBusteal
6520 Blacktown Station to Blacktown Station via Quakers HillBusteal
6521 Tyndale Christian School to Blacktown StationBusteal
6522 St Aidans PS to Rupertswood Rd opp Charlotte Rd via MinchinburyBusteal
6523 St Andrews PS to Blacktown StationBusteal
6524 Plumpton HS to Dean ParkBusteal
6525 St Johns PS to Blacktown Station via Acacia GardensBusteal
6526 St Mark's College and John XXIII PS to Quakers HillBusteal
6527 St Joseph's PS to The Ponds via GlenwoodBusteal
6528 Rouse Hill Anglican College to Blacktown Station via SchofieldsBusteal
6529 Evans HS to Blacktown StationBusteal
6530 Good Shepherd PS to Mt Druitt Station via ShalveyBusteal
6531 Baulkham Hills HS to Adrienne St at Martin Pl via Quakers HillBusteal
6532 St John Paul II College to SchofieldsBusteal
6533 Schofields PS to Guntawong Rd opp Tallawong Rd via Marsden Park PSBusteal
6534 St John Paul II Catholic College Nirimba to RiverstoneBusteal
6536 St Andrews College to Quakers HillBusteal
6538 St John Paul II College Schofields to Mount Druitt via Hassall GroveBusteal
6539 St John Paul II College Schofields to WoodcroftBusteal
6540 Quakers Hill HS to Blacktown StationBusteal
6541 Evans HS to Kildare Rd after Ash StBusteal
6543 St Agnes HS to Golding Dr before Armitage DrBusteal
6544 St Agnes Catholic High School to Plumpton, Power RdBusteal
6545 Quakers Hill HS to Glendenning via William Dean PSBusteal
6546 St Clare's HS to Marayong PS via WoodcroftBusteal
6547 St John Paul II College to Blacktown StationBusteal
6548 St John Paul II College to Robert before Garfield Rd WBusteal
6549 St Johns PS to Riverstone StationBusteal
6550 St John Paul II College Schofields to Quakers Hill StationBusteal
6551 St Mark's College and John XXIII PS to Kings Langley ShopsBusteal
6553 St Josephs PS to Blacktown StationBusteal

Showing 500 of 10,208 routes. The current scorecard JSON contains the complete route list.

List every stop
  • Theodore PS Lawrence Wackett Cr
  • Hurtle Av Opp Bonython PS
  • Bonython PS Hurtle Av
  • Calwell Park And Ride Johnson Dr
  • Johnson Dr Opp Calwell Park And Ride
  • Gilmore PS Heagney Cr
  • Erindale College McBryde Cr
  • MacKillop College McBryde Cr
  • Wheeler Cr After Wanniassa HS
  • Fincham Cr After Morrissey St
  • Fincham Cr After 1st DeGraves Cr
  • Forlonge St Before Gair Pl
  • Royal Adelaide Hospital, North Tce
  • Sternberg Cr After Comrie St
  • Wanniassa Hills PS Langdon Av
  • Sternberg Cr Wanniassa Primary School
  • Corlette Cr Opp Monash PS
  • MacKillop College MacKinnon St
  • Wheeler Cr Opp Wanniassa HS
  • Echuca Coach Terminal, Heygarth St
  • McBryde Cr Opp Trinity Christian School
  • Heidelberg St Lanyon High School
  • Heidelberg St St Clare Of Assisi PS
  • Caroline Chisholm Senior School Hambidge Cr
  • St Clares College McMillan Cr
  • St Edmunds College McMillan Cr
  • Hanlon Cr Fadden PS
  • Marist College School Grounds
  • Melrose HS Marr St
  • Holy Family PS Castleton Cr
  • St Anthony's PS School Grounds
  • Robinvale Station, Bromley Rd
  • Seymour Station, Railway Pl
  • City Interchange Plt 5
  • Benalla Station, Coach Stop
  • Benalla Station, Coach Stop
  • Wangaratta Station, Norton St
  • St Monicas PS Moynihan St
  • Canberra Av Opp Woods Lane
  • Canberra Av At Woods Lane
  • Cobram Station, Punt Rd
  • Newcastle St After Isa St
  • Mildura Station, Coach Stop
  • IKEA Majura Rd
  • Argyle Pl At Lower Fort St
  • Exhibition Centre, Darling Dr
  • Central Grand Concourse, Light Rail Trackwork
  • Art Gallery Of NSW, Art Gallery Rd
  • Central Station, Forecourt, Coach Bay 5
  • Central Station, Forecourt, Coach Bay 7
  • Central Station, Forecourt, Coach Bay 9
  • Walsh Bay Arts Precinct, Hickson Rd
  • Sussex St At Erskine St
  • Walsh Bay Arts Precinct, Hickson Rd
  • Central Station, Forecourt, Coach Bay 8
  • Lang Park, York St
  • QVB, York St, Stand E
  • Clarence St At Council Pl
  • QVB, Market St, Stand F
  • Wynyard Station, Clarence St, Stand R
  • Darling Harbour, King St Wharf 2
  • Art Gallery Rd Opp Art Gallery Of NSW
  • Circular Quay, Alfred St, Stand A
  • Towns Pl After Hickson Rd
  • Hyde Park, Park St, Stand B
  • Haymarket Light Rail Stop, Rawson Pl
  • Hyde Park, Elizabeth St, Stand A
  • Haymarket Light Rail
  • Chinatown Light Rail
  • ENT George St SE
  • ENT George St SW
  • ENT George St NE
  • ENT George St NW
  • Level Crossing S
  • Level Crossing N
  • Central Station, Railway Square, Stand J
  • QVB
  • ENT George St NW
  • ENT George St NE
  • Level Crossing N
  • Level Crossing S
  • Mez QVB
  • Mez Market St
  • Bridge Street Light Rail
  • ENT George/Gosvenor
  • ENT George/Bridge
  • ENT George Op Bond
  • ENT George/Bond
  • Level Crossing N
  • Level Crossing S
  • Roslyn Packer Theatre, Hickson Rd
  • Sussex St Before Erskine St
  • Martin Place Station, Castlereagh St, Stand H
  • Clarence St Opp Barrack St
  • Hickson Rd Opp Roslyn Packer Theatre
  • Central Station, Eddy Av
  • Chifley Tower, Bent St
  • Circular Quay, Alfred St, Stand B
  • Circular Quay
  • Capitol Square Light Rail
  • ENT Hay St North
  • ENT Hay St South
  • Level Crossing
  • Paddy's Markets Light Rail
  • ENT Hay St Nth Side
  • ENT Hay St Sth Side
  • Level Crossing
  • Exhibition Centre Light Rail
  • ENT Darling Dr
  • ENT Pyrmont St
  • ENT IanTAC PyrRd
  • Level Crossing
  • Convention Light Rail
  • ENT1 Darling Dr East
  • ENT2 Darling Dr East
  • Level Crossing
  • Concourse E
  • Concourse W
  • Bus To Train/Ferry
  • Acc To CNC W
  • LR To Train/Ferry
  • Acc To Wharf 2
  • Acc To Wharf 3
  • Acc To Wharf 4
  • Acc To Wharf 5
  • Acc To Wharf 6
  • Acc To Light Rail E
  • Acc To E Pontoon
  • Acc To CNC E
  • ESC E To P1
  • ESC E To P2
  • STR To P1/2
  • LFT To P1
  • LFT To P2
  • ESC W To P1
  • ESC W To P2
  • ENT Alfred St E
  • ENT Alfred St W
  • ENT Light Rail
  • ENT Alfred St SW
  • ENT Wharf 6
  • ENT Eastern Pontoon
  • Level Crossing
  • Wynyard Station, Carrington St, Stand A
  • Circular Quay, Wharf 2, Side A
  • Central Station, Forecourt, Coach Bay 1
  • Circular Quay, Wharf 2, Side B
  • Circular Quay, Wharf 3, Side A
  • Circular Quay, Wharf 3, Side B
  • Clarence St After Market St
  • Wynyard Station, Clarence St, Stand Q
  • Circular Quay, Wharf 4, Side A
  • Circular Quay, Wharf 4, Side B
  • Circular Quay, Wharf 5, Side A
  • Sussex St After King St
  • Circular Quay, Wharf 5, Side B
  • Wynyard Station, Carrington St, Stand B
  • Wynyard Station, Clarence St, Stand S
  • Martin Place Station, Elizabeth St, Stand G
  • Circular Quay, Wharf 6, Side A
  • Circular Quay, Wharf 6, Side B
  • Barangaroo, Wharf 1, Side A
  • Barangaroo, Wharf 1, Side B
  • Barangaroo, Wharf 2, Side A
  • Barangaroo, Wharf 2, Side B
  • Wynyard Station, Carrington St, Stand C
  • Central Station, Forecourt, Coach Bay 3
  • Central Station, Forecourt, Coach Bay 10
  • Clarence St After Druitt St
  • Town Hall, Park St, Stand H
  • Wynyard Station, Carrington St, Stand D
  • Town Hall, Park St, Stand K
  • Paddy's Markets Light Rail
  • Paddy's Markets Light Rail
  • Capitol Square Light Rail
  • Capitol Square Light Rail
  • Central Grand Concourse Light Rail
  • Wynyard Station, Carrington St, Stand E
  • Pyrmont Bay Wharf
  • Convention Light Rail
  • Convention Light Rail
  • Exhibition Centre Light Rail
  • Exhibition Centre Light Rail
  • Shark Island Wharf
  • Wynyard Station, Carrington St, Stand F
  • Darling Harbour, King Street Wharf
  • Circular Quay, Eastern Pontoon
  • Shark Island Wharf
  • Town Hall House, Druitt St, Stand N
  • Martin Place Station, Elizabeth St, Stand E
  • Wynyard Station, York St, Stand H
  • Wynyard Station, Clarence St, Stand T
  • Central Station, Forecourt, Coach Bay 2
  • Martin Place Station
  • Central Station, Forecourt, Coach Bay 4
  • Concourse N
  • Upper Unpaid Conc
  • Metro Conc S
  • Conc North
  • Upper CNC Sth
  • ESC To Metro
  • LFT To Metro
  • Acc To P3/4 S
  • LFT/ESC To Mezz
  • Mezz
  • ESC To Conc S
  • ESC E To Conc
  • LFT To Street
  • Acc To Conc S
  • LFT/ESC To Nth Twr
  • LFT To P1/2
  • ESC To P3/4 S
  • LFT To P3/4 S
  • Acc To P3/4 Mid
  • Acc To Nth Twr
  • Acc To LFT/ESC
  • LFT To Conc N
  • ESC To Conc N
  • Acc ESC To Conc N
  • Acc To Conc N
  • LFT Acc To P3/4 N
  • Upper CNC Nth
  • ESC Acc To P3/4 N
  • STR To Elizabeth E
  • Acc To Concourse
  • Acc To Upper Conc
  • ESC To P1/2
  • ESC E To P1/2
  • P1/2 Metro Connect
  • STR Macquarie W
  • STR Phillip St SE
  • STR Phillip St NE
  • LFT Phillip St NE
  • STR Elizabeth E
  • ENT Elizabeth S
  • ENT Castlereagh S
  • ENT Elizabeth N
  • ENT Castlereagh N
  • TXI Phillip St
  • Wynyard Station, York St, Stand J
  • St James Station, Elizabeth St, Stand B
  • Central Station, Forecourt, Coach Bay 6
  • Wentworth Av After Elizabeth St
  • Museum Station, Elizabeth St, Stand B
  • Central Station, Platform 1
  • Central Station, Platform 2
  • Central Station, Platform 3
  • Central Station, Platform 4
  • Central Station, Platform 5
  • Central Station, Platform 6
  • and 170819 more (see the full list on the map or in the GeoJSON)

Over time

This is the first scorecard for this agency. A trend and a "what changed" summary appear here once it has been checked more than once.

Everything we checked

28 findings, ordered by severity.

Show every finding
  • Error6 instances

    Some trips have stop times whose distances along the route go backwards.

    Apps can show transit vehicles jumping backwards or mis-order stops.

    Fix: Re-generate shape distances in your export; flag to your vendor if it persists. (Usually an export-tool fix, not hand editing.)

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

  • Error4 instances

    Number out of range (flagged by the MobilityData validator).

    See the linked rule for what this affects.

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

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

  • Error1 instance

    Block trips with overlapping stop times (flagged by the MobilityData validator).

    See the linked rule for what this affects.

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

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

  • Error1 instance

    Point near origin (flagged by the MobilityData validator).

    See the linked rule for what this affects.

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

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

  • Warning168344 instances

    168344 of 171070 stops don't say whether a wheelchair user can board there.

    Riders who use wheelchairs can't plan a trip when accessibility is marked 'unknown'; apps show no information at all.

    Fix: Set wheelchair_boarding to 1 (accessible) or 2 (not accessible) for every stop. A field survey can start with the busiest stops. (A column in stops.txt; your scheduling software likely has it.)

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

  • Warning10167 instances

    Unexpected enum value (flagged by the MobilityData validator).

    See the linked rule for what this affects.

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

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

  • Warning7442 instances

    Missing bike allowance (flagged by the MobilityData validator).

    See the linked rule for what this affects.

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

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

  • Warning3719 instances

    Some scheduled trips move faster between stops than a transit vehicle can.

    Usually a typo'd stop time; riders get arrival times no transit vehicle can meet.

    Fix: Check the flagged stop times for transposed minutes. (A few minutes per flagged trip.)

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

  • Warning617 instances

    Some stops exist in the feed but no trip ever stops at them.

    Riders may walk to a stop where no transit vehicle 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)

  • Warning346 instances

    346 of 205298 trips have no headsign, the text that tells riders where the transit vehicle is going.

    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)

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

  • Warning68 instances

    Some route long names repeat the route's short name inside them.

    Apps show both names together, so riders see the number twice, like '5 5 Downtown'.

    Fix: Drop the short name from route_long_name and keep the long name descriptive, like 'Downtown via 5th Ave'. (One field per flagged route.)

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

  • Warning29 instances

    Between two distant stops, the times imply a speed no transit vehicle reaches.

    A rider gets a trip plan that cannot happen. Live systems then report delays that are not real.

    Fix: Check the two stop times for a wrong digit first. Then check whether a stop sits at the wrong coordinates, or a stop between them is missing. (Minutes per flagged trip once you open it.)

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

  • Warning10 instances

    Some values have extra spaces at the start or end.

    A stray space can break a match, so a stop or route may fail to link across files.

    Fix: Trim leading and trailing spaces on export. The scorecard's auto-fixed copy already does this. (Usually one export setting.)

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

  • Warning2 instances

    Stop has too many matches for shape (flagged by the MobilityData validator).

    See the linked rule for what this affects.

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

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

  • Warning1 instance

    Two or more routes share the same name.

    Riders can't tell the routes apart in apps.

    Fix: Give each route a distinct short or long name. (One field per route.)

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

  • Warning1 instance

    Equal shape distance diff coordinates distance below threshold (flagged by the MobilityData validator).

    See the linked rule for what this affects.

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

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

  • Warning1 instance

    Some route lines list the same point twice in a row.

    Repeated points don't hurt riders, but they can skew distance math and hint at a shaky export.

    Fix: Turn on shape cleanup in your export tool, or drop the repeated points from shapes.txt. (Usually one export setting.)

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

  • Warning1 instance

    A file GTFS asks for (usually feed_info.txt) is missing.

    feed_info.txt tells apps who publishes the feed and when it expires; without it nobody is warned before data goes stale.

    Fix: Add feed_info.txt with publisher name, URL, language, and feed_start_date/feed_end_date. (One small file, set once in export settings.)

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

  • Warning1 instance

    Some route colors don't contrast with their text color.

    Route badges get hard to read, most of all for riders with low vision.

    Fix: Pick a darker/lighter route_text_color for the flagged routes. (One field per route.)

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

  • Warning1 instance

    Many of the feed's trips don't run at all in the next 7 days.

    It usually means old service periods are still in the export, making the feed bigger and harder to check.

    Fix: Trim past service periods the next time you export. (One setting in most export tools.)

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

  • Warning1 instance

    feed_info.txt is missing its start/end dates (the file itself is absent)

    Apps and this scorecard can't warn anyone before the feed goes stale without stated validity dates.

    Fix: Add feed_info.txt with feed_start_date and feed_end_date to your export. (Two fields, set once in export settings.)

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

  • Warning1 instance

    The feed contains no fare information.

    Riders see 'fare unknown' in trip planners and can't budget their trip; visitors are most affected.

    Fix: Add fare_attributes.txt (or Fares v2 files) with your fare structure. If your service is fare-free, ask to have it marked fare-free instead. (A small file for most flat-fare systems.)

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

  • Info6692 instances

    This feed maps paths inside its stations. It includes step-free routes with an elevator.

    Riders can be routed through the station, and wheelchair users can see whether a step-free route exists.

    Fix: No action needed. (None.)

    Finding code: scorecard_station_pathways

  • Info435 instances

    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)

  • Info4 instances

    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

    The feed includes a file that is not part of the GTFS spec.

    Apps ignore files they don't know, and a stray file can hide a misspelled standard file name.

    Fix: Check the flagged file name for a typo of a standard GTFS file. Remove it if it is a vendor extra. (A quick look at the flagged file.)

    Finding code: unknown_file · 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 Not yet

Two requirements remain for this feed to earn the conformance mark. 4 validator errors to resolve. States wheelchair access on 2% of stops and 100% of trips; the mark needs 90% of each.

Valid Not yet
4 validator errors to resolve.
Current Met
Service data covers the next 90 days.
Accessible Not yet
States wheelchair access on 2% of stops and 100% of trips; the mark needs 90% of each.

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.

  • 617 of 90606 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.

Clears the Google and Apple Maps four-week coverage bar. This feed has 90 days of service ahead, clearing the four-week (28-day) window Maps asks for. The feed also carries 12 validator errors, the other thing Maps checks at onboarding; the findings below name each fix.

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 0 / 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 85 / 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 53 / 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.

Transport for NSW (Greater Sydney) GTFS data quality grade: F

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/transport-for-nsw-greater-sydney/2026-09-05.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-05. 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.