The Formula for Frequent Transit Networks

As I’m working on refining a concrete map for Brooklyn buses, I’m implementing the following formula:

Daily service hours * average speed per hour = daily frequencies * network length

In this post I’m going to go over what this formula really means and where it is relevant.

Operating costs

The left-hand side represents costs. The operating costs of buses are proportional to time, not distance. A few independent American industry sources state that about 75-80% of the cost of bus service is the driver’s wage; these include Jarrett Walker as well as a look at the payrolls in Chicago. The remaining costs are fuel, which in a congested city tracks time more than distance (because if buses run slow it’s because of stop-and-go traffic and idling at stops or red lights), and maintenance, which tracks a combination of time and distance because acceleration and braking cycles stress the engine.

This means that the number of service hours is fixed as part of the budget. My understanding is that the number in Brooklyn is 10,000 per weekday. I have seen five different sources about bus speeds and service provision in New York (or Brooklyn) and each disagrees with the others; the range of hours is between 9,500 and 12,500 depending on source, and the range of average speeds is between 9.7 km/h (imputed from the NTD and TransitCenter’s API) and 11 km/h (taken from schedules). The speed and hours figures are not inversely correlated, so some sources believe there are more service-km than others.

On a rail network, the same formula applies but the left-hand side should directly include service-kilometers, since rail operating costs (such as maintenance and energy) are much more distance- than time-dependent; only the driver’s wage is time-dependent, and the driver’s wage is a small share of the variable costs of rail operations.

Creating more service

Note that on a bus network, the implication of the formula is that higher speed is equivalent to more service-hours. My current belief, based on the higher numbers taken from schedules, is that 14 km/h is a realistic average speed for a reformed bus network: it’s somewhat lower than the average scheduled speed of the B44 SBS and somewhat higher than that of the B46 SBS, and overall the network should have somewhat denser stop spacing than SBS but also higher-quality bus lanes canceling out with it. The problem is that it’s not clear that SBS actually averages 14 km/h; my other sources for these two routes are in the 12-13 km/h range, and I don’t yet know what is correct. This is on top of the fact that faster transit attracts more paying riders.

Another way to create more service is to reduce deadheading and turnaround times. This is difficult. Bus depots are not sited based on optimal service. They are land-intensive and polluting and end up in the geographic and socioeconomic fringes of the city. The largest bus depot in New York (named after TWU founder Mike Quill) is in Hudson Yards, but predates the redevelopment of the area. In Brooklyn the largest depots appear to be East New York (more or less the poorest neighborhood in the city) and Jackie Gleason (sandwiched between a subway railyard and a cemetery). Figuring out how to route the buses in a way that lets them begin or end near a depot so as to reduce deadheading is not an easy task, but can squeeze more revenue-hours out of an operating cost formula that is really about total hours including turnaround time and non-revenue moves.

Service provision

The right-hand side of the equation describes how much service is provided. The network length is just the combined length of all routes. Daily frequency is measured in the average number of trips per day, which is not an easily understandable metric, so it’s better to convert it to actual frequencies:

Frequency Daily trips
15 minutes 6 am-9 pm, 30 minutes otherwise 5-1 am 70
15 minutes 24/7 96
5 minutes 7-9 am, 5-7 pm, 10 minutes otherwise 6 am-10 pm, 30 minutes 10 pm-12 am 124
5 minutes 7-9 am, 5-7 pm, 7.5 minutes otherwise 6 am-10 pm, 15 minutes 10 pm-12 am, 30 minutes overnight 164
6 minutes 6 am-10 pm, 10 minutes otherwise 5-12 am, 30 minutes overnight 188
5 minutes 6 am-10 pm, 10 minutes otherwise 5-12 am, 20 minutes overnight 228
3 minutes 7-9 am, 5-7 pm, 5 minutes otherwise 6 am-10 pm, 10 minutes otherwise 5-12 am, 20 minutes overnight 260

