by BRIAN FERRIS and CAITLIN BONNAR

When I have friends visiting for the holidays, I like to take them on a “Best of Seattle” transit tour. We could ride the route 98 to Lake Union Park or maybe catch Link to “St Light Rail & S Edmunds St” station for lunch. Even though it’s the holidays, I’m sure I can trust all these scheduled arrivals I see in my favorite transit app.

What’s that? You’ve never heard of the 98? Did Sound Transit secretly add a new in-fill station when you weren’t paying attention? Or maybe you spent the holidays like me, waiting for buses that were actually running late or not at all.

If you are using any one of the apps most Seattle riders use to navigate our transit system on a daily basis, I’ll forgive your confusion. Apps like OneBusAway, Transit App, Google Maps, and others are all powered by transit data from local agencies and increasingly, that data is just plain wrong.

Route 98? Better known as the SLU Streetcar. “St Light Rail & S Edmunds St” Station? Try Columbia City Station instead. Yet these are the names King County Metro publishes in the official schedule data they release to developers. Issues with holiday schedules and real-time data have been a problem for years and this season was no exception [Ed. note; Sound Transit says it has now resolved the holiday schedule issue.]. Even worse, there have been persistent issues with Metro real-time data, especially near the start of routes, since the upgrade to GPS years ago.

A transit agency might be tempted to dismiss these issues as minor, especially compared to the challenges of keeping buses running under perennial budget pressures. However, at a time when service is in flux and traffic snarls even the most frequent routes, timely and accurate rider information is critical. Given a choice between accurate real-time info and a slight reduction in headway on their favorite routes, I think many riders would actually pick real-time.

Does Metro lack the resources to fix these issues? They did find the time to put out a new trip planning app last week… which has the all same data problems (try taking the 599 to the airport). Why is Metro investing in its own app when there are plenty of existing transit apps already used by riders, apps that would work even better if Metro cleaned up their data?

Or perhaps Metro could just share more data in the first place. Ever notice that TriMet’s app page has 10x the number of entries as Metro’s equivalent? Unlike Metro, our neighbors to the south in Portland have opened up their real-time transit data to developers and a diverse app ecosystem has blossomed as result. Metro has a GTFS-realtime feed that they could open tomorrow (Brian should know, he wrote it). What’s holding them back?

At a fundraiser last year, Dow Constantine issued a challenge. “To all you hackers toiling away in your dorm room writing the next version of OneBusAway: we’re coming for you.” To Dow, I challenge back: open your data and make its quality a priority. Your own app will benefit, new and better apps will come right back at you, and the real winners will be Seattle-area riders.

Action Items for Transit Agencies

All Agencies:

Communicate honestly and regularly with riders and developers about the state of your transit data, both schedule and real-time.

King County Metro:

Make your GTFS-realtime feed available to developers.

Fix issues with Link and Seattle Streetcar in your GTFS feed.

Fix issues with real-time, especially at route endpoints, in your AVL system.

Publish your service alerts in an open format like GTFS-realtime.

Sound Transit:

If Metro won’t publish quality schedule data with correct station names for Link, take ownership and publish it yourself.

City of Seattle:

If Metro won’t publish quality schedule data for Seattle Streetcar, take ownership and publish it yourself.

Community Transit

Publicly publish your GTFS feed for developers.

Brian Ferris is the original creator of OneBusAway and currently employed at Google working on Maps. Caitlin Bonnar is the current maintainer of the OneBusAway iPhone app.