Tl’dr if anyone at LTA is reading this: please configure Datamall statistics for bus ridership to also include information on how discrete bus rides are linked as part of complete journeys, because there’s some serious evidence suggesting that it’s hindering your own abilities to plan bus services that effectively need the travel needs of peak-hour commuters, even if for the purpose of MRT relief. Scroll down to the section below named “Clearer connections, smarter planning” for relevant information.
In its bid to alleviate overcrowding on trains during the peak hours, the BCEP’s peak express services has become a runaway train in its own right.
When the BCEP was first launched in 2024 with a series of four City Direct services to the northeast, we cautioned against the unrestrained populist logic driving bus planning in the new era, and advocated for a more cautious, but no less responsive method of action formulated with careful thought to prevailing travel patterns of residents in the northeast. (The key here is recognising orbital travel demand, which stuff like CRL, orbital rapid and express buses, and the Fernvale LRT line are good for) As much as we hoped MOT would tone down the CDS spam insanity… not only did that not happen, but they further proceeded to double down on this madness, introducing yet another four of them in December 2025 (and even more in 2026)
It’s gone so far overboard that CDS coverage in the “downtown area”, once understood to include only the white-collar areas in Raffles Place and Shenton Way barely two years ago, has now expanded to reach as far as Novena. (Making that worse, the new CDS routes serving it are also routed in possibly the worst way imaginable for a Novena-bound express bus service). While yes, we advocated a few years back that the City Directs should serve a wider range of destinations in the central area besides the immediate white-collar employment centers in Raffles Place and Shenton Way, to say that the current arrangement was what we envisioned would be to severely put words in our mouths.
Noticing the stress factors behind such bus planning would be to pinpoint the obvious: a linewide blackout on the NEL in August 2025 spurred planners towards introducing additional CDS routes from the northeast in a desperate attempt to offload unsustainable crush loading on peak-hour rail travel. With the first wave of CDS enhancements under the BCEP taking place in December 2024 and the most recent one a year later, the dust has largely settled (if there aren’t more CDS routes yet planned), and the results of applying human-wave tactics in peak-hour express bus planning are not very pretty: despite fully covering the towns of Hougang, Sengkang and Punggol with CDS services (to the point of extensive duplication between different CDS services!), very few of them especially the newly-introduced ones are carrying enough passengers to justify them for the long term. Lest it be forgotten, all this happens while bus resources are taken away from equally-struggling trunk and feeder services in the northeast to operate the many new CDSes as well!
Here’s a quick summary of daily morning CDS ridership by northeast CDS route, based on statistics from LTA datamall for the month of April 2026:
| Service no. | Express sector ridership (AM)^ | Number of passengers / trip^ | Actual fleet supplied |
| 654 (Sengkang) | 506 | 63 | 8 buses (w/ DD) |
| 660/M* (Hougang) | 854 | 78 | 11 buses (w/ DD) |
| 666 (Punggol) | 85 | 28 | 3 buses |
| 671 (Sengkang) | 441 | 63 | 7 buses (w/ DD) |
| 672 (Hougang) | 257 | 64 | 4 buses (w/ DD) |
| 673* (Punggol) | 55 | 28 | 2 buses |
| 675* (Hougang) | 82 | 41 | 2 buses |
| 676* (Hougang) | 73 | 37 | 2 buses |
| 677* (Sengkang) | 111 | 56 | 2 buses (w/ DD) |
| 678* (Punggol) | 151 | 76 | 2 buses (w/ DD) |
| 679* (Sengkang) | 151 | 38 | 4 buses |
| 680* (Hougang) | 59 | 30 | 2 buses |
| 681* (Hougang) | 30 | 15 | 2 buses |
| 682* (Sengkang) | 121 | 30 | 4 buses (w/ DD) |
| 683* (Sengkang) | 42 | 21 | 2 buses |
^Rounded values
I have been generous and calculating AM peak loadings, which are much higher than PM peak loadings for CDS in general
Daily passenger counts calculated by dividing monthly ridership data by 20 weekdays in April 2026 (excl. Good Friday)
What went wrong?
In one sentence to describe the underlying mentality of northeast CDS planning under BCEP, these ridership outcomes were the product of excessively prioritising direct connectivity through one-seat rides. This directly clashes against a key function that these CDS routes were intended to accomplish: to offer a compelling, competitive alternative travel option to the MRT for city-bound commuters during peak hours. If one lives in an area of northeastern Singapore which LTA deems a “transit desert”, underserved by the existing trunk and feeder bus network, one might find themselves presented with a buffet spread of choices to get to any part of what is generally considered “the city area” — Raffles Place, Suntec City, Bayfront, Shenton Way, and now even Orchard and Novena. Again, nothing wrong with serving more destinations… until it comes at the cost of the core business of moving people directly between their homes and workplaces in a manner that’s similarly time-competitive against the MRT.
Compare the typical route design of a pre-BCEP and BCEP-era City Direct route in the downtown segment. On the left is service 654 (downtown sector untouched in BCEP), and on the right is the recently-launched service 681.


