I've gotten a couple complaints about OneBusAway sometimes missing buses downtown. The bus will arrive at the stop like it's supposed to, but there will be nothing listed on OneBusAway. Pretty frustrating, I agree. It's taken me a while to track down the issue, but I figured I'd try to describe what is going on.
The short of it:
For routes that enter downtown as one route and continue from downtown as another route (an interlined or through route, according to my more transit savvy friend), the transit database from Metro that feeds OneBusAway often defines that change-over happening in a different place than where is happens in practice on the actual bus. Often OneBusAway is actually listing the bus you care about, but it's labeled as some other route that you wouldn't normally recognize.
I'm working on a fix, but it's a pretty complex issue. For now, I'm working to identify all the routes where this is an issue. If you know of a specific route where this is an issue, feel free to let me know in the comments.
The long of it (only real transit nerds may want to read past this point):
Consider route 26 heading from downtown to Greenlake. You can see the route map here:
The 26 serves four major stops along 3rd ave: Yesler Way, Columbia St, Seneca St, and Pike St. You can see the full schedule for the 26 at 3rd and Pike here:
http://onebusaway.org/where/standard/schedule.action?id=578 (this page take a while to load...)
There are a huge number of trips for the 26 at 3rd and Pike. Now compare that to 3rd and Columbia here:
There are hardly any trips for the 26. What's going on? If we look at the 4:05 pm trip at 3rd and Pike:
We see that the trip starts at 3rd and Pike, but is preceded by Route 42:
So this is what is happening. A large number of outbound 26's from downtown are actually inbound 42's that switch to 26's along 3rd Ave. According to Metro's transit database, that switch happens at 3rd and Pike, after the bus has already passed the other stops along 3rd Ave. The problem is that this is not what actually happens in the real-world. When that 42 pulls onto 3rd Ave, the driver has already switched the bus' sign to read Route 26. In addition, all the stop kiosk signs along 3rd Ave list the 26 as well. For example:
It actually make sense that the 42 should change into the 26 before it goes down 3rd Ave, since all the commuters are looking for the 26 to take them home. If they had to remember that the 42 is going to switch into the 26 in a few stops, it'd be mostly confusing.
Ok so after all that exposition, here is the real problem. Even though the buses and stop kiosks along 3rd Ave are doing the "right" thing, the database does not match what's going on in reality. Thus, when a rider looks at OneBusAway at 3rd and Columbia to figure out when their 26 is going to arrive, OneBusAway will not mention the 26 but instead will list the 42. The rider is confused and thus bad things.
To make matters worse, it's only a problem for some of the 26s. If the 26 isn't preceded by a 42, it actually does the right thing and is listed as the 26 for the full length of 3rd Ave in the database.
This is not just a problem with the 26. A number of routes do a similar thing of changing route signs right before they get on 3rd, where the database shows them changing at the end of 3rd.