TTC Bus Service Frequency and Reliability in 2020 (Introduction)

One “benefit” of being cooped up at home more than usual is that I have a lot of time to devote to rummaging around in TTC data. This article begins a series that I am sure most people will not read in its entirety, but instead concentrate on routes of interest to them. I will not feel bad if you don’t read every word, and there is no test at the end.

A common complaint about TTC service in pre-covid days was that it was inadequate to demand and unreliable. Complaints like this go back decades, and one of my earlier advocacy projects was a review of streetcar service back in 1984 conducted jointly by the Streetcars for Toronto Committee, some members of Council and volunteers from local community groups.

The covid era brings its own challenges including reduced vehicle capacity for distancing, plus a scramble by the TTC to adjust service across the system on very short notice. On some routes, riders still complain about crowding and the inability to distance, and we are now in a period where higher load factors will be part of TTC service. The TTC neither has enough vehicles, nor enough revenue to operate a service with generous distances between riders as the demand slowly returns across the network. This build-up has been strongest on surface routes in the suburbs where work-from-home is not an option for many jobs, and where fewer trips can easily be taken by alternate modes such as walking or cycling. The TTC has reported riding on some routes at forty per cent of per-covid levels and growing.

Suburban routes pose a special problem because travel demand does not necessarily fit into the classic patterns of time and direction for core-oriented commutes, Service that is designed to get  people downtown (or at least to the subway) does not necessarily serve other demands well. In “normal” times, this problem can be masked, but when core-bound and academic travel patterns are stripped away, the mismatch between suburban demand and capacity, especially allowing for distancing, becomes evident.

Service designs have evolved over past months.

Through January and February 2020, there were few changes to scheduled service, but by the March 29 schedule changes, the effects of covid were showing up across the city with much lower demand and reduced traffic congestion.

There were actually two versions of the March 29 schedules, and the big difference in the second was the disappearance of almost all premium and express services. This allowed the TTC to reduce total service in response to increased employee absence, and to redirect some of the express buses as unscheduled supplements to local service.

By the May 10 schedule changes, further cuts were implemented, although many were on an ad hoc basis to avoid complete rescheduling of routes. Instead of writing new schedules, selective crews were cancelled leaving gaps in service that were supposed to be managed on the fly by route supervisors. A separate pool of standby buses and crews was allocated to be dispatched as needed as the TTC learned where services were overstretched based on new loading standards.

The TTC did not issue a “Scheduled Service Summary” for May 2020 because of the number of ad hoc changes, but some of the planned schedules can be inferred from the June-August summary where effective dates for some schedules are in May.

These standby buses did not appear in the published schedules for routes nor on the vehicle tracking apps, and they may or may not show up in historical tracking data depending on how operators “signed on” to the system. For example, a bus running on 35 Jane has to sign on to a run that exists in the schedule to show up in NextBus (and all of the apps using the NextBus feed), and it must at least sign on to the route to have any hope of being tracked after the fact to analyze the service actually operated.

A further problem is that the TTC does not publish information about where these unscheduled buses are used. They have issued a list of routes that are monitored for overcrowding, but no information about specific actions on these or other routes.

  • 300 Bloor-Danforth Blue Night
  • 320 Yonge Blue Night
  • 29 Dufferin
  • 35 Jane
  • 37 Islington
  • 39 Finch East
  • 41 Keele
  • 44 Kipling South
  • 52 Lawrence West – (Airport trips)
  • 96 Wilson
  • 102 Markham Rd
  • 117 Alness-Chesswood
  • 119 Torbarrie
  • 123 Sherway
  • 165 Weston Rd North

(The list above might be adjusted based on TTC’s monitoring.)

Regular readers might recall a series of articles about the 70 O’Connor bus and its erratic service. The TTC claimed that there were run-as-directed buses added to the service, but these do not show up in the tracking data. One could ask why, after the expenditure of millions on a new vehicle monitoring system, the TTC is unable to demonstrate where they operate this type of supplementary service.

Finally, the June 21 changes returned some of the buses that had been cut in previous months to scheduled service, but on a different basis from the pre-covid arrangements. Instead of a roughly three-hour AM and PM peak period with added vehicles, the extra vehicles are scheduled for two seven-hour periods from the very early hours of the AM peak starting between 5 and 6 AM and running until noon to 1 PM. A second batch of extras enters service between 2 and 3 PM running until 9 to 10 PM. The affected routes are:

  • 7 Bathurst
  • 24 Victoria Park
  • 29 Dufferin
  • 34 Eglinton East
  • 35 Jane
  • 39 Finch East
  • 41 Keele
  • 52 Lawrence West
  • 54 Lawrence East
  • 86 Scarborough
  • 102 Markham Road
  • 165 Weston Road North

