King/Church Diversion Performance – April 20 to May 26, 2025

On May 11, 2025, the diversion arrangements downtown became more complex as the 504 King, 503 Kingston Road and 508 Lake Shore (peak only) streetcar services shifted onto the same Richmond/Adelaide diversion route as 501 Queen. This arrangement will be in place until early September for water main and track repairs at King and Church, as well as for streetcar overhead upgrades on King Street.

As initially implemented, the three routes operated eastbound from King and Spadina, north to Queen, east to York, south to Adelaide, east to Church and north back to Queen. The westbound diversion was similar using Richmond from Church to York.

Immediately after this change, it was obvious that streetcars were snarled in traffic, particularly eastbound on Adelaide. Generally across the diversion, there was a problem with the number of streetcar turns exceeding the intersection capacity in peak periods. There is also construction interference at a few locations along the way.

I wrote about capacity issues and other related matters:

On May 16, the TTC changed the 504 King diversion so that it used Shaw Street between Queen and King to reduce the number of turns at Spadina. Only the 503 Kingston Road cars, and a few peak period 508 Lake Shore cars remained, as well as the 511 Bathurst cars looping via Spadina, Adelaide and Charlotte. (The 511 diversion will end on June 22 when streetcar service returns to Exhibition Loop.)

However, this change only addressed the west end of the diversion at Spadina, but further east the full volume of routes 501, 503, 504 and 508 continued to use the diversion between York and Church contributing a high number of streetcars/hour where the service turned. The frequency of service on 501, 503 and 504 is roughly the same through the day. It is the volume of road traffic that changes, not the number of streetcars.

Period501 Queen503 Kingston Rd504 King508 Lake ShoreCombined
AM Peak10′ (6)8′ (7.5)8′ (7.5)20′ (3)2’30″(24)
Midday9’30” (6.3)10′ (6)10′ (6)3’17” (18.3)
PM Peak9′ (6.7)8′ (7.5)8′ (7.5)20′ (3)2’26” (24.7)
Early Evening10′ (6)10′ (6)10′ (6)3’20″(18)
Late Evening10′ (6)10′ (6)10′ (6)3’20” (18)
Values in parentheses are vehicles per hour.

Charts in the following section show travel times between University and Jarvis both ways, and how these rose when the volume of 503-504-508 service was added along the diversion.

Continue reading

Service Analysis of 29/929 Dufferin Part III: Headways & Travel Times 2024-2025

In the first two parts of this series, I reviewed headway and travel time data for the 29/929 Dufferin bus during April 2025.

This article reviews archival data back to January 2024 to discover how the route’s behaviour has changed in the past 16 months. At the end, there are charts showing travel times over the full route from April 2018 to April 2025 for a long view of their evolution.

The first part of the article looks at headways (the time between vehicles) on both the 29 local and 929 express services at various points along the route. The patterns visible in the earlier articles with ragged headways leaving terminals appear throughout data back to January 2024. A major problem with these routes is that buses do not leave terminals evenly spaced, and this problem grows as they move along the line.

The second part reviews travel times over segments of the route to show areas where these change by time of day, and where they do not. These show that on some segments, travel times are mostly consistent across time periods, whereas others show rises and falls. The segment with particularly wide variations is northbound from Lawrence to Wilson showing the effect of traffic queuing for Yorkdale Mall and for Highway 401.

The original RapidTO proposal for red lanes included the full route, but the current version is only from Eglinton southbound. This will not address congestion issues north of Eglinton, nor will it deal with the operational problem of erratic terminal departures.

Continue reading

Service Analysis of 29/929 Dufferin Part II: Travel Times in April 2025

This article is Part II of my review of service quality on the 29/929 Dufferin routes in April 2025. Part I covered headways (the interval between buses) while this part looks at travel times. Part III will review historic data going back to January 2024.

  • Average travel times are fairly consistent, but for any time of day can vary by 10 minutes or more over a one-way trip, much less for shorter segments of a few kilometres.
  • The major rise in travel times occurs northbound in the afternoon and PM peak. The effect is much smaller in the AM peak and for southbound trips.
  • There is a slight difference between travel times for local and express buses. The time saving either way between King and Wilson lies between three and seven minutes on average. The percentage change is lower in the peak period when travel times rise, but the spread between local and express services does not.
  • The dispersal in travel times is similar for local and express buses. This is reflected both in the standard deviation values and in the quartile breakdowns.
  • Conditions changed in the latter part of the month increasing travel times on the southern part of the route.
  • A considerable part of the PM peak travel time increase lies outside of the proposed RapidTO area notably between Eglinton and Lawrence, and especially between Lawrence and Wilson.
  • The time spent by buses at or near terminals varies quite substantially, and reveals periods when schedules could be too tight or, conversely, too generous.

