From time to time, someone will tweet a complaint to @TTCHelps about a very long wait for a bus and copy me into the thread. This can set off an exchange which, to be diplomatic, can involve varying claims about what is actually happening.
For as long as anyone can remember, the TTC has a standard response to such complaints: that traffic congestion or some other transient event beyond their control is responsible. More recently a few new lines have been added to their repertoire including:
- Due to inadequacies in the schedule, buses cannot stay on time, but this will all be fixed in a coming revision.
- There are “run as directed” buses which are used to fill gaps in service and respond to problems of overcrowding. These buses are far less numerous than some at the TTC have claimed, and they are completely invisible to service tracking apps.
- Riders concerned about crowding can refer to transit monitoring apps to see if an uncrowded bus is coming down the route. Of course if you’re on a streetcar, they don’t have passenger counters and there is no online crowding info for them, in spite of ads for this service up and down Spadina Avenue.
On top of this, the TTC produces monthly on time performance stats that purport to show that, overall, things are not too bad. They have “service standards” about what constitutes an appropriate quality of service, and they hit them to some degree some of the time, on average.
This is a long-standing response of “not our problem”, backed up by “we will fix the schedule eventually”, “we are meeting our standards most of the time”, and “riders can find uncrowded buses, so what’s the problem anyhow”.
This is cold comfort to riders waiting for service.
Problems of irregular service and crowding on the TTC predate the pandemic, and were starting to attract attention by the politicians who claim to set policy and could not square complaints from riders and constituents with management reports. Then the world changed.
But the world is trying to change back, and with it the desire for transit service to actually attract riders. The time is overdue for attention to quality of service as a basic marketing tool. A shop window does not attract customers with a photos of products that might arrive soon, maybe.
Bathurst Bus Scheduled Service
In January 2021, weekday service on 7 Bathurst changed from regular-sized to articulated buses (12m to 18m), and the January 2019 schedule was restored. As we will see later, there are still several 12m buses running on Bathurst, but on schedules that assume 18m capacity.
In May 2021, peak period service was trimmed in response to actual demand, and the service in effect until Friday, September 3, was to operate every 10 minutes throughout the day (see table below). Note that the schedule includes an allowance for construction of Forest Hill Station on Line 5, but actual operating data charted later in this article shows that this is no longer a source of delay.
The January schedule with slightly more frequent service will return on Tuesday, September 7 as part of the TTC’s overall restoration of service.
On Friday afternoon, September 3, 2021, a tweet popped up asking the perennial question “where’s my bus” from a rider waiting at Glencairn and Bathurst. The 7 Bathurst is a notoriously unreliable service even though, irony of ironies, it serves the TTC’s Hillcrest complex.
This piqued my curiosity, and I turned to Transsee, a site run by Darwin O’Connor, where one can view route tracking data in real time. For the TTC, one can access detailed reports for streetcar routes free of charge, but for buses one must be a “premium” user, something that can be had very inexpensively. [Full disclosure: O’Connor gives me premium access free as a courtesy because of the work I have done on route analysis that inspired several of his site’s features.]
Among the charts one can generate is a real time service graph showing movement of vehicles. This allows one to immediately see what is happening on a route including the recent history leading up to whatever the problem of the moment might be. I started watching 7 Bathurst and was appalled by what I saw.
Here is a chart of the service as it appeared mid-afternoon on September 3. In this chart, “north” is at the top (Steeles) and “south” is at the bottom. Note that just after 1 pm there is a gap of almost one hour in service southbound from Steeles. Except for one bus that comes into the early part of the gap north of Lawrence just before 2 pm, the gap persisted over the length of the route.
(For readers unfamiliar with these charts, time runs horizontally from left to right, and distance along the vertical scale. The space between lines is proportional to the length of the headway, i.e. the wait for a bus. The slope of the line is proportional to speed with slowdowns indicated where lines run more horizontally than vertically.)
(Updated September 6 at 10:40 am: Darwin O’Connor has tweaked his software to keep the orientation of these charts more consistent, and so I have replaced the original chart here which had south and north reversed from their conventional map alignment.)
How, exactly, did this happen, and how did service evolve for the rest of the day? In retrospect we can see the whole day, although I have broken it into two overlapping charts for clarity.
8:00 am to 7:00 pm
- Bus 8392 (blue) disappears from service at Steeles at about 8:30 am.
- This creates a small gap ahead of bus 9002 (lime green).
- Bus 9012 (dark blue) disappears from service near Wilson at about 8:40 am northbound.
This is likely the end-of-peak period transition from a 14-bus to a midday 13-bus service. (7 Bathurst operates from Wilson Division.)
- This run is supposed to stay out all day, and reappears briefly as 8141 at about 10:00 am, later as 9002 and finally 8130. Thanks to Darwin O’Connor for sorting this out.
- The obvious question is why did it take four separate buses to operate what is supposed to be one continuous run on the schedule.
- Bus 9002 appears to go out of service southbound at Sheppard at about 9:12. It reappears just before 2 pm just north of Lawrence. This leaves a gap which travels south to Bathurst Station.
- Bus 8141 (red) appears southbound at Davenport partly filling the gap left by 9002. It operates not quite a full round trip and disappears southbound at Glencairn just after noon leaving a gap.
- This gap is further widened by the disappearance of bus 8396 (dark green) northbound at Lawrence at about 12:45.
- At this point, the gap is about 45 minutes wide, and by the time it comes back south from Steeles, it is almost one hour wide.
- Bus 9002 rejoins the service southbound just before 2 pm, but even with this, the gap northbound from Bathurst Station behind it is 40 minutes wide.
- At roughly 2 pm, bus 9002 leaves service northbound at Lawrence and is replaced by 9019 northbound at Wilson.
- Bus 8130 (orange) enters service northbound at St. Clair just before 3 pm reducing the gap slightly, but by now there is a pack of four buses travelling together northbound. One of these will short turn at Finch, and the rest will return southbound in a pack.
- A 40 minute gap travels south from Steeles just after 3:30 pm.
- Bus 8160 (dark orange) enters service northbound at St. Clair just after 4 pm.
- There is a 30 minute gap northbound from Bathurst Station starting at about 4:45.
This is an example of how service gaps can ricochet back and forth on a route. When the scheduled headway is every 10 minutes, one missing bus, or a pair running together can make for a long wait for riders and corresponding onboard crowding.
Note also that several of the buses used on the route are not articulated vehicles (9000 series) and they will be more crowded simply by virtue of their size. The service is scheduled for 18m vehicles, but several vehicles are only 12m. Assignment of the wrong vehicle type is a chronic problem on the TTC, and it bedeviled service on 501 Queen when the ALRV streetcars were introduced.
3:00 pm to Midnight
The chart below overlaps the first four hours of the one above for continuity. From 3 pm onward, buses are travelling in packs of 2 or 3. Even when they are spaced out leaving Steeles southbound, the groups do not take long to re-form and this continues until about 9 pm. At that point a cluster of buses that has travelled together for 6 hours finally breaks apart. Service thereafter is fairly regular.
Looking at Other Days
I began by looking at two previous Fridays to see how common this problem might be.
Friday, August 20, 2021
In August 20, although there were no immense gaps, buses do commonly run in groups of two or more for an extended period. The largest gap northbound from Bathurst Station is just under half an hour long between 2 and 3 pm.
Friday, August 27, 2021
On August 27, there is a nearly half-hour gap northbound at about 2 pm.
Wednesday, September 1, 2021
Only two days before the tweet that started this analysis, the TTC achieved a huge gap northbound from Bathurst Station at about 5:30 pm. There was no bus for over an hour thanks to a gap that travelled the length of the route from Steeles to Bloor.
Thursday, September 2, 2021 is only slightly better with a 45 minute gap northbound from Bathurst Station starting at 6:24 pm.
The No-Short-Turn Rule, Gaps and Crowding
A keen observer of these charts will note that it is rare that a bus short turns before reaching the terminus. This is due to an operating practice introduced in recent years that there shall be no short turns. In theory, schedules are adequate for almost all trips to run end-to-end in the allotted time including a break for the driver. In the real world some schedules are too tight and others are very lax to the point that the TTC has started to trim some of the fat.
When a gap forms, for whatever reason, short turns are (or should be) used to fill the hole. However, taken to excess short turns can create service reliability problems on the outer ends of lines while fixing service on the inner parts. They can also be an incentive for drivers to deliberately run late in hope of a short turn and a nice siesta.
What we see on Bathurst is an extreme case where simply leaving buses to make full trips allows gaps to widen to the detriment of service. There has to be a trade-off somewhere including managing service and headways. This is not the same as simply saying “run on time”, or worse as the TTC does, “run more or less on time”. Much of the service shown in charts here meets TTC standards because it is very, very bad only occasionally. But for those with the bad luck to land in one of the exceptions, things can be very bad indeed.
Gaps are a particular problem because more people are affected by them than “the average rider”. Many people will stand at a stop for a very long time, or give up and leave, in a one hour gap. But after it passes, service is back to normal. Only one bus out of many is in a big gap, and for the stats, this is perfectly ok. Riders might not agree.
Unevenly spaced buses have uneven crowding. We don’t actually know how bad this is because the TTC still does not make historical crowding data available for analysis (come back in 2022, maybe). However, a “gap” bus will be more heavily loaded, and so more passengers will experience crowding than vehicle-based stats would indicate. Only one bus in three might be in a gap, but more riders are on that bus than on the other two. The average experience is crowded even though statistically the overall service is not.
This is a fundamental flaw in the TTC’s analysis of crowding – it is based on vehicles, not on riders.
The Problem of Missing Runs
Another problem besetting TTC service is that buses and streetcars will simply disappear from time to time because there is no relief operator to take over at a shift change. This happens due to a shortage of spare staff and an attempt to minimize overtime.
When a vehicle is missing on a route with only modest service (every 10 minutes or worse), the effect for riders can be catastrophic with very wide gaps and no option to “wait for the next bus” because the next one might be over 20 minutes away.
The TTC claims that it uses some of the “run as directed” buses to fill these gaps. Complaints from riders (more tweets!) suggests that the RAD buses are as invisible to riders as they are to the vehicle tracking apps. In any event, as I wrote recently, there is only a limited number of these buses, and on weekends they are likely to be occupied with subway shuttle duty, not with filling service gaps.
I will turn to the problem of missing runs in a future article.
A Note For Twitterers
If you are going to post a comment/complaint about service, be sure to include the route (name or number), location, direction and time. The vehicle number is a nice-to-have, but not vital for tracking down gaps that should be obvious in the tracking data. However, for “I was on bus xxxx and here’s what happened” reports, the vehicle number is very important.
How Long Has This Been Going On?
Some decades ago, before the Sheppard Subway existed, I was at a TTC Board meeting and the then-Chair, Gordon Hurlburt, was late arriving. When he did come into the room, he complained that he had been waiting for half an hour on Sheppard at Leslie for a bus that he could actually board.
In due course, management reported that they had reviewed the route and found no reports of overcrowding, in effect telling the Chair that what he had experienced did not occur.
Hurlburt took up smoking again not long after that, and did not seek reappointment for another term.