This has two effects on the routes where the extras are used:

One effect is that the headway (time between buses) for the block of extras is generally not the same as for the regular service. This can cause erratic headways and uneven loading. For example, if an 8 minute “A” service and a 10 minute “B” service are mixed on the same route, the pattern of departure times (minutes after the hour) could look like this. Sometimes the “B” service nicely splits the headway of the “A” service, but at others the two leave close together or at the same time.


This sort of thing is unavoidable when headways on any mixed service are not the same. However, the TTC has a six-minute window (from 1 minute early to 5 minutes late) for a bus to be considered on time. When the scheduled headways are in single digits, bunched service is inevitable even if the schedule does not have built in gaps and bunching. However, if the scheduled headways are wider, but uneven, this builds uneven service into a route’s operation.

The other effect is that there is a two-hour period between each set of “trippers” on the affected routes where headways are much wider than at other times, and this can be compounded by uneven headways for the vehicles that do remain over the bridge period.

The cancelled runs cause scheduled gaps where one or more buses are missing, but the times of adjacent runs have not been adjusted to compensate. It is not clear how much effort the TTC is putting into fixing this problem, and the generally uneven level of service can make it hard to distinguish this from other problems with headway reliability.

The situations are unique to each affected route, and I will go into the details in the route-by-route review.

A Note About Data Sources

All schedules for the TTC are available in GTFS (General Transit Feed Specification). The current version is on the City of Toronto Open Data site, but archived version for the TTC and many other transit systems are available on the transitfeeds site. These data contain the same information that is published on the TTC’s timetable pages, but in a format that lends itself to analysis and presentation.

Tracking data for TTC vehicles is archived by the TTC from two systems: the 30+ year old “CIS” (Communications and Information System) and its replacement “VISION” which has more extensive capabilities for line management. As of early July 2020, most of the surface fleet has been converted to VISION with only a portion of the streetcars remaining to be completed.

[The tracking data are not published for general access, but are available to me and others by arrangement with the TTC. The data sets are very large and require substantial reworking to permit analysis and presentation. For a general discussion of analyses with these data, please see Understanding TTC Service Analysis Charts: A Primer .]

Route Analyses

In the articles to follow, I will divide the major routes into geographic groups. This is an arbitrary split both for reasons of size, and to allow readers to home in on specific routes of interest by area.

As an introduction, here is a review of route 54 Lawrence East.

Analysis of 54 Lawrence East Service in 2020

In the pre-covid era, service on Lawrence Avenue was provided by two branches of 54 Lawrence East and by the peak period 954 Lawrence East Express.

  • 54A Lawrence East: Eglinton Stn to Starspray Loop
  • 54B Lawrence East: Eglinton Stn to Orton Park
  • 954 Lawrence East Express: Lawrence East Station to Starspray Loop

The extracts below show the service plan that was in effect for March 2020:

By June, the plan had changed to:

In the June plan, which remains in effect through the summer, the former 954 service has returned but as the 54T (“T” for “tripper”), the buses that operate as scheduled extra service between Starspray and Lawrence East Station, but making all stops. The difference is that the “54T” buses are out for about seven hours each, morning and afternoon/evening while the 954 buses only ran during peak periods.

The combined effect is that peak service is slightly less frequent than in March, but off-peak service is improved.

However, that is not the full story. Because the trippers and the regular service do not operate on a common headway, their spacing will vary as described above. Here is what the scheduled headway looks like westbound at Markham Road.

There is a period in the early afternoon where headways sit at a constant 7 minutes corresponding to the blended Starspray and Orton Park branches with no trippers. The point here is that the service is scheduled to be irregular although in theory this could be managed around to smooth things out.

However, there is a further problem with “on time performance”, a favourite TTC metric that treats a vehicle as “on time” provided it leaves the terminal no more than one minute early or five minutes late. On a service with a scheduled frequency under six minutes, pairs and triples can be “on time” while providing rotten service.

Measuring service inbound from Starspray Loop is tricky because vehicles tend to take their layovers at different locations for the drivers’ convenience. For the purpose of these charts, I have used Port Union Road, west of Rouge Hill GO Station as the measurement point.

