The map, chart and table below are an interactive view of real-time data for MBTA buses that you may use to explore the recent performance of various bus routes. Further explanation may be found at the bottom of the page.
The real-time data published by the MBTA offers us an opportunity to answer questions about bus performance using our own methods and tools. The first question is: what to measure? We believe that the metric selected should reflect the experience of bus riders as directly as possible: because the bus system exists first and foremost to serve people. Now, we all probably have an idea of what using the bus system feels like, but how do we put that into terms that can be quantified and analyzed? We have selected a metric that we believe will best capture the experience of a typical bus rider: it is called “Weighted Real Headway”. The idea is to use the real-time positional data published by the MBTA to figure out how the average rider perceives the gaps between bus arrivals at selected bus stops.
Frequent bus service is usually scheduled to arrive at predetermined intervals, also known as “headways”. For example, the Route 71 bus is scheduled to arrive at bus stops every 10 minutes during the morning rush hours. Bus riders expect to be able to walk up to any bus stop along the route and experience no more than a 10 minute gap between bus arrivals. Now, we could use the real-time data to find out how many buses arrive in the span of an hour. But, suppose all 6 buses show up within the course of 10 minutes, and then leave over a 50 minute gap in service before the next bus arrives. That would be unacceptable to riders, but it would be rated a perfect score if you only used “Average Headway” as a metric. That’s because 60 minutes divided by 6 buses still results in “10 minutes” as an average headway, even if they are distributed in such a skewed manner. Clearly, that is not a useful metric.
Instead, we want to give weight to the fact that all of the riders who show up during such a 50 minute gap are experiencing terrible service in that instance. So, the “Weight” in “Weighted Real Headway” refers to the number of bus riders who experience a given gap. The longer the gap, the more bus riders will show up, and therefore the heavier the weight. Thus, if the 71 bus has a 50 minute gap in service, that worsens the “Weighted Real Headway” considerably more than a set of closely-bunched buses helps it.
This is a good metric for quantifying the negative effects of bus bunching on the typical rider experience. Therefore, we use it to “score” the performance of various bus routes during stretches of real time, every day. The score is the ratio of the “Scheduled Headway” to the “Weighted Real Headway”, expressed as a percentage. A score of 100% means that the buses have largely been able to maintain their scheduled gaps during that period of time. A score less than 100% means that there was a longer than desired gap in service between bus arrivals. It is possible to have a score greater than 100%, which means that the buses arrived more often than strictly necessary and did not have a bad gap.
The map, chart and table above all work together to display this information. The map shows the bus stop locations that were analyzed. Specific time periods with regular service were selected for each bus route by examining the published schedule. The time periods have been split into three categories for clarity: morning, afternoon and evening. You can click on a time period and then select one or more bus stops by clicking on the map markers. Once you do that, a chart will pop up and show you the performance of those buses over the past 30 days (weekends and holidays excluded). Each point on the chart represents a single day’s measurements: you can click on the points for more information. The lines drawn horizontally across the chart represent the average score of all the points.
Below the chart is a table that contains most of the same information, but in textual format. The table starts off showing all of the data: but as you make selections above, it focuses more narrowly on your choices. You may sort the table by clicking on the header of each of the columns: the first click sorts by increasing order, the second click sorts by decreasing order. You may also retrieve a log of bus arrivals by clicking on a particular row of the table: that will list for you the bus arrivals during that time period so that you may see the source of the numbers used for the score.
Please explore and let us know about any questions or comments.
Disclaimer: This tool is experimental and for informational use only. Please bear with us. Also note that it is possible for bus information to be missing from the MBTA real-time data feed, and although the occurrence of that is rare, it may explain certain gaps. We have made an attempt to discard as much bad or corrupt data as we have been able to detect.
Update: If you revisit this page and the data appears to be old, try using the Reload button on your browser to refresh it.