Transit lanes on Dufferin should be able to shave some peaks off of travel times, but this will only apply to periods where buses are routinely fouled in traffic. Some locations where congestion snarls the route are not proposed for transit priority.

As shown in Part I there is a wide variation in departure times from terminals compared to scheduled headways even though most trips appear to have time for recovery to their schedule. Reducing travel time, and more importantly making travel times consistent will help to make headways more reliable, but the problem of regulating departures and vehicle spacing will still remain.

The remainder of this article is a large set of charts for those interested in a fine-grained view of the route.

Continue reading

Service Analysis of 29/929 Dufferin Part I: Headways in April 2025

This is the first of three articles about TTC services on Dufferin Street, the 29 Dufferin local bus and its 929 Dufferin Express counterpart.

  • This article reviews headway performance at the terminals and along Dufferin during the month of April.
  • Part II will review travel times over the same area.
  • Part III will review historical data back to January 2024 to see whether there have been changes in the route’s behaviour over the past 16 months.

Major points worth noting:

  • Other than the restoration of the 29C service to Princes’ Gate in Fall 2024, there was no change in the scheduled level of service or travel times over the period studied here.
  • Headways are not well-regulated on either the local or express services from either terminal during the entire day.
  • At the point where buses would enter the proposed RapidTO red lanes, the service is already disorganized. Travel times might improve, but the irregular headways will not.
  • Weekend service is even more disorganized than on weekdays.
  • Congestion is evident at some locations and times along the route, but it is not pervasive. Some problem locations are within the proposed transit priority area (south of Eglinton), but some are not (notably near Yorkdale northbound).
Continue reading

A Contrarian’s View of Bathurst/Dufferin RapidTO

Recent newspaper articles and editorials extol the virtues of the RapidTO projects on Bathurst and Dufferin Street, and portray those who object in a less than flattering light.

The urgency of transit priority action for the 2026 FIFA games combines with portrayal of transit priority as an absolute good before which all objections must fall. The word “NIMBY” is thrown about to denigrate residents and businesses in the affected areas, but this is no substitute for hard data proving, or not, that the RapidTO proposal really is “the better way”.

For decades, I have advocated for better transit service in Toronto. Transit priority measures are one, but not the only, factor that can improve transit for riders. Quality and quantity of service are also key, and yet the TTC has a tendency to place most blame for their shortcomings on external factors. To be sure traffic congestion is an issue, and Toronto is already at a point where in some locations and times there simply is not enough capacity to go around. This is not a case of some omniscient transit god or AI bot “parting the waters”, but of a recognition that this can only happen by restricting or eliminating competing demands for road space and time.

Another major factor is financial. Even pre-covid, the TTC faced limits on its operating funds and only grudgingly added service on routes. Recent announcements of “improvements” often hid the fact that the added vehicle hours left scheduled frequencies unchanged, but only offset the effects of congestion.

Service reliability and vehicle loading are key factors from a rider’s perspective, but the TTC uses metrics that bury day-to-day conditions in averages and give a generous interpretation to the concept of reliable vehicle spacing. It is no secret that TTC service management leaves a lot to be desired, and some transit “priority” schemes are are really more about keeping transit out of motorists’ way than they are to speed rider journeys.

The problem is compounded by motorists who regard attempts to corral them as an affront to their virility, but whose actions only recently have been reined in through the use of Traffic Wardens.

The City Transportation Department’s outlook is that if they make cars move faster, transit benefits too – a rising tide lifts all boats. This model collapses when there simply isn’t enough room or time for all vehicles. Some must be able to go first, and some will simply have to go away.

The King/Church construction diversions illustrate another aspect here: the concentration of transit service and traffic in locations that cannot sustain it, especially when transit, running in bunches, overwhelms intersection capacities with many closely-spaced arrivals and turns. TTC has redirected part of the diverting service (504 King) away from Spadina to Shaw so that left turns are spread out, and King/Spadina will further improve on its own when the 511 Bathurst cars return to their usual southern terminus at Exhibition Loop in late June. The east end of the diversion, at Church, does not have the same options for spreading out routes and turning issues.