City Direct services designed prior to the start of the BCEP are characterised by a downtown segment that is straightforward and lean. That means that they comprise few stops in the downtown area, and are generally travelling in the same direction to reach them such that riding the CDS is not an unnecessary detour compared to other options (taking the MRT, or local bus). For all the flaws of older CDS routes, they manage to balance catchment and speed decently well by focusing on two possible combinations of downtown destinations that are located sufficiently near each other to not consume excessive travelling time.
The same can hardly be said about BCEP-era CDS routes however. In the rush to add as many possible downtown destinations, the city sectors of these CDS services are stretched to excessive lengths taking up to 25 minutes to travel from the expressway to the last stop. Worse still, the BCEP-era CDS routes are particularly notorious for being designed with hook-like routes, where buses circle back to the downtown periphery after having served the core first. Not only does this severely inflate travel times on these City “Directs”, but also make them much less worth riding, particularly if one works at the far end of these CDS routes. Why take 671 through Shenton Way and Marina Bay to Suntec when boarding a local bus from Dhoby Ghaut is faster? Or why bother with 681 to Novena when it’s much, much faster to take a local bus (141) from Farrer Park MRT, without the stiff $1 fare penalty of the CDS branding? Consistently, the Suntec and Novena segments of all CDS services have been identified as having the lowest ridership compared to similar segments in Bras Basah and Raffles Place.
One wonders why despite the strong push factor from overcrowding on the NEL, and the allure of an almost-guaranteed seat on these new BCEP City Directs, that commuters are still largely unwilling to make the switch, and have instead leaned towards adjusting their commute times to take advantage of free peak fringe travel under the jointly-launched Travel Smart Journeys scheme. The maximum peak loading of the NEL has barely reduced; the trains are now crowded for a longer period in the morning. Masterful gambit indeed.
Catchment bloat
To a lesser extent, the same can be said about the heartland sectors of these City Directs, and unlike the downtown sectors, an excessively long and windy residential sector for a CDS service isn’t new to the BCEP. In the absence of transit signal priority for buses and assuming an average of one traffic light between bus stops, these peak express services should contain no more than ten stops in the residential portion, to ensure the residential sector takes no longer than 20 minutes. Factoring in travel time on congested expressways and stopping at downtown stops, this would add up to ensure that total travelling time on these City Directs is no longer than an hour.
This is particularly so because the CDS services are targeted at a time-sensitive demographic (the morning rush-hour working crowd), and are competing against rail lines to win ridership and meaningfully reduce train crowding. Unfortunately, a number of CDS services, both new and old, have notoriously many stops to the point that end-to-end travelling time is in excess of 90 minutes, far above the acceptable 60-minute commute threshold or the desired 45-minute commuting time target set in LTMP 2040. Is it any wonder that these City Directs are barely carrying any passengers?