Daily trips are given per direction; for trips in both directions, multiply by 2. There are internal tradeoffs to each number of daily trips between peak and off-peak frequency and between midday frequency and span. But for the most part the tradeoff is between the average number of daily trips per route and the total route-length. This is the quantitative version of Jarrett’s frequency-coverage tradeoff. In reality it’s somewhat more complicated – for example, average speeds are lower at the peak than off-peak and lower in the CBD than outside the CBD, so in practice adding more crosstown routes with high off-peak frequency costs less than providing the same number of revenue-km on peaky CBD-bound buses.

It’s also important to understand that this calculation only really works for frequent transit, defined to be such that the ratio of the turnaround time to the frequency and length of each route is small. On low-frequency routes, or routes that are so short that their total length is a small multiple of the headway, the analysis must be discrete rather than continuous, aiming to get the one-way trip time plus turnaround time (including schedule padding) to be an even multiple of the headway, to avoid wasting time. On regional rail, which often has trains coming every half hour on outer tails and which is much more precisely scheduled than a street bus ever could be, it’s better to instead get the length of every route from the pulse point to the outer end to be an integer or half-integer multiple of the clockface headway minus the turnaround time.

Where is New York?

All of my numbers for New York so far should be viewed as true up to a fudge factor of 10-15% in each direction, as  my source datasets disagree. But right now, Brooklyn has about 10,500 revenue-hours per weekday (slightly more on a school day, slightly fewer on a non-school day) and an average speed of about 10.5 km/h, for a total of 110,000 revenue-km. Its bus network is 550 km long, counting local and limited versions of the same bus route as a single route but counting two bus routes that interline (such as the B67 and B69) separately; interlining is uncommon in Brooklyn, and removing it only shortens the network by a few km. This means that the average bus gets 200 runs per day, or 100 per direction.

Based on the above table, 100 runs per direction implies a frequency somewhat worse than every 5 minutes peak and every 10 off-peak. This indeed appears to be the case – nearly half of Brooklyn’s network by length has off-peak weekday frequency between 10 and 15 minutes, and the median is 12. At the peak, the median frequency, again by route-length, is 7 minutes. 7 minutes peak, 12 off-peak with some extra evening and night service works out to just less than 100 runs a day in each direction.

This exercise demonstrates the need to both shrink the network via rationalization to reduce the number of route-km and increase speed to raise the left-hand side of the equation. SBS treatments increased the speed on the B44 and B46 by 30-40% relative to the locals (not the limiteds), but just keeping the network as is would onl permit 130-140 buses per weekday per direction, which is more frequency but not a lot of frequency. The 7.5-minute standard that appears to be used in Toronto and Vancouver requires more; Barcelona’s range of 3-8 minutes implies an average of 5-6 and requires even more.

Where could New York be?

It’s definitely possible to get the number of daily frequencies on the average Brooklyn bus route to more than 200 in each direction. In Manhattan this appears true as well (the big question is whether the avenues can get two-way service), and in the Bronx 250 is easy. But even 200 in Brooklyn (which implies perhaps 350 km of network) requires some nontrivial choices about which routes get buses and which don’t, cutting some buses that are too close to other routes or to the subway. I’m not committing to anything yet because the margin calls happen entirely within the 10-15% fudge factor in my datasets.

The main reason I post this now is that I believe the formula is of general interest. In any city that wants to rationalize its transit system (bus or rail), the formula is a useful construction for the tradeoffs involved in transit provision. You can look at the formula and understand why some systems choose to branch: at the same average frequency the busiest parts of the network would get more service. You can also understand why some systems choose not to branch: at some ranges of frequency, the outer ends would get so little frequency that it would discourage ridership.

What is high frequency?

I’m using 5-6 minutes as a placeholder value beyond which there’s no point in raising frequency if there’s no capacity crunch. This isn’t quite true – on a 15-minute bus trip, going from 6 minutes between buses to 3 is a 14% cut in worst-case trip time including wait – but at this point higher frequency is at best a second-order factor. It’s not like now, when going from 15 minutes to 6 would reduce the worst-case trip time on the same bus trip by 30%.