In the FIFA context, we do not yet know what sort of service the TTC plans to operate, and how it will manage both the vehicle and passenger volumes at major transfer points including not just Dufferin and Bathurst but at other locations such as Union Station and major intersections enroute.

Continue reading

504 King Diversion Revised

Updated May 16, 2025 at 3:50pm: The TTC has now published a map of the revised diversion routes.

In response to congestion problems for streetcars turning on and off of King and Queen Streets at Spadina, the TTC has modified the route of 504 King.

Instead of running west via Queen, Spadina and King, the 504 will now divert via Queen, Shaw and King. The 503 Kingston Road car will continue to operate via Spadina and King to Dufferin Loop.

The TTC has not yet updated the information on its King-Church diversion page as of 1:30pm May 16, but plans to do so. On-street signage will also be changed. The diversion map and information appear on several different pages, and it will be interesting to see if the TTC changes all of them.

Updated 3:50pm with revised diversion map for routes 504/304, 503/303 and 508. Not shown are routes 501 Queen and 511 Bathurst.

This reduces the peak streetcars/hour attempting to turn east-to-north at King and Spadina from 23 to 17, and west-to-south at Queen and Spadina from 13.5 to 7.5 (plus occasional 508 Lake Shore cars). Off-peak service is almost the same as peak service and so these numbers do not change much during those hours.

Numbers eastbound at King will be further reduced in late June when the 511 Bathurst cars, 6.5/hour, resume their normal route to Exhibition Loop, and 508 Lake Shore cars, 3/hour at peak, are suspended for the summer.

Updated: Now that the map has been published, it is clear that the 504C/D buses will continue to loop at Bathurst, and service on King from Bathurst to Shaw will only be provided by the 503 car.

Problems remain further east on the diversion with all of the 501 Queen, 503 Kingston Road, 504 King and 508 Lake Shore cars making turns to and from Church, Richmond, Adelaide and York, a total of about 23 per hour. There is also severe traffic congestion on Adelaide, but it is not clear how much of this is caused by queuing streetcars, and how much due to traffic volume and road capacity.

The option of using Victoria Street for the link between Queen and Richmond/Adelaide is not available because of Ontario Line construction, even though this would have separated the streetcar diversion from the busier Church Street.

See also:

Ontario’s 2025 Budget and Transit

Ontario unveiled its 2025 budget on May 15. Although it speaks of “Approximately $61 billion over 10 years for public transit”, by far the lion’s share of this spending is for projects already underway in the construction and design stages.

All of this is for capital expansion and renewal, and nothing has been announced for day-to-day improvement of transit service.

GO Transit

The budget cites:

  • The Hamilton-Niagara through service connection at West Harbour Station which is already in service.
  • The proposed Bowmanville extension which has been announced before, but is only barely underway at the “early works” stage. This extension has physical alignment issues.
  • GO 2.0 includes “delivering all-day, two-way service to Kitchener and Milton, building new GO stations across the region and advancing planning to unlock potential new rail corridors through midtown Toronto, Etobicoke, York Region and Bolton.” There are no dates attached, and some of these have been on maps for a very long time. Notable by its absence is any mention of electrification.
  • A total of $850 million to refurbish GO Transit rail coaches at the Thunder Bay Alstom the North Bay ONR facility. This work is already announced. The cars may receive convenience upgrades such as “charging plug ports, cup holders and improved Wi-Fi”, but the long-term retention of these cars indicates that the operating model for GO electrification, if and when it occurs, will have a large component of locomotive-hauled trains rather than electric multiple units.

Subways

Subway projects in the budget are:

  • Ontario Line (under construction).
  • Eglinton-Crosstown Western Extension (under construction).
  • Yonge North to Richmond Hill (procurement underway).
  • Sheppard Subway Extension (planning, consultation and business case preparation underway). Notable in the map below is the absence of a line east of McCowan where there is a conflict with the City’s Eglinton East LRT project and with maintenance yard property requirements.
  • New subway cars for Line 2. Provincial funding for these trains has been in place for some time. What is not yet funded are trains for service expansion beyond pre-covid 2019 levels. Trains for the Yonge North and Scarborough extensions are included in those projects. The TTC is in the Request for Proposals process for new trains, but this has been skewed by provincial statements that the work should go to Alstom’s Thunder Bay plant.