As can be seen, creating long and windy residential sectors in the name of maximising catchment has been a staple of planning City Direct services over the years, regardless of the BCEP era. It should be a surprise that these routes even manage statistically meaningful ridership despite such bloated routes, and without fail it’s always the last few stops before the express sector that hard carry the ridership of City Directs, new and old alike. In select cases, the introduction of rail connectivity to the head end of these City Direct services have resulted in ridership being torpedoed with near-immediate effect!
The assumption of ridership
In March 2026, three more new peak express services were launched in the northeast, albeit serving a different destination from all the aforementioned CDS: the Tai Seng industrial area, a key employment hub in the near eastern part of Singapore that’s probably most well-known for being home to BreadTalk’s headquarters.
For years now, the CCL has joined the NEL’s overcrowding woes, particularly along its northern half between Paya Lebar and Kent Ridge stations. While the northeast-southwest travel pattern that chokes up the CCL between Serangoon and Kent Ridge has been more deeply explored on the STC blog in the past, the remaining section through Tai Seng deserves its own attention too, as part of another significant travel pattern mirroring the aforementioned westbound crowd. The northeast-southeast ridership pattern is focused entirely upon the Tai Seng and MacPherson industrial estates, and contributes significantly to high passenger loading on the Circle Line’s eastern leg. To some extent, it can be argued that while more people feel the fallout from the westbound travel pattern, the passenger density on eastbound demand from Serangoon is significantly higher.
Because while the most unsafe thing you’ve probably heard from the overcrowded madness at Serangoon, Bishan and Buona Vista is probably the usual trope on how stuffing too many people inside confined spaces is not a good idea, this can happen on the eastern leg:
Trains between Serangoon and Paya Lebar can get so crowded (eternal thanks to the planners who decided 3 cars was sufficient for the CCL!) that trains move off with the doors not fully shut, as a testament to just how much the line is bursting at its seams here. Unlike westbound travel patterns however, the upcoming opening of the CCL’s final leg in July will not alleviate this crush crowd at Tai Seng. At all.
While LTA has done nothing with regard to express bus alternatives to the CCL’s western leg, the BCEP has some goodies to offer for Tai Seng commuters: to address the dangerous overcrowding on the CCL, services 457, 458 and 459 were launched, to connect the three town centers in the northeast to it.