Here is the service of tracked vehicles (not including standby buses) in week 3 of June 2020, before the scheduled trippers were added:

In week 4, with the scheduled trippers, the tracked service looked like this:

The problem with both of these charts is the scatter of actual headway values. Waits of well over 10 minutes are common, as are groups of closely spaced buses running on very short headways.

This is shown generally by a plot of average headways and standard deviations, a statistical measure of scatter in values:

The blue and purple lines above (weeks 4 and 5) show the effect of the new schedules, but the dotted lines, the standard deviations tell their own story. With values in the 4-6 minute range, the SDs tell us that headways actually operated at a considerable typical distance from the average.

The TTC loves to report averages because these tend to mask all of the ups and down, while riders have to deal with the actual condition of service when they arrive at a stop.

A problem common to all branching routes like Lawrence East is that with service on each branch operating only roughly “on time”, the so-called blended service is itself irregular.

Here is the service westbound at Markham Road in week 4, just west of the point where the 54B Orton Park service joins the line:

All of these buses reach Lawrence East Station, a point where one might think it would be possible to restore order to the service without having buses take layovers on the street. Here is the service westbound at Kennedy, just west of the station, in week 4. (Note that Monday, June 22 is omitted because some data are missing for that date.)

Eastbound departures from Eglinton Station have been omitted here because with all of the Metrolinx construction, headways in that part of the world are a bit chaotic. However, again Lawrence East Station should provide a chance to sort everything out and dispatch a well-spaced service. That is not what actually happens as this plot of service eastbound at Midland (just east of the station) shows.

Although I have the tracking data for July 2020, I have not published it here because the results are the same as for the latter part of June.

This situation on Lawrence East is not new, and plots of data from pre-covid times look much the same.

The TTC’s explanation that the standby buses fill in the gaps might be credible for dealing with holes in service, but this does not explain the large number of buses running nose-to-tail on the route. Many of the gaps are of the TTC’s own making, and especially on a route with scheduled trippers, there should be little need for standbys.

The TTC has automatic passenger counters on its vehicles and has published “heat maps” showing where services are well-used. However, the underlying data have not been made available when I have asked for it. An obvious test would be to map the variation in actual headways against variation in on-board crowding.

The problem of uneven vehicle spacing is chronic across the TTC and the situation long predates the pandemic era. There will be a lot of talk in coming budget debates about subsidies, crowding and service levels, and we may well see the TTC forced to operate with reduced means for some time to come.

This is not the time to point to average statistics that claim service is running just fine, thank you, when what is actually on the street, to the degree we can track it, demonstrably is not.

For those who are interested, the full chart sets for the locations cited above are linked here.