Yes, they seem to have forgotten the Scarborough Subway Extension (now under construction) in the text although it is included in the map below..

East Harbour Transit Hub

The hub at East Harbour Station, near the point where the Lakeshore East GO line crosses the Don River, will eventually serve GO Transit, the Ontario Line, and the local streetcar/LRT system via the Broadview Avenue Extension and a link west via Commissioners Street.

A substantial portion of this project is funded by the City of Toronto as a remnant of John Tory’s “SmartTrack” plan.

Light Rail Projects

  • Hamilton LRT: This is in early states with procurement underway for Civil Works and Utilities.
  • Hazel McCallion (Mississauga) LRT: Construction is well underway for the initial phase of this project, and the Province is studying whether the extension into downtown Brampton should be tunneled.
  • Ottawa LRT: The Province is studying a potential upload of the Ottawa LRT “to help reduce costs for Ottawa taxpayers”. What implications this might have for future network operation and expansion is not clear.
  • Eglinton Crosstown and Finch West LRTs: “Major construction for both projects is now complete. Metrolinx continues to focus on safety and operational readiness testing, as the projects advance toward revenue service.” There is still no commitment to opening dates, and we are getting close to the three-month lead-time required for a go/no-go decision for an early fall 2025 start of service. Meanwhile, TTC has begun the process to update subway train announcements and maps to reflect the new lines.’
  • There is no mention of the Eglinton East or Waterfront East projects. In a recent letter, Mayor Chow asked the Federal government to contribute 1/3 to these schemes, but there is no indication of support in the Provincial budget.

Service Analysis of 7 Bathurst Part III: Headways & Travel Times 2024-2025

This article is the final part of a review of route 7 Bathurst where the City of Toronto and TTC are currently studying the implementation of reserved bus lanes from Eglinton to Bathurst Station north of Bloor Street.

See also:

Data presented here are from all weekdays from January 2024 to April 2025 for three screenlines on Bathurst:

  • Barton Street just north of Bathurst Station
  • Just north of Eglinton Avenue
  • Just south of Steeles Avenue

These show headway behaviour at terminals and at the dividing line between the portion of Bathurst proposed for RapidTO bus lanes (south of Eglinton) and the portion that will not change. Travel time behaviour is shown for the entire route, as well as for the segments north and south of Eglinton.

In each chart, both the median value (50th percentile) and 85th percentile are shown. The latter value shows, generally, the degree to which the peaks lie above the median, while filtering out the worse case values in the top 15 percentiles.

Median headways over the 16 months are fairly consistent and lie near 10 minutes, the scheduled level of service. There value drops only in the period from November 2024 to March 2025 when additional unscheduled service operated during the morning.

The 85th percentile of headways stays close to the median during most off peak-periods and at terminals, but it drifts higher at Eglinton both ways showing how small variations leaving the terminals can grow enroute. In peak periods and directions, the 85th percentile is often well above the median value showing erratic departures from terminals.

Travel times along the route vary substantially from about 35 minutes in late evenings to over an hour in the peak periods. Although the length of the trip varies a lot by time of day, the 85th and 50th percentiles stay close to each other indicating that the travel times are consistent within each period. There is a day-of-week effect visible in repeating peaks in the values on midweek days. This is seen on several routes across the system, and shows how a formal schedule does not face the same conditions every day.

Not included here are the weekend data which, as shown in Parts I and II, are not as “well behaved” because of schedule shortcomings, very wide variation in the spacing of departures from both terminals, and a high level of short turning in an attempt to keep buses on time.

Although Toronto proposes reserved lanes on part of this route, this will not improve behaviour outside of the target area. Travel time savings would occur in the peak period primarily south of St. Clair.

Continue reading

Service Analysis of 7 Bathurst Part II: Travel Times in April 2025

Updated May 14, 2025 at 6pm: A section is added at the end of the article showing the time spent at both the Steeles and Bathurst Station terminals.

In Part I of this series, I reviewed headway reliability on 7 Bathurst during April 2025. This article turns to travel times along the route, an important issue relative to claims made for the potential benefit of reserved bus lanes.

See also:

In Part III I will review historic data back to January 2024 to see how, if at all, conditions have evolved over the past 16 months.

Continue reading

King/Church Diversion Observations May 12, 2025

Today was the first weekday of the King/Church construction diversions. I watch things evolve via NextBus through the morning peak, and then visited King/Spadina during the PM peak. A caveat: Mondays are light traffic days. There was no Gardiner backlog at all on Spadina. Later in the week will likely be more challenging.