This trio is an interesting bunch, in part due to a number of planning quirks that distinguish them from earlier express bus planning logic. As the numbering suggests, they are part of the same series from which express feeders (previously marked with the “X” suffix, and later renumbered to the 450 series allegedly to avoid confusion among blur commuters) hail from. For the longer distances that they cover compared to shorter-haul express feeder routes with explicit last-mile coverage purpose, these are the first routes in quite a while to ply express segments without the express fares attached, unlike say, the spam of City Directs mentioned above.
Typical express route planning logic in Singapore thus far focuses extensively upon maximising catchment particularly in residential estates, for the purpose of using their proximity to homes to improve ridership. As discussed above, the new CDS services under BCEP are also doing far too much of that for their own good too, and certainly should be straightened out to improve the effectiveness of such routes.
Bus services 457, 458 and 459 however (it seems like LTA has quietly abolished the “express feeder designation” after these routes were introduced with the same numbering), make up the opposite extreme end of the spectrum from the BCEP City Directs — with straight routes and minimal stops. Crucially, the curious oddity that makes these services stand out is how they end: directly at MRT stations, even if it it may make sense to extend the route further to serve more residences directly.
In particular, 457 is the worst offender of this, whose entire route comprises just barely 4 stops, and whose entire catchment in Hougang comprises solely of the MRT station and two forlorn stops along the less-trafficked Avenues 5 and 7. Putting aside the handful of intermediate stops along the way, it’s not hard to deduce that the base intent of the three Tai Seng express services was to provide a direct connection between the Hougang, Sengkang and Punggol MRT stations with Tai Seng station, forming a direct substitute for the MRT between these stations.
That strategy appears to be backfiring. Despite immense theoretical appeal as a contending alternative to the NEL-CCL combination, ridership on the Tai Seng expresses has been anything but the expected outcome of healthy ridership with such a readily-available market for immediate capture. With a relatively modest supply of buses on these express routes, bus loading is still disappointingly low, particularly for services 457 and 459. In an extreme case, a commuter found himself to be the sole passenger on board the 457 for the entire journey from Tai Seng to Hougang station.
What Datamall can’t tell you
Four people, Amy, James, Kai and Sarah make the following journeys on our public transport network:
- Amy takes bus 506 from Bukit Batok to Toa Payoh
- James takes bus 129 from Toa Payoh to Tampines
- Kai takes bus 506 from Bukit Batok to Toa Payoh, then transfers to bus 129 to reach Tampines
- Sarah takes the MRT from Bukit Batok to Tampines through the NSL and EWL, with a transfer at Jurong East
for the nerds: yes, I’m aware the transfer point between 506 and 129 (Trellis Twrs) is technically outside Toa Payoh town, but for the sake of argument let’s just presume it is.
Assuming the first three people have tapped their cards on every leg of their journeys, what Datamall ridership statistics will show (if processed correctly) is that there are two people taking 506 between Bukit Batok and Toa Payoh, and two people riding 129 between Toa Payoh and Tampines. A surveyor reviewing this data would be most inclined to conclude that these represent two separate ridership patterns that are of little connection to one another, with Toa Payoh appearing as a focal hub for bus ridership across the east-west axis in Singapore. As can be seen from above however, that’s factually inaccurate in reality. While it would accurately reflect Amy and James’ journeys, Kai’s linked journey across two different bus routes “disappears” off the radar of data surveyors when collected this way.
In the same above example, both Kai and Sarah are making a cross-island journey through the public transport system. However, only Sarah would be recognised as having made such a journey, according to the way ridership data is collected by our fare payment infrastructure.
Unlike the rail network, which only records tap-in and tap-out stations to track trips across multiple lines, bus ridership data is tied to the individual routes that make up a multi-stage journey when transfers are involved. This is simply because the mechanism of tapping in and out every time one boards a different bus registers a new ride entry in the system, rather than as a continuation of a previous ride on another bus service. (It’s unrelated to transfer rebates, which are granted to riders who fulfil valid transfer criteria. These transfer connections aren’t tracked in ridership data!)
With this caveat of ridership data in mind, it would explain a prevailing assumption being made in recent bus planning doctrine, that is made most obvious in the Tai Seng expresses. The assumption that central transport nodes are the primary focal point for travel demand, even during the peak period where much larger and diverse commuter demographics are making their journeys. This is shaped in part by an already existing hub-and-spoke network in place, but the danger of said assumption lies in it being used to intensify the hub-and-spoke effect in the public transport network with the false belief that everyone is only going to the town center, MRT station or bus interchange to make transfers.
This could possibly be why 457, 458 and 459 were designed to end abruptly at the corresponding NEL hub station in each town, and ply the most direct route possible to Tai Seng from there. For the vast majority of residents, accessing the MRT would require taking a bus to the station, and this resulted in the respective MRT station being the largest ridership data point. It is likely that planners falsely believed them to be genuine sources of point-to-point peak express buses, and hence routed them as such. But the reality check has not been kind so far.
Not enticed
More than two months after the Tai Seng expresses were launched, reception remains relatively lukewarm against the expectation of massive untapped demand for them. On-the-ground surveys conducted in the evening around mid-May suggest that 458 has the strongest ridership at slightly below 20 passengers around 6.30PM, while 459 hovers around a dozen and 457 with negligible passenger loading. If ranked together with City Direct services for bus loading, the Tai Seng expresses would rank at the bottom of the list, only barely above the worst performer (681), and 457 dead last.
For a travel pattern that overwhelms its two constituent MRT lines to the point of breaking, the slow takeup of what appears to be a convincing MRT replacement bus service is a concerning reflection of a planning miscalculation within LTA, not dissimilar to that behind the attempt to withdraw 167 in 2023. The reasons behind commuters snubbing the Tai Seng expresses are apparent, and linked to the same data blindspot mentioned above.
Where’s the value?
Sure, the Tai Seng expresses charge standard fares, unlike the City Directs’ express surcharges. But so does the MRT option. (In fact, the latter is cheaper now if one shifts their travlling time period) Effectively convincing commuters to make the switch from MRT to a bus alternative requires them to see how these bus alternatives value-add to their commute, and having these buses replicate the exact same travel pattern as does the MRT does a massive disservice that repels ridership from these new expresses. Chances are for the average northeastern office worker commuting to Tai Seng, that they have already made one transfer just to board the MRT. If both the MRT and bus options are available only from the same point, then the appeal of the bus rests solely on the travel time factor.
As demonstrated from the lacklustre reception for both the northeastern CDS splurge and the Tai Seng express buses, seat availability is a less deciding factor in commuters’ mode choice than previously thought.
The experience of crowded buses on older City Directs (652, 654, 660 etc) in highly populated areas also supports the opposing idea that straightforward, logical route designs attract riders more than one-seat rides or a guaranteed seat on board.
It is quite a basket case for the Tai Seng express buses however. As noted above, 458 attracts the strongest ridership among the three services, followed by 459 and then 457. Based on their routes, there appears to be a positive correlation between residential stop count and ridership, with 458’s 5.5 pairs of stops besides Sengkang MRT offering substantially more catchment than the 3 pairs on 459 and 2 pairs on 457.