8 thoughts on “TTC Bus Service Frequency and Reliability in 2020 (Introduction)

  1. Steve said: “One could ask why, after the expenditure of millions on a new vehicle monitoring system, the TTC is unable to demonstrate where they operate this type of supplementary service.”

    Indeed one could ask! Is this ‘signing-in’ process complicated and if the non-signed in buses do not appear in the data you see are they also not seen by the (mythical?) human route supervisors who are ‘managing’ the situation? Seems ‘somewhat’ poorly planned/executed!


  2. In my opinion, most of the recent TTC COVID-19 service changes are poorly planned because of the following reasons based on the TTC service summary:

    1. There is still a route split on 25 Don Mills at Don Mills station when there is no 925 Don Mills Express so you are forced to switch buses at that station.
    2. The route split on the 501 Queen streetcar ended on weekdays but the route split is still in effect on weekends.
    3. Without the 995 York Mills Express in service, the 95 York Mills service east of Kennedy comes every 20 minutes on weekday midday when most major bus corridors should be 15 minutes or better.
    4. Most of the reductions the TTC made in May only affects the weekday service with lack of changes for the weekend service, making the weekend service more like a weekday service.

    I hope the September service changes would make service more reasonable and reliable and correct those mistakes the TTC have made.

    Steve: It appears that little will be corrected in September. I am still waiting for the detailed memo describing the updates, but from what has come out so far, the changes are minor.


  3. Since the TTC is incapable of supervising their Operators how about approaching their Union and seeking their co-operation?

    Make an appeal to Members to conduct themselves in a manner that actually improves service to the paying customer. Take pride in your work.

    Examples: Beginning primarily outside rush hours do the following.

    Run On Time and NEVER ahead of time.

    When approaching a signaled intersection and a bus in front is visible DO NOT go through that intersection on the same light. If a bus bay is at that intersection pull in, turn on 4-way signals and WAIT! Proceed at temperate speed as long as bus ahead is in plain view. Don’t act like a canine. Don’t chase his bumper.

    If that works there are other things that WILL improve things.

    Steve: This recipe will not work as long as the TTC’s approach to “on time” is based on schedules, not on spacing between vehicles, and those schedules are padded so that it is almost impossible to run late. There is more at work here than how drivers operate their buses.


  4. The Liberals were in power for 15 consecutive years and why do we still have buses running when the Liberals promised subways, subways, subways? Where is the Scarborough subway? Where is the Downtown Relief Line? If Downtown folk had spent more time fighting for the Downtown Relief Line instead of fighting against the Scarborough subway, then we might have ended up with both projects already up and running but too much infighting led to NOTHING being built and there is certainly no money left post-COVID to build either.

    Steve: Your revisionist history does not serve your argument well.

    It was the Ford brothers who promised subways, subways, subways. The only one the Libs promised, and then partly in fear for their political future, was the one in Scarborough. Remember Mitzie Hunter, the subway champion? When she was at Toronto Civic Action, she was pro-LRT, not pro-subway, but switched sides to get elected.

    The Relief Line sat on the back burner for years until it became obvious that without it, building a subway to Richmond Hill would be a disaster. So Toronto got its DRL and York Region will get its second subway, eventually. Then Doug Ford needed a signature project, and the Ontario Line was born.

    Where is the Scarborough Subway? You might ask Doug Ford whose machinations have delayed the project until about 2030. I agree that the one stop version was a complete joke, but that was a product of “we must have a subway” coupled with an unwillingness to spend. We could have had an LRT network in Scarborough by now, but that ship has sailed.

    Post Covid, who knows what will actually be built and when. Getting any new projects out of the gate will be challenging while we attempt to pay for what’s already on the books. Meanwhile, the City will be left holding the bag for surface transit which carries so many people despite its problems, and where ridership is recovering fastest in recent months. If Covid has done transit any favours, it has delayed some of the capacity pressure on the existing system, but that will not last forever.


  5. Hi Steve will most of the 900-series express bus routes be back online starting with the September board period as many kids go back to school for the first time since March due to covid-19 and many adults alike go back to work? Are you able to confirm if most express bus services will return on the TTC starting next month?

    Steve: I just received the service memo for September, and the 900 series routes are still suspended.


  6. Hi Steve are you able to confirm if the TTC’s downtown premium fare express bus services (routes 141-145) will be back in September?

    Steve: No they will not.


  7. While the next service change may be minor, I hope the TTC focuses on rebalancing bus services to higher demand route.


  8. Having reading the article, I have observed how the service operates on the Eglinton East corridor (East of Kennedy Stn.) for the 86 SCARBOROUGH and 116 MORNINGSIDE services. Without the 986 SCARBOROUGH EXPRESS, there are a bunch of 86B “Highland Creek” buses running Monday to Friday until 10pm. Same issue goes with the 905 EGLINTON EAST EXPRESS, they have lack of headways since the 116A doesn’t run weekends and holidays. Despite the 116B isn’t running officially, there have been instances that a number of buses have signed on 116B popping up unofficially.

    On Sheppard, without the 985 SHEPPARD EAST EXPRESS running, would that be possible for the TTC to reinstate the old 85G “Brimley” as a temporary measure? It would be possible for customers to ride the 85 between Don Mills Stn. and Scarborough Centre Stn. using the 985A routing with local stops. The 21A BRIMLEY is looking normal in rush hours even though the 903 KENNEDY-SCARBOROUGH CENTRE EXPRESS isn’t operating.

    It would seem possible the Express services would remain on hold until the end of the September board, but according to the Mayor John Tory, the TTC is eligible for the $400M emergency funding from the province and reinstatement of normal services per Union. Would they able to reinstate those services including the Express Network to reduce overcrowding and increase physical distancing? If those remain cancelled beyond September, more vehicles will be added.

    Steve: In an article just published, I look at five Scarborough routes including 86 Scarborough and 116 Morningside. There are a lot of scheduling problems that arose from cancelling the express buses, and originally I had hoped this would be sorted out with a September return. However, they are not coming back in September, and there is no announced date. Meanwhile service is a mishmash of scheduled uneven “temporary” headways and whatever supplementary service the TTC fields from day to day. Bunching is common even though there is far less traffic on the road to delay buses enroute.


Comments are closed.