"Expensive trains" seem in style, for whatever reason. There are routes that run buses every 4 minutes here. There are other routes that run every 10m, with electric buses on caternary wires. I'll take a good bus line over a non-existent rail line any day. I love trains but if bus lanes and BRT infra are politically expedient, good enough for me.
Because a bus lane is actually a really cheap train. Construction costs are minimal, your "stations" are generally unmanned, and cheap, and if you need to reroute for construction it generally is much less a big deal. There is basically no point at which subway tracks are cheaper than BRT.
The big issue with the Cheap Trains of busses is the lack of commitment that is otherwise nice for transit authorities is not an advantage for real estate. BRT just doesn't indicate commitment to the route enough to really boost property. This is why even though tram lines are basically just busses that can't get out of the way they have a much more marked effect on real estate and neighborhood development.
Tram tracks last about 35 years here in Zurich, but some of the hotspots have to be redone every 8 years. It also heavily depends on the type of trams you‘re running.
Trains are going to beat buses on cost per passenger mile on any decently trafficked route, generally to the point of covering their own operating costs.
You don't have to go straight to subway. Surface light rail can use the same stops as buses. All you need is to lay rails on the street, and you get transit that is vastly more comfortable and inviting than buses.
Setting up dedicated lanes and then running a bus on them is just a waste.
Right of way is the majority of the cost, but grade separation is really, really important. If you don't grade separate, every grey crossing is 1 dead person a year, and likely 2 or 3 car crashes[1]. Idiot drivers just can't be trusted around trains, and billing them damages doesn't prevent the issue from recurring (usually just drives people to bankruptcy).
What we can do is steal some of Portland's better ideas, and put up a green wall on either side of the tracks with shrubbery, bollards at every grey crossing (and gates on the pedestrian crossings) to separate the tracks cost effectively.
We can keep the body count low and trains timely, if we change minor things to effectively separate the rail from other modes of transit.
A bus every 4 minutes is still generally cheaper (and lower capacity) than a tram or high frequency commuter rail.
For instance, here there are a couple of bus routes which do every 6 minutes or so at peak times; each bus takes 80 people. However, the tram lines run every 4 minutes at peak times; each tram takes 360 people.