It should be noted that the real deal-breaker in this case however is not stop count (that is the errorneous conclusion that BCEP CDS planners have gone down the road of), but rather the travel time differential between the Tai Seng express and other alternative routings. Curiously, all three routes ply Airport Road and KPE between Tai Seng and their respective towns, which (1) incurs a detour in the general route and (2) exposes these routes to snarling peak-hour KPE traffic from the city. What this means is that for shorter distances, the KPE routing lends itself to a massive disadvantage compared to other routes with a lower distance-displacement ratio (mainly going through the Serangoon corridor, be it by bus or NEL).
Factoring in additional travel time from the respective town center MRT station to commuters’ residences, where these Tai Seng express services enjoy the most success is where they can offer a significant difference in total travel time. This includes the additional (but under-considered) feeder segment where commuters ride another bus from their homes to the town center MRT station before commencing their journeys to work. Where these express services can replace the need for a transfer with a more straightforward connection as compared to a lackluster last-mile connection to the rail network, they offer the strongest value-add to commuters’ journeys, and consequently enjoy the best patronage.
458’s ridership advantage over 457 and 459 is explained largely by a weak last-mile connectivity system in Sengkang East combined with a raw travelling time almost on par with the MRT itself in total. Subsequent retraining of drivers to enter the KPE more aggressively further bolstered these travel time advantages for passengers, resulting in a further ridership boost around the start of May.
| Travelling time (PM) | By TSG express | By MRT (avg.) (CCL > NEL) | By local bus |
| 457 (Hougang) | 25 minutes | 18 minutes | 25 minutes (Service 80) |
| 458 (Sengkang) | 28 minutes | 23 minutes | 50 minutes (Service 80) |
| 459 (Punggol) | 27 minutes | 25 minutes | 55 minutes (Service 43) |
By comparison, 457 falls flat in the travel time aspect itself — it takes 25 minutes to reach Hougang. It’s no match for the MRT’s 18-minute journey already, but the shocker is that even standard bus services are not any slower than it! Local (all-stopping) service 80 serves 15 stops between Tai Seng and Hougang as opposed to 457’s three (and stops at nearly all of them during peak hours), but also takes the same 25-30 minutes to cover that distance too! Taking 80 held a higher chance of direct access to one’s home, with more potential connection points to more bus services if not with a one-seat ride.
459’s increased patronage may be attributed to major bottlenecks at Punggol Central caused by CRL construction that impact all local buses headed to Punggol MRT and interchange. In theory, the relatively straight nature of 459’s catchment corridor should mean that 459 has a much narrower edge over previous trips connecting from buses (3, 39, 83 etc) to rail. Easing of CRL construction mania in the coming years may reverse the moderate uptake seen here, with the high level of substitutability between two public transport options that offer little edge over each other.
Clearer connections, smarter planning
At this point, this is a public appeal to LTA to refine the means in which bus ridership data is stored in databases that are made available to the public. Today, ridership patterns on the rail network are well-documented and understood because a clear origin-destination pattern is established that inform data analysts (within LTA, or elsewhere) of full journeys made within the entirety of the rail network. A train ride from Tampines to Bukit Panjang is reflected as such, rather than two discontinuous rides on the EWL and DTL converging at the Bugis interchange station. Across the whole network, this gives planners a clearer idea of areas in need of network interventions to reduce overcrowding, or improve travel time. Such a level of complete data brought us to the conclusion that more orbital lines (CCL and future CRL) were necessary for public transport to remain attractive, and flagged out areas of immediate concern in northeastern and western Singapore, where the BCEP goes all out upon today.
The absence of data pertaining to linked trips for bus rides makes this process significantly harder for bus planning, which is already a task that is exponentially more challenging than rail planning due to the massive complexity of the bus network. Unlike rail ridership statistics, ridership data for buses is significantly lumpier, which makes performance thresholds much less solid than they should be for policy decisions. A difference of 30 passengers barely impacts decision-making in rail; but makes all the difference between a crowded bus and an empty one in planning bus routes. Effective bus networks, while incorporating their fair share of transfers, also work to minimise transfer count, by matching demand cycles to their corresponding ridership and hence maximising the use of limited bus resources.
Just like individual MRT lines in the rail network, individual bus routes in the network are just mere tools for people to get from point A to B. Despite Singapore’s point-to-point driven bus planning history, most journeys on public transport will still require connecting between different buses and trains, especially in areas developed in more recent years. Studying where people board and alight along just the individual routes offers insufficient insight into full travel patterns, especially for flagging out where existing public transport options are inadequate to meet residents’ travel needs.
Consider this chunk of western Sengkang and Fernvale towns opposite the Sengkang NEL and LRT depots. It’s home to a sizeable residential population, particularly in the Fernvale area where the town flanks the road on both sides heavily. Along most of this stretch, the only full-day bus services are 50 (only serves Fernvale) and 163, both of which link this road to Sengkang via different routes.