During the AM peak, the service on 504 King and 503 Kingston Road did not load properly, and many vehicles were clumped together. This took quite a while to unscramble, and there were big service gaps. The 504 buses also ran in packs and huddled together at Wolseley Loop, at one point six of them representing about 20 minutes worth of service at the scheduled headway. The peak period did not encounter queueing frequently at points where streetcars turn because of many wide service gaps. When a bunch of cars arrived, they queued one by one awaiting their turn, but then the intersections would open up again even though in theory there should always have been transit service waiting.

In the PM peak at King/Spadina, the major sources of traffic were pedestrians, cyclists and transit in that order. I observed that the traffic signal cycle time was 110 seconds (1’50”). This means that there are 32.7 opportunities (3600/110) per hour for a turn to/from Spadina. The nature of the intersection is that only one streetcar can make the turn per cycle.

The combined scheduled service trying to make the EtoN turn per hour at King & Spadina in the PM peak is 23 streetcars.

RouteHeadwayCars/Hour
503 Kingston Road8′7.5
504 King Car10′6.0
508 Lake Shore20′3.0
511 Bathurst Car9′6.5
Total23

Stir in 12 510 Spadinas straight through northbound on a 5′ headway. When there is a 510 (or any other car) serving the farside NB stop it blocks any car waiting to turn off of King. In a 45 minute visit, I saw this happen four times, and one car missed two turning opportunities because of closely-spaced Spadina cars blocking the stop.

Depending on arrival times and bunching, more vehicles can queue up here than there are cycles to accommodate them. This was under probably the best general traffic conditions we will see.

There were traffic wardens, but they left just before 5pm. The biggest problem was pedestrians blocking turning streetcars which do not have a protected turn phase EB on King. There is a WB advanced green because autos are forced to turn off King here, but there is no advanced green for eastbound streetcars.

The large volume of riders transferring from eastbound streetcars to buses adds to the already substantial pedestrian volumes at this intersection.

The Traffic Wardens did not reliably ensure that streetcars got “first dibs” on turning, and after they left, pedestrian interference became worse.

I boarded a 504 King eastbound at about 5:10. There was congested traffic over the route across to Church especially on Adelaide and it took over 15 minutes to get from York to Church. Some people complain about space “wasted” by bike lanes, but it was the left turn lane that was almost always empty. Some traffic used it to scoot around stopped streetcars!

The severe congestion can be seen in the TransSee maps of service for 504 King and 503 Kingston Road below. The tracking lines for the diversion area are almost horizontal for an extended period. Note that the problem is mainly eastbound (lines reading bottom to top).

I rode a King car east from Spadina and it took a very long time to emerge from the diversion. The car went from 6 minutes early at King on Spadina to 11 minutes late at Queen and Church. Note the length of time spent approaching King and Spadina inching along the street about one carlength at a time. Other locations where the car crept along are also clear in the tracking data.

Tracking data for car 4634. Source TransSee.ca.

Among the problems enroute were:

  • Congestion on Queen thanks to stopped vehicles and construction in the curb lanes.
  • Autos infilling Adelaide Street eastbound leaving no room for a streetcar to merge from York Street onto Adelaide. We were eventually rescued by a Traffic Warden.
  • Extremely slow progress across Adelaide thanks to a traffic backlog from Church Street.
  • Extremely slow progress on Church Street thanks to a traffic backlog from Queen Street. My car actually fouled the Church/Adelaide intersection as it was unable to complete the EtoN turn in more than one traffic signal cycle.

Ridership on the car was very light and most people got off when the car turned off King onto Spadina. They transferred to the King shuttle buses which were running irregularly and often bunched. These buses were also trapped in the traffic queue eastbound to Spadina of streetcars waiting to turn. (In the chart below, the size of the dot represents the degree of crowding on the vehicle.

Tracking data for 504C and 504D shuttle buses May 12, 2025, 4pm to 7pm. From TransSee.ca.

For those who want to watch the wandering streetcars and buses on NextBus, here is a link. This will open a combined display of routes 501, 503, 504, 510 and 511. The map can be scaled to zoom in to the area of interest. Displays of operating charts on transsee.ca are free for TTC streetcar routes.

Over coming days I will keep an eye on service performance over the diversion, and once a few weeks’ data have accumulated will delve into the details.