It's certainly a cool map and useful to get a general idea how many trains are around at any given time, but it's important to note that this is not real data. They use the train schedule combined with the projected delay to estimate track location. I'm not sure if it's because SBB has an interest in keeping reported delays low or if they think exposing real data is a security risk, but I noticed the data being fake on several occasions, for example:
- My train wasn't able to continue its journey and was stuck between two stations for a few minutes while the map showed it continue to the next few stations up until the point where it started moving again, when their App also showed it running with a delay of 8min.
- On several occasions: watching the map show a train roll into the station and driving off, while seeing from my window that the train is only just arriving when the map shows it as between stations already.
You are right, the devs says that the vehicle positions are estimated from the official timetable and real-time GTFS-RT delay information, rather than from publicly available GPS coordinates.
There is definitely some smoke and mirrors to this. I watched a stationary train next to me get about a kilometre away before it started moving in real life.
> Signalbox's technology identifies the train a device is on by matching a snapshot of smartphone data to a train’s trajectory data. The technology uses advanced algorithms works even with severely degraded data. We are able to pinpoint a smartphone to any type of train without background location tracking or hardware.
It works fairly well empirically: my 7yo likes to watch trains and we regularly use this map to know when to expect one to pass. Not perfect, but pretty good
"Acquired by Trainline in 2023, Signalbox works with organisations across the rail ecosystem to improve customer information and operational awareness."
So, we don't know if this is the case, but one way to do this is not to ask the phones but the cells. The mobile network has to know where the phones are by cell; the cells are often small relative to the speed of the train; there are also cells installed specifically to improve service on trains, or provide a base station to the train wifi, or for communications to railway staff.
If you get a bunch of phones switching cell near simultaneously, you can tell that a train movement across the cell boundary has probably happened. Then correlate that with the other data feed about train blocks, and bob's your uncle.
Few questions, wonder if anyone knows the answers:
1. So it's Trainline on a persons phone that is tracking this info and using it to enrich this service? I use Trainline and didn't know it was doing that, but I do have location permissions on because I was told that powered the search picker when I started using the app.
2. What did they use _before_ Trainline? Or was Trainline selling user location data to them?
I think you're misunderstanding what they are saying. They don't use background location data, but they do use your current location data. Try the "Find My Train" demo on their site - it asks for location permission.
Or their API - it also expects device location data:
> At a minimum, requests to the detect endpoint _must_ contain a device's location measurement. Additional fields can be included where available to improve the accuracy of the returned results as outlined below.
You are giving it to them. That's why the demo asks for your location permission, and that's why the API expects location info.
"You" here means another app that integrates their API (or you as an individual using the demo on their website). How the other app gets it is up to the other app - ideally it also just queries it directly and requires location permission.
Not sure how you came to that conclusion. An empty train would still exist in the live train data. It does not depend on mobile phones, but on rail signals and other such tracking built into the rail infrastructure.
I looked into the gtfs (gtfs.org) a while ago. This is a data feed format (protobuf based) that a lot of sites like this use for both schedules and real time updates that is pretty widely adopted. Most gtfs location feeds require getting an API key. But there are a handful of public ones that share actual location updates without that.
This is also how e.g. Google maps and others integrate schedule information for public transport as well.
Building a map from the real time updates is relatively straight foward once you have access.
GTFS is widely adopted, "standardized", but also quite a wild west when it comes to the actual details. I've been building http://mobility-bot.com/ as a spare time project for two years, parsing the alerts GTFS feeds from a handful of providers, and for just about every one of them, I have to do something in the pipeline to clean up the provided data - fixing unicode issues, remapping route and agency IDs, rewriting headers and descriptions to not be identical, etc. You also have to watch and capture the data over time to make sure you have a corpus to generalize parsing and cleanup rules from.
Most of these projects made the smart choice to focus on a single or just a small handful of related providers. As soon as you're trying to aggregate, the problem becomes a lot trickier.
Note that carto.tchoo does not provide real position in real-time: it only has access to departures, stops, delays and suppressions and interpolate position based on this.
This means that if your train is running at half-speed or stopped but does not result in an official delay, the position will not match reality.
Is the interesting part the upvotes, meaning there's more people interested in UK train networks than French ones ? And it's a comment on demographics ?
Or is the interesting part that the UK one is real-time, and the French one isn't (or at least, zooming in, I don't see them moving).
suggests the data mostly comes from railway signalling information, plus a bit of "AI" in some way. I wonder how far apart railway signals usually are, or what the AI is trained on, or anything really vs just looking at a map.
I've tried building one of these and the answer is - it's difficult.
There is a message queue that you can use to identify the last reported location of a train. Depending on the line you could get a pretty accurate real-time map (but first you need to georeference all of the location identifiers to eastings/northings.)
But many lines report only the last movement at a station stop - these are mostly in rural areas so the best approach seems to be to build some sort of dead-reckoning network taking into account train type and network utilisation.
> I wonder how far apart railway signals usually are
It varies substantially across the network, dependent on the mode of operation of the signalling, the desired headway, the maximum operating speed, the service braking distance of the rolling stock at line speed, factors in the layout that might influence safety (e.g. junctions), the number of colour lights used on signal heads (i.e. 2, 3 or 4 colour lights), signal sighting distance, whether signal visibility might be affected by sun glare, etc. And of course this assumes that the area is actually using line-side signals – most of the network does, but there's notable exceptions using in-cab signalling or computer-based train control.
> suggests the data mostly comes from railway signalling information, plus a bit of "AI" in some way
I'm in no way affiliated with the website, but in areas that follow track circuit block principles (much of the heavily-used main GB railway network, excluding many more lightly-used outlying lines), the "signalling information" that article indicates the site derives from is almost certainly Network Rail's Train Describer (TD) feed. This feed reports the headcodes for signalling berths across the layout. The signalling system will normally step headcodes automatically as the train activates successive track circuits or operates axle counters in the track.
The Train Describer can only report headcodes in berths, and berths might be quite long! It certainly doesn't provide second-by-second train progress, so this site's mapping engine is likely doing some proprietary interpolation to make the train position indicators appear to "move" in real time to give the illusion of trains making progress. (Whatever the inputs to their algorithm/model are, their calling it "AI" loses all technical specificity.) This interpolation may be based on line speed, perhaps the observed average time a headcode normally remains in a given berth, allowing them to derive a typical 'average speed' for that berth or section.
If it was me designing this, I'd expect a mixture of the train class, the rolling stock and line speed to give a good estimator of the train's current position in block. You then have to make a product decision to decide what to do if you miscalculated train position – do you make staccato jumps of the train position indicators on the map if you got it wrong, or do you somehow try to smooth your error out over another period to avoid indicators suddenly moving?
In other areas of the country, train position may be reported by GPS on equipped units, or in some areas, the passage of trains is dependent on manual reports by the signaller, so the map may not have much real-time data to infer train position from. I find it highly unlikely that they're deriving much accurate data in real time from smartphone apps, but it could be a (noisy, incomplete) set of inputs to improve their model of how trains typically make progress through particular berths.
If you’d like to take a look at how one of the older Victorian mechanical signal boxes on this map (still) work, I can wholeheartedly recommend Tom Scott’s recent video on signalling in Britain [1].
This only seems to be standard overground trains. If you add in metro networks like the London tube, or light rail / trams like in Manchester, then you’d get at least hundreds more.
The map includes metros across the Tyne and Wear Metro in NE England, and while its not perfect, it's by far the most useful train live tracking I've ever seen. There's quite a few places in the UK with different rail systems that don't fit together (and have apps of varying quality/usefulness)
Dutch (and Dutch-bound) rail network overview: https://treinposities.nl/
And the equivalent for buses: https://busposities.nl/
Not all of them have GPS trackers, so some positions are guessed.
There's functionality for this in the official Dutch Railways app, but it looks like they didn't bother putting that onto their website. There is a common source of open data for most of these details, but I don't find the docs to be very complete.
Very nice! I’m making one for NYC subway. It’s still in-progress and animations need a lot more work. Next steps was to adjust the size and overlay it on a proper map.
This is great - thank you! There is no background map (Firefox) but its still very clear and fun.
PS. If you are taking a feature request, I immediately double-clicked on my line to try to focus only on that (i.e. hide all the other lines). So that might be useful for others.
Are the trains located where the urban areas are, or are the urban areas built around the train network?
It's chicken and egg question, but in Manchester and London it's very clear that mass transit led to urban development, rather than the other way around.
It's very surprising that cities like Leeds have no mass transit at all, and sizeable cities like Liverpool and Birmingham don't have much.
is a train from Cambridge to Kings Cross - and in the side panel it shows it as calling at the new Cambridge South station. But Cambridge South isn't shown on the map. That's kinda understandable (because it opened a week ago), but Cambridge North (which opened in 2017) also isn't shown on the map. Neither are offered in any of the auto-complete dropdowns?
I'm wondering if the station data a static dataset which hasn't been updated in a long time?
It's probably a static feed, and they've probably had to do some lifting to define the layout and map that to the raw data they get from Network Rail, and they've probably not updated it for newly opened stations. There is a station near me that's been open for many years that isn't shown there either.
There are many different alphabet-soup coding systems used across Network Rail, retailing systems, and the wider railway industry to identify locations on the network. Station names will often be different in different databases; look at any station with an apostrophe in and you'll find it inconsistently named in different places.
Yeah it only seems to show small station near me, and not the main city stations, not sure why but it's very incomplete, and not related to age. For example Sheffield station isn't on the map, and that opened in 1870.
- So for some stations (most?) it shows that all trains go to the selected station, nowhere else.
- Also the search show only one station at a time instead of the multiple that could match the search. And even if we typed the whole station name, it might match another station, which mean the station is not selectable at all.
My back button is actually a triangle at the bottom left of my Android screen so I don't think that works, but it's a great hack to know for desktop and I'll remember it! Much obliged
It's pretty good, my 16 y.o. son will be stuck in it for many hours. I like that you can select a train and see its stops. It would be equally awesome to select a station and see the train arrivals/departures board.
very cool. Unrelated but anytime im looking at a map be it city roads, rails subway, etc i wish there was a way to filter the layers based on construction date.
I would like to be able to see when each road/section was built. I assume with GoogleEarth and other databases it should be possible to run some kind changelog comparison and do this at scale for at least the last 20 years or so.
I can tell it's not accurate because it has half the trains marked as on time.
Reality is far more depressing. You'd also need to add ghostly white for cancelled and bus icons for replacement buses. Why do I live here god. Why can't we have a functional train network like literally any other civilised country.
More than half of British trains do run exactly on time (within the scheduled minute). It's quite high — over 65%. Over 85% arrive within three.
It's a bit massaged in some cases e.g. Transpennine, who have only recently been forced to stop abusing P-coding to pre-cancel trains that would have been significantly delayed. So I think those figures may take a dip.
But re: civilised countries: Germany's rail service is effectively significantly less punctual than ours; regional services are OK, about as good as ours, but if you need a longer haul service for any part of your journey you will have a very much worse experience. France is a bit more punctual on long-haul, I think; they average better within-the-minute punctuality on TGV, but regionally it is not better than the UK, it is worse. Italy (in some senses the most civilised country on earth) has poor train reliability.
Delays on UK networks are in many case due to very fundamental, long term issues that are hard to resolve. Rural lines that are single-track for geographic reasons, for example — where it's a choice of either single track or no train. And there are some absolutely pathological problems like the Borough Market Junction, which has been a cause of severe structural delays for about 140 years, in part because the only way to solve it is to destroy historic parts of London.
I personally do not think delays are the biggest problem in UK rail; ticket prices are. The slow return of train services to various forms of public ownership may help there, but we need the ROSCOs too. We need to stop what privatisation did. Perhaps we will.
Some ticket prices are crazy, but the issue is a lot of trains are already very busy especially at the weekends, even with those prices.
If trains were made cheaper, some of them would become extremely unpleasant to use. In an ideal world, we'd have both more capacity on the busy routes and cheaper tickets, but that will need a lot more work than just nationalising the train companies.
(Or just fewer people would solve all these problems, but that doesn't look likely to happen...)
> If trains were made cheaper, some of them would become extremely unpleasant to use.
Yes, it is a fact of modern life that one reason there's no political will to reduce ticket prices is that it's an effective pricing mechanism for limiting demand or pushing travellers to other modes of transport to avoid further overcrowding – as perverse as that sounds for a rail network.
A couple of obvious observations:
* Does not include Northern Ireland or the Isle of Man, both of which have notable rail networks (as they are not in GB).
* Does not include heritage railways. There are a number of other railways on here which are not marked but offer tourist travel.
For the similarly confused: it displays times in your local browser time zone, not the time zone of the actual train. I'm pretty sure this is an oversight since there's no universe in which I want train times not in their native time zone.
I remember my colleague from MFF UK, Robert Babilon, producing his first real-time map of Czech trains in 2004.
The page, called Babitron, still exists and still keeps that delightful 2004 look. I visited it a few days ago. Unfortunately today there is a message "We are moving Babitron to a different server", so the link isn't working.
Not affiliated with the site, but it's almost certainly just the Train Describer feed from Network Rail to observe headcodes stepping through berths, and then doing some proprietary interpolation within berths to guess where the trains are, probably using fairly coarse inputs like train class, rolling stock type and line speed. It's possible it's not even doing that, and they have just built a model that observes typical passage times between berths and they average that out.
TRUST (reporting system that describes train movements as they've happened) does accept updates by means other than the Train Describer, which might include GPS if the unit is equipped, and in many areas is dependent on signallers making manual reports (which may not be made immediately). They might also use TRUST as a data source, especially in non-Track Circuit Block areas. The rate of GPS updates is not going to be anywhere near as frequent as those train position indicators that appear to move here in "real time" across the map, so however they combine data sources, their site is trying to be clever in guessing train location.
It goes without saying: this sort of map is highly likely to be wildly inaccurate and isn't useful for anything safety-critical.
Do trains have real time position sensing and reporting now? Feels to me like that should be something that could (and should) have been done 20 years ago at least. You don't even need GPS - even wheel-based odometry should work very well. Visual odometry can be used to detect wheels slipping if necessary. Hell you could probably count sleepers.
Newer fleets will have GPS units on board that report back to Control, but it's not universal and I don't believe there are industry-wide standards or APIs. Signalbox is definitely extrapolating from TD/TRUST/Darwin, not GPS reports.
I live next to a railway line so I'm in the (not particularly unique, and definitely not enviable) position to compare what's on the map to "IRL" trains, and I can tell you it's as good as useless.
- Trains appearing on the map that aren't anywhere to be seen on the tracks.
- Trains on the tracks that don't appear on the map.
- Trains moving away from the station that according to the timetable view shouldn't have left the station yet.
- Trains on the map seemingly stopping and changing direction, only to reverse course once again.
The map shows a single line segment for what is in fact a multi-line stretch of railway. That's okay as a simplification (I guess), but the icons aren't pinned to the line, so appear to be driving off the track, or even on the adjacent street.
As for realtime - even if the data was accurate and timely, a 2Hz refresh rate most definitely isn't realtime.
Sorry if it seems like I'm shitting on it - it's a fun toy, but I wouldn't depend on it for anything important.
I'm also close enough to a railway line to see the trains. There are two lines near us - a fast line (that I can see) and a slow line on the other side of the estate. The map showed a train moving (quickly) on the slow line, at just about the time I saw it fly past out my window. So it isn't even accurate as to which line the train is on.
Possibly useful as a funky station arrival board, but overlaying that data on an actual map is a bit misleading.
There's no way its input data is anywhere near adequate for the rate the position indicators refresh, so it's taking some base data and then just... guessing the rest.
>it's a fun toy, but I wouldn't depend on it for anything important.
This could be said for the rail network as a whole.
Neglect and underinvestment over the last 60+ years has left it in a sorry state, and debacles such as HS2 show how government has no ability to deliver proper material upgrades to the ageing infrastructure and service. The direction of travel (scuse the pun) has been clear since the Beeching cuts: roads are the priority. Add to that Neoliberal divestment policies and we end up where we are today: overcrowded, filthy, ugly trains barely fit for cattle transport and chronically understaffed stations and train crews. Not to mention the extortionate prices for a ticket to travel on the network.
I adore rail travel, but dread the necessity of using it any time I go on a journey.
Perhaps I’m going mad based off the praise heaped in other responses, but - something seems wildly off with the locations?
I just witnessed a London Liverpool street service plough through the M25 motorway - about 40 miles south of it's typical route and 5 miles south of the nearest actual railway.
Dozens of the trains seem to be traversing through the English channel/La Manche towards the north sea.
In fact the number of trains actually tracking a rail line (and this is outside of the cities where the tube/metro might obscure this) seems in the minority. Most seem to be going straight through the middle of farmers fields on some obscure course unrelated to theirs.
How is it surveillance for an organization that operates a fleet of trains, to know where the trains are?
Even if there were no such thing as GPS, simply the act of running a fleet of trains or trucks or buses on a schedule, means that anyone could do a bit of math and roughly calculate the position of every vehicle based solely on the schedule.
This information is derived from open signalling data, which the signalling system _has_ to track to operate trains safely and identify their locations.
The reality is the illusion of pinpoint accuracy is a figment of this site's imagination; this site is using some creative license to guess the precise location of trains.
I could also mention Manx Railways, which are historic heritage lines, but there are at least three railway lines there that are mostly used by tourists and some commuters.
The Isle of Man has a curious relationship with the UK. As a Manxman once said to me, the government there is British when it feels like it and not British when it feels like it.
It's a reference to the murder of Henry Nowak, a sad example of knife crime which exists in the uk, and of individual police officers who failed to render basic first aid.
The family not only lost their son, but then had to see his name used to further the global hatred of the farage types
And if you check on/off the other options, you get way more informations.
https://maps.trafimage.ch/ch.sbb.netzkarte?lang=en&baselayer...
reply