Following the currently-available data that only offers data by individual bus trips, one would spend all day analysing ridership patterns to just Sengkang MRT (and maybe Jalan Kayu / Yio Chu Kang Rd) on 50 and 163 until the cows came home. That was how City Direct 677 came about too, but I digress. All that, while a glaring obvious detail lies in the southeastern corner of the map: Buangkok MRT, which is significantly nearer and easier to reach by bus from the Fernvale belt than any route to Sengkang MRT. It would fully make sense for there to be a bus service linking Buangkok to Tongkang and Fernvale, and such a connection would be very strongly desired too due to shorter travelling times to the NEL, but one would never realise this possibility if they solely analysed bus ridership data using the current format provided by LTA through DataMall. Information about what people are transferring to after alighting their first bus ride is crucial in piecing together the full picture of how hundreds of thousands of residents make use of buses to navigate areas beyond the MRT’s reach.
Past attempts to reach out to LTA to obtain data on linked bus rides by STC Team members has been unsuccessful, and rejected by LTA on grounds of insufficiently clear research intent. We’d like to think that this information is probably just being withheld, like with most data handled by government agencies in Singapore. However, the case of the Tai Seng express buses planned with the obvious fallacy of single-route demand cycles makes us think the LTA planners are using the same flawed methods to interpret bus ridership data, and applying this faulty understanding to introduce bus services with abysmal ridership, all while siphoning resources away from other routes in need of operating resources to meet demand.

As part of this post, we implore LTA to look into making data on linked bus trips available, such that both planners and enthusiasts alike have a clearer view of how the various routes in our bus network work together to move the lion’s share of public transport riders every day. Because it makes no sense that Sarah’s journey is reflected properly by ridership data but not Kai, because one uses the train and one uses the bus.
Data-driven analysis gets blasted as cold and bureaucratic because these inadequacies obscure the complex dynamics of multi-leg public transport journeys that millions make daily to deliver results that disbenefit these riders. It should be an impetus to improve our ridership data methodology to recognise the complexity of our densely interwoven transit network, and make our complex journeys more visible in the planning calculus.
Straighter, and faster
The principal source of delay on the new express services of BCEP, be it to the CBD or Tai Seng, stem from two sources:
- Traffic congestion along expressways (much more costly to mitigate, see: bus lane implementation in Singapore)
- Right turns at traffic junctions (easier to mitigate with route design)
The second factor is a direct product of planning choices to make these express bus services twist and turn in residential estates for catchment purposes, or for linking to a pre-set node that is difficult to access due to the structure of the road network (Hougang and Sengkang MRT relative to the KPE).
The failure to reflect transfers between buses in ridership data means the inability to paint a full picture of where bus riders originate, which stifles the ability for planners to introduce relief express services that can make a significant impact on MRT crowd reduction. Where exactly are the many commuters tapping out at Tai Seng MRT coming from? We (likely) don’t know, due to limitations in the way bus ridership data is stored, unlinked between connecting trips.
I suspect however, that if we manage to clear this out of the way, then a completely different picture of demand for these expresses would emerge — one that deprioritises the hub areas around MRT stations and instead assigns higher ridership probability to areas further from the MRT, where residents must spend more time detouring to the MRT with local feeder buses. There exists an easy way to shave several minutes off the travelling time of these express buses, with no change to general routing or stop pattern otherwise. It would be to straighten them out such that they turn less and cover more area with the same distance and stop count.
Rather than attempting to reach the MRT as the ultimate goal, the Tai Seng expresses stand to enjoy stronger ridership by aiming for greater residential catchment in a straight line, offering the same time-competitive journeys to the MRT, for passengers for whom not having to reach the MRT first using another bus is a massive enhancement. For 457, that means rethinking its Hougang sector entirely. For 458, that means extending its benefits beyond the abrupt termination at Sengkang MRT to shift the balance against congested MRT journeys.
Here’s one possible suggestion for how that could play out. In the diagram below, blue lines represent amended sectors of 457 and 458, while green lines represent connecting local services for residents beyond immediate access of these services to also enjoy travel time savings towards Tai Seng.