The actual values depend on trip length. An intercontinental flight every hour is frequent; a regional train every hour is infrequent; a city bus every hour might as well not exist. One fortunate consequence is that bus trips tend to be shorter in precisely the cities that can most afford to run intensive service: dense cities with large rail networks for the buses to feed. New York’s average NYCT bus trip (excluding express buses) is 3.5 km; Chicago’s is 4.1 km; Los Angeles’s is 6.7 km. Los Angeles can’t afford to run 6-minute service on its grid routes, but trips are long enough that 10-minute service may be good enough to start attracting riders who are not too poor to own a car.


  1. Diego Beghin

    Why are you calling it “average speed per hour” and not just “average speed”?

    • Alon Levy

      Because I’m multiplying by daily service-hours and not just daily service-time, and I want the dimensional analysis to work so I need the units to cancel out.

      • Diego Beghin

        Ok, so I’m not understanding the difference between service-time and service-hours. The dimensional analysis looked fine to me: time*speed on the left, length on the right.

        • Diego Beghin

          Wait, disregard my previous comments, I see what you meant now. I thought speed per hour was some weird acceleration-like quantity but you just meabt mph or km/h as opposed to m/s

      • Eric

        Might be clearer with explicit units:

        Daily service time (hours) * average speed (km/hour) = daily frequency (# trips) * network length (km)
        Daily service time (hours/day) * average speed (km/hour) = daily frequency (# trips/day) * network length (km)

        • Diego Beghin

          It was probably clear to most people, it’s just my physicist brain was more willing to entertain the weird unit of km/h^2, and I was searching hard for a way to make it make sense…

          • Kevin

            What am I missing here re: units, as they still don’t appear to work out. In the first option, we are left with “km” on the left and “trip-km” on the right, and in the second option we are left with “km/day” on the left and “trip-km/day” on the right. The units must be equivalent on each side of the equation.

  2. HerkimerSnediker

    Since Daily Service Hours is itself a calculated amount how about including it in your master equation?

    Allotted Funding / (Cost per Hour) = Daily Service Hours, therefore

    Allotted Funding / (Cost per Hour) * average speed per hour = daily frequencies * network length

    or restated to get all variables affecting Frequencies on the same side:

    Daily Frequencies = (Allotted Funding / (Cost per Hour) * Average Speed per Hour) / Network Length

    This isn’t just because of all the times I got marked down in algebra class for “not showing all my work” even when my answer was right; it shows all the ways to increase frequency more clearly.

    • Alon Levy

      Because cost per hour is very hard to change. You can reduce it on the margins by rationalizing maintenance: Chicago employs 1/3 fewer maintenance workers per service hour than NYCT, since it buys buses on a regular cycle so that every year 1/12 of the buses are new, 1/12 are to be replaced, 1/12 undergo mid-life refurbishment, etc. NYCT’s purchase cycle is irregular so it has waves of mid-life refurbishment requiring more workers. However, maintenance itself is a small minority of bus operating costs: NYCT has 12,000 bus drivers and 3,700 maintenance workers.

      You can also make bus driving more efficient by reducing deadheading. However, that is a second-order effect. In Chicago, drivers spend 24% longer hours behind the wheel in revenue service per year than in New York. And even this is a larger difference than I can ascribe purely to deadheading, which is around 12% of Brooklyn NYCT bus-km.

      You can always cut wages, but wages are set by the market. Even with the TWU around, the actual wages and benefits do not seem above the market rate; there isn’t a wave of people clamoring to work as bus drivers, and in Boston (where bus drivers earn even more in base salary than at NYCT) there are serious problems with retention. Driving a bus is not easy work, so you can’t pay people the same salary as you would for a retail job, and when the labor market is strong, people will look for work elsewhere.

      • johndmuller

        These numbers – 12,000 drivers and 3,700 maintenance workers – stick in my craw for some reason; I guess it strikes me that that’s a lot of maintenance workers for the implied number of buses.

        I suppose you have the number of buses somewhere, but back of the envelope-wise, since the same bus can get driven by multiple drivers, there should almost certainly be fewer buses than drivers. So picking a number, say 7,400 buses, as a convenient starting point for this envelope, that would mean that there are two buses per worker. Do you really think that each bus gets that much attention?

        Obviously there are number of different kinds of maintenance that gets done and each kind has its own specialist kind of maintenance worker, but suppose we had a staff of complete generalists, who were able to do all of the necessary functions; would they need to spend half their time on just one bus?

        Besides cleaning, which probably gets in actuality less than an hour’s worth of work per bus per day, what else is there that even has to be done every day? Mechanical work is the only other big thing I could think of and even given that buses are driven a huge amount more and harder than one’s personal car, my experience with cars is that a couple of days a year in the shop is plenty, with probably only a handful or less of hours billed. Do these buses need several hundred or a thousand times as much attention as a regular car?

        Something seems fishy here with the numbers and it is not that scads of unnecessary repairs and gold plating are being done, as the condition of the average bus would all too readily attest.

        • Alon Levy

          In Chicago the maintenance worker : driver ratio is lower, about 1:4.

          The total number of local buses on NYCT is 3,800. All MTA buses together is 5,700, including express buses (which are horrifically inefficient) and MTA Bus Company buses (which can be either local or express, they’re just ancestrally different from NYCT buses and have different garages but offer the same experience to the customer). In Chicago it’s 1,100 maintenance workers and 1,900 buses.

          Buses need more attention than cars, yes. For one, the average car gets about 13,000 km of usage in a year around here and 20,000 km in the US. The average NYCT local bus gets 37,000, all in heavy city traffic with lots of acceleration and braking cycles (whereas something like 1/3 of US v-km are on Interstates, and a lot more are on state freeways and high-speed divided highways). For two, buses are bigger than cars, so the same maintenance work requires more people than a car.

          • johndmuller

            I don’t think you’ve really made a dent, so to speak, in the apparent oversupply of maintenance workers. So a bus is 4 or 5 times the size of a car and so it is driven twice as much; some would argue (maybe poorly) that all their auto mileage is in bad conditions versus only about 50% for a bus, but even given that, there are still 1 or 2 orders of magnitude difference in the maintenance hours.

            Maybe if you could say that the drivers numbers were all just drivers, while the maintenance workers included supervisors and other overhead, then perhaps you could knock off 20% of the maintenance workers for the purposes of this comparison, but you’s still be far away. Even if half the workers in Chicago were really dead people, you’ve still got a lot to explain. I don’t see even ridiculous levels of goldbricking explaining away enough.

            I don’t know that this is worth making a big deal about, but if most of the costs in the system have such large credibility gaps maybe things are much more totally out of control than I would have believed. Makes you wonder why they couldn’t find any more dead bus drivers or phantom buses to justify such overkill in maintenance. Maybe they need to hire some more imaginary book cookers to make the numbers gel better.

          • Alon Levy

            Okay, let’s talk in cost figures. The AAA claims that the maintenance cost of a new car is $99/month (link). So, about $1,200 a year, for a car that costs maybe $25,000.

            Now, the cost of a US bus is on the order of $500,000. So, $24,000/year, scaled to US car maintenance costs. Maintenance workers make a few times that amount counting benefits, but remember that buses drive longer distances than cars by a factor of around 2, and also last 12 years whereas the AAA numbers are for a car under 5 years old; a decent proportion (I don’t know exactly how high) of the cost of bus maintenance is mid-life refurbishment at 6 years, which is not done for cars because they’re downcycled to people who drive beaters.

          • adirondacker12800

            How many times a year do you have to have your brakes inspected? Or all the other things they have to inspect and test on a bus that is being used in public transport?

          • johndmuller

            Well Alon, I’ll have to say that you made a more serious dent this time, although I think you loaded the dice in a couple of areas – (a) I think that you would get a lot more car than $25K for $523/month payment, and (b) In the fine print they disavowed most of that $99/month maintenance charge by not counting the new car warranty which they said would cover the first 3 years – each of those adjustments are approximate factors of 2, so that takes some of the shine off your arguments for increased maintenance costs.

            I’ve got to give you the mid life crisis overhaul and the probability that an aging bus would be more of a maintenance hog than an aging car, at least in the 10-15 year ballpark.

            I still can’t get beyond the fact that you’ve got a dedicated half-time worker for each bus every day, and two dedicated drivers to report problems to him/her. The guy/lady could arguably take the whole bus apart and rebuild it multiple times each year with all that time. You can make the money say one thing, and only maybe at that, but the argument of the one bus and the dedicated one half worker is hard to shout down.

          • Alon Levy

            Wait, but the $99/month cost still gets paid – it’s just that if you have warranty then it gets folded into the price of the car.

            But I will definitely try to look up headcounts for maintenance workers outside the US. I just don’t think it’ll be a big difference; operating costs on first-world subways vary by a factor of 2, not 20.

          • Michael James

            The number of maintenance workers does seem high. You must be right about NYC’s lack of a regular steady replacement strategy costing them compared to Chicago–and the real cost might be that they have unpredictable maintenance with a ageing fleet and very mixed fleet, thus excess workers to cope with erratic breakdowns; there are probably a lot of times when a lot of these workers are sitting around doing nothing. It would be interesting to see what other big cities have, including in Europe and Japan, or Curitiba even.

            At any rate, I assume that this will be a big factor in driving (sic) a change to all-electric (battery) buses because they should slash the maintenance cost, as well as save on fuel costs and even things like brake-pad replacement (these e-buses will certainly use regenerative braking) and general efficiency (far fewer breakdowns in service). Electric buses won’t need to match the capital cost of existing diesel or natural-gas buses for them to be economic to buy and run. And being the way these things happen (when the bean-counters realise it adds up), it will probably be a rush in total fleet replacement in a short period, ie. not waiting the decades for natural end-of-life replacement.

          • Alon Levy

            I think the economics of battery-electric buses are better here than in New York, actually. The battery degrades in the cold, and the winters here aren’t as harsh; moreover, thanks to high density and heavy diesel usage, air pollution here is among the worst in Europe, and on some winter days you can smell the diesel pollution in the air.

          • Alex B.

            “So a bus is 4 or 5 times the size of a car and so it is driven twice as much; some would argue (maybe poorly) that all their auto mileage is in bad conditions versus only about 50% for a bus, but even given that, there are still 1 or 2 orders of magnitude difference in the maintenance hours.”

            A full 40′ transit bus is going to be 10x the weight of an SUV; even an empty one will still weigh 10x that of a Honda Civic. And both are still just two-axle vehicles. That weight difference alone means more wear and tear on the various parts, particularly given relatively hard miles on city streets.

            Plus, you have more stringent standards for safety, including daily inspections, etc.

          • adirondacker12800

            Charging and discharging a battery isn’t 100 % efficient. The battery will keep itself warm. It’s why most electric cars have active cooling systems for the battery. Even if the battery is cold on Monday morning, using it will warm it up relatively fast. If they don’t use the active cooling system to manage keeping it warm. Or give it a booster charge an hour before it’s due to go out.

          • johndmuller

            Alex B., when I was talking about size, I was talking about area, from the point of view of cleaning the floor, not that there is any way to compare cleaning a car with cleaning a bus. Regarding weight, you didn’t exaggerate too much, although I wondered why you needed to use an SUV for you full load comparison and a Civic for you empty one (until I realized that you must know that one can fit 100 Clowns into a Honda Civic and that would expose a bad comparison for you).

            There’re a couple of problems with the weight issue. First, the buses are built especially to do what they do – carry people – and so they have got heavy duty suspensions and axles and what-not designed to hold up to this sort of thing and that is already built into the price of the bus. Second, even if the various parts of the suspension need to be replaced multiple times, the bus is presumably designed to make this relatively easy to do and would barely dip into our dedicated one half worker’s available time of nearly 40,000 hours per year. How many shock absorbers do you want to change at 1 hour apiece?

            The weight issue seems reasonable to discuss, but like everything else, it seems to be just a drop in the bucket compared to the available worker time. It just seems hard to balance the labor books without assuming massive amounts of sitting around or lots of phony workers drawing paychecks for no actual work.

          • johndmuller

            Correction on my number of hours per year – should be 1000, not 40000.
            (40 hours per week times 50 weeks = 2000 hours dived by 2 buses = 1000)

          • adirondacker12800

            Still haven’t told us how many times a year you have your car’s brakes inspected and how much time you have to spend to file the paperwork that it’s been done.

  3. adirondacker12800

    some buses that are too close to other routes or to the subway.

    Pesky passengers. Taking the bus when you think they should be taking the subway. Or a bus that is closer that you find offensive. You want nice on time performance, move all the buses to Staten Island, they can cruise up and down the West Shore Expressway, without any passengers, very very frequently. It would make reading the bus map very easy. Passengers, sheesh.

      • adirondacker12800

        A very cursory glance at the map, some of them are so busy they get SBS service in addition to local service.

        • Alon Levy

          Um, no. Two routes in Brooklyn have SBS overlays: Utica and Nostrand. Nostrand is in no way, shape, or form a subway duplicator; the subway runs under a short stretch in the middle, but doesn’t extend as far as Sheepshead Bay and doesn’t easily connect to Williamsburg at the B44’s northern end.

          The actual subway duplicators are the B25 (100% a goner if the subway is accessible and even given that it still isn’t it may go), B37 (lolzy ridership), B63 (decent but not amazing ridership and the subway connections aren’t great), and maybe B65 (really weak ridership, and the next route over, the B45, isn’t that strong either). These radial routes into Downtown Brooklyn are really slow, too – the B63 has the lowest average speed in Brooklyn at noon and the B25 has the fifth slowest.

          • JD

            The subway duplication discussion is interesting. As somebody who lives by the B37 and N/R subway, the bus service is so abysmal that timewise, it usually makes more sense to go the subway rather than wait for a bus. This of course perpetuates the service decline. My elderly relatives and neighbors strongly prefer the bus, as do most parents with strollers, since the bus is much easier to board than going up and down subway stairs. Interestingly, when you mention the B63, its ridership is better because it runs about every 6 – 10 minutes, despite spending most of the day wading through horrible traffic on 5th avenue, while the B37 runs 2x an hour, and often much less on weekends. Even on weekdays, when I prefer to take the B37 one mile to drop off my toddler at daycare, it is usually quicker to walk that distance than wait for one bus, at 8am. On weekends, a peak time for shopping and when the disrupted subway service would (presumably) increase demand for buses, there will usually be only be one or two B37s on the whole line, leading to hour plus waits. Quicker to walk if you are able bodied, or call a car service if not. I think the MTA does this intentionally, so they can have a low ridership line to kill the next time a budget cut is needed. After all, the B37 was cut previously, and I don’t think service has ever recovered.

          • Alon Levy

            Yeah, I’m trying to figure out whether there’s real difference in demand along 3rd and 5th or whether it’s just an artifact of higher frequency on the B63. In Bay Ridge the development intensity along the two streets looks similar, but then when 3rd is next to the Gowanus Expressway it’s not a pleasant environment and its west side is almost entirely industrial.

    • Alon Levy

      Yes, to a large extent. Sandy Johnston suggests air rights.

      For what it’s worth, over here there’s a bus maintenance depot in the same building as the Ministry of the Interior. I don’t know how polluting the buses here are; they can’t be worse than in New York because Paris’s air pollution problems come from diesel cars whereas American buses (unlike cars) are already diesel-powered. But this maintenance depot is also much smaller in physical size than New York’s sprawling bus depots – maybe it’s just maintenance, or maybe it only shunts a handful of routes (Paris has a pretty small bus network intra muros).

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.