I’ve frequently been puzzled by the predictions at a particular stop on the 97 bus route:
You’ll see something like that at many times of the day. But 97 Bus timetable - Transport for London tells us that route 97 is supposedly a frequent service:
So, anybody looking at the stop prediction would conclude that three consecutive buses (at about 1, 8 and 15 minutes) had been cancelled. And yet, if we stand at the bus stop, we will almost certainly find that a bus will arrive within 6 to 9 minutes. It’s a reliable service, but the API doesn’t give that impression.
More puzzling: look simultaneously at the prediction for the previous bus stop:
Observe: stop 3 is expecting a bus LX08AAU in 4 minutes, but it’s not predicted to arrive at stop 4 at all.
How does that happen? A possible clue is the vehicle prediction:
Compare that with the prediction for the other vehicle:
We see AAY has predictions for the next 30 minutes, but it seems that AAU is only going as far as stop 3.
Very strange. A 97 bus is predicted to come out of the terminal with apparently Stratford as its destination, yet isn’t going beyond the 3rd stop. So let’s watch AAU at 1 minute intervals and see where it does go …
5 minutes later:
It’s still predicted to arrive at stop 3, but nowhere else and stop 4 confirms it’s not expected there:
One minute later, the API finally works out where the bus is going next: nowhere
And finally it catches up, as the bus apparently reaches its 5th stop:
Meanwhile, stop 3 has never shown that bus as arriving and is now showing:
But … wait a minute, what happened to AAY which was showing to arrive at stop 3 when we checked it a few minutes back?
A captured screenshot of that vehicle a few minutes earlier showed this:
At that time, the vehicle would have been about to arrive at stop “-1” (the last stop on the way to the terminus), stay there for 19 minutes and then leave, to arrive at stop 4 at 11:36.
But now it’s now not predicted to travel past stop 2:
We can imagine that there might be reasons for a bus not to be able to leave on time – perhaps, the next driver fails to arrive. But is there really a circumstance where a vehicle can sensibly be predicted to leave its depot on time, yet not go beyond the second stop?
OK, let’s watch it a while longer:
All this time, we’re showing that there will be “no buses” for the next 20+ minutes:
And the predictions stop:
with still no sign of AAY at stop 4:
And then suddenly, with just seconds to spare, AAY is predicted again:
and it has finally figured out it’s going where a 97 bus is supposed to be going:
And, surprise, surprise. it’s likely to arrive at 11:36 at stop 4, which is exactly when we first thought but didn’t have the confidence to continue showing it.
All of the above makes the arrival predictions on the early part of the 97 route totally worthless. I could give a lot more examples, but that would be tedious. Observe that even in the last prediction, there is a gaping hole between 0 minutes and 17 minutes where almost certainly a third “lost” bus ought to be predicted.
The weird thing is that the same doesn’t seem to happen on the 297 route from Waltham Cross, which also has a frequent service interval of about 7 minutes.
Something is clearly very “97 specific” about this problem.
Info: All examples are for yesterday (8th March)
Results interpreted from
- “https://api.tfl.gov.uk/Vehicle/” + vehicleId + “/Arrivals”
- “https://api.tfl.gov.uk//StopPoint/” + stopID + “/Arrivals”