Connecting services for 458 (left to right): 102, 50
But frankly? A routing that is more akin to an “80e” instead of a second coming of 43e would be far more effective at garnering ridership than the current KPE alignment. As shown from the comparison between 457 and 80, the Upper Serangoon corridor alignment has serious merit as a means for buses to pass between the Tai Seng and Hougang areas quickly. The experience of the former CCL Shuttles 37B and 37C have also shown that highway underpasses are massive boosts to travel time for buses, and one such example lies immediately north of Tai Seng at the Bartley Road junction. This is perhaps a topic better left for another time however.

Connecting services (in blue, from north to south): 50/85, 62, 119/136/102, 74/147, 107/112/113
Direct, version 2
We now circle back to the meme-like deluge of City Directs in northeastern Singapore. An achievement of the BCEP in the northeast thus far is the act of introducing so many City Direct services that it can be said almost without hyperbole that all of Hougang, Sengkang and Punggol are covered with City Direct routes thoroughly with no stone left unturned. It’s an extent of madness that other areas with similarly high city-bound train loading (Yishun, Jurong West, Clementi etc) can only dream of.

As of May 2026, there are a total of 57 morning trips on all northeastern City Direct services departing for the city. If put together as one fleet, they would far surpass any other regular bus service in terms of resources consumed, which also includes historically popular heavyweights such as 190 and 858, or notorious bus-hoggers like 240, 807 and 811. But when most of these buses is running more than half-empty and barely thinning the crowds on the NEL, it is time to step back and rethink the entire concept of what makes a City Direct service.
It goes without saying that insanity such as the Novena routings featured in services 681 and 683 needs to be put to a total stop, as these are utterly counterproductive towards the cause of increasing effective public transport capacity provision with limited bus and rail resources available. So must the unnatural obsession with Suntec City, which registers a disproportionately small share of City Direct ridership despite more than two years of service history, by which commuter habits have expected to been solidified. Really, there is no need to send literally every f*cking BCEP City Direct to Suntec City! Did they bribe the LTA planners or something?
With obvious largesse out of the way, the next major area to attack is the overstretched nature of the City Direct network in the residential portion, even in the northeast where the need for it is the highest. Is there a way to get more out of our City Direct system (and similar peak-only express routes) as a means of decongesting other rail and bus routes, without turning into a bottomless resource pit with no limit to politically-driven overindulgence?
Some might notice the concept of making use of connections from existing bus services to streamlined versions of these peak expresses from the example of the Tai Seng expresses above. This strategy maximises service area while maintaining a steadily advantageous travel time compared to other bus and rail options. In the aforementioned case of Tai Seng-bound expresses, this comes down to at most a minor route adjustment as their residential routes are already relatively straight and short. For the legacy and BCEP-era City Direct services characterised by excessively winding long routes within residential areas, a lot of work can be done to make them really appeal to residents in the northeast more strongly.
The Punggol area is home to four CDS routes (pre-BCEP 666, BCEP-era 673, 678 and 683), operating a total of nine trips per day. Despite these modest stats (relative to whatever the hell is going on in Sengkang and Fernvale), their daily ridership remains at the lower end of all the CDS routes, each carrying fewer than 100 passengers every weekday excepting 678. Due to the way Punggol is laid out, with a rectangular layout amalgamated with numerous cul-de-sac precincts, all four of them are characterised by loopy residential routes that remind one of snail spirals or rollercoaster rides. It goes without saying that it takes practically forever to exit the town if boarding from the start of these routes, which is why they’re basically ferrying almost pure air until the last few stops.
A straightened-out City Direct for Punggol would make use of key population axes in the town to serve housing precincts in a direct and straightforward manner, thus greatly reducing travel time within the residential sector and enhancing the effectiveness of the CDS route for more passengers (instead of those nearest the expressway, as it is today). By itself, the straighter route has less immediate catchment than the current design of winding residential routes for City Directs and similar peak express bus services. To the credit of the status quo’s defenders, that’s true. However, we note that these CDS services do not exist in a vacuum, unlike what’s being assumed by planners based on how thoroughly they’ve covered the map with CDS routes.
Bus is not just for travelling to MRT station
However much of a disadvantage the northeast has in terms of connectivity offered by regular (trunk, feeder, long feeder) buses, they still exist in sufficient quantity (ie route count x frequency) to serve the role of connecting residents to these straightened express services along main corridors within HDB towns. These can be local trunk services passing through the town, or segments of feeder / long feeder routes that anchor far-flung precincts to these major road corridors where express services can be consolidated around. It is these connecting local bus services that massively expand the effective catchment of bus routes intended for fast travel with one convenient transfer at the same stop. With these local bus connections being relatively frequent during peak hours (about every 6 to 10 minutes), the penalty of not having a one-seat ride is greatly mitigated.
Back to the Punggol example above. Here’s what a “consolidated” City Direct routing could look like, utilising the New Punggol Road axis connecting the new Northshore town to the older Punggol area and through to the TPE towards the city. Compared to the current 666, 673 and 683, this route might not directly touch the doorsteps of as many residents, but is accessible to a much larger portion of Punggol town with the help of connecting local services that enable residents further away to access this super-fast express service. In the following image, green lines and arrows indicate connections from existing (ie no other changes to current bus network needed!) local buses in Sengkang and Punggol to this proposed express bus axis.

With only six residential stops in total (seven if the recently-announced upcoming Punggol East TPE bus stop is included), this is a significant reduction from the 12 or so stops on the heartland sectors of all three existing City Direct services. Serving the hub stop along the TPE off Punggol Road further expands the effective catchment of this new route to even include parts of Punggol West and Sengkang (through services 27, 88, 89/e, 110 and 118), something that would be unthinkable under the planning methodology of the existing City Direct services. Further connections from 3, 83 and 136 expand the catchment to include the current catchment of 666 and 683 in Punggol East, while 34 brings in passengers from as far as the Nibong and Sumang areas. (It might be faster for them to take 84 or 104 up to the starting point in Northshore, depending on the specific origin point)
In the context of underutilised City Direct services that carry far too few people to justify their existence in the mid to long term, their low frequency (15 minutes and above) already means that transferring from a higher-frequency local bus to a consolidated routing would actually be significantly faster than the status quo with long winding residential routes, after also taking into account the massive travel time reductions that straightening out CDS routes can offer!
Sometimes, it gets forgotten that local buses can also connect different parts of the same town, and the purpose of the bus is not solely for connecting homes with MRT stations. Smartly using these connections, particularly the empty reverse peak direction to nudge commuters towards much express services made more attractive with massive travel time enhancements, makes for a much more rational use of limited bus resources to redistribute saturated passenger loads across the overall public transport system.
Where to?
As much as the BCEP is oriented towards improving coverage outcomes for our public transport, the experiences of new city Directs launched thus far under its name clearly demonstrate that blindly throwing buses is no fix for capacity and connectivity shortfalls, even in areas where rail utilisation has gone beyond saturation point. We may not be footing the bill today in direct monetary terms, but its costs in reduced service on regular routes can already be felt today, much less the massive opportunity cost in operating expenditure that could have been used to operate more useful routes that did more towards building network redundancy.
The City Direct branding turns 13 years old this year, and yet in a rather ironic twist, they have not exactly been very direct all these years with their long, squiggly routings in the heartlands and recently the city too. Historically, the interpretation of “direct” in the services’ branding was that of ensuring everyone along such routes was given a one-seat ride to their workplace in the CBD. A diversifying range of travel needs that CDS routes are expected to fulfil is stretching this model to its limit, conceptually at the planning level and literally in terms of the routes themselves. We propose a different interpretation of the word “direct” — for these valuable express routes to ply the fastest, most straightforward routes possible to gain a highly competitive edge in travel time while maintaining a high level of accessibility for residents in target housing estates. That would mean having to look at how City Directs fit together with the larger bus network in their service area, instead of just immediate route catchment analysis.
Our old 2022 article proposed upgrading City Direct routes to full-day operations. Would it work with the new model of CDS planning? Not for all routes, but the massive increase in usefulness of having a fast and straightforward express bus service integrated with connecting routes would build a stronger ridership case for a longer operating span than their current peak-only windows. And because faster bus services require fewer buses to operate, it might just push the cost-balance equilibrium of full-day citybound express buses under the CDS branding into the narrow window of operational viability!
To be able to visualise bus ridership as part of the larger network rather than just on the individual route network however, would mean that serious effort must be put into rethinking how ridership data is collected, stored and processed in our databases. Are multi-stage journeys discrete trips on different routes with no relation, or part of larger picture telling the more complete story of how people navigate between buses and trains to get where they need to go? Some form of signposting connections between buses and rail in ridership data should be established at the bare minimum to ensure planners make informed decisions with consideration of how people move across our imperfect network, and where the latter needs to be strengthened.
Let’s make emphasising the “direct” part of the City Direct branding a priority of bus reorganisation under the BCEP in the new era!
Interested in building a better future for Singapore’s transport? Join the STC community on Discord today!


Leave a comment