TfL London Live Status Scraper
Pricing
from $29.25 / 1,000 results
TfL London Live Status Scraper
Scrapes live Transport for London status data. Returns line service health, disruptions, stations with NaPTAN codes, Santander Cycles dock occupancy, air quality forecasts, and vehicle arrivals as flat rows. No key required.
Pricing
from $29.25 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
14 days ago
Last modified
Categories
Share
TfL London Live Status Scraper
Scrape live Transport for London (TfL) status for every line, station, bike-point, and car park, up to a million items per run. Each record returns real-time service health, active disruptions, vehicle arrivals, and dock occupancy. No API key required. Export to CSV, JSON, Excel, or XML.
The TfL Unified API needs key registration and rate limits that slow down bulk collection. This Actor reads the public live data feeds directly and returns line-status, disruptions, station catalogues, Santander Cycles dock occupancy, air-quality forecasts, and car-park occupancy in one fixed schema. Choose a mode, set a transport mode filter, and collect exactly the slice of London transport data you need.
| Who uses it | What they scrape Transport for London (TfL) for |
|---|---|
| Commuter app builders | Feeding a mobile app with per-line service status and live arrival counts. |
| Data journalists | Tracking disruption frequency and severity across London's transport network over time. |
| City planners | Analysing station catalogue completeness and NaPTAN code distribution for accessibility studies. |
| Mobility researchers | Measuring Santander Cycles dock occupancy and air-quality forecasts against neighbourhood demand. |
What it does
This Actor collects live Transport for London data by mode (line status, disruptions, stations, arrivals, bike points, air quality, or car park occupancy) and returns each item as a flat row.
- π Seven data modes: line-status, disruptions, stations, arrivals, bike-points, air-quality, and car-park occupancy, each with a flat row schema.
- π Transport mode filter: limit results to Tube, DLR, Overground, Elizabeth line, National Rail, Bus, Tram, River Bus, Cable Car, or Cycle, or fan out across all modes.
- π Station catalogue with NaPTAN: every station record includes its national public transport access node identifier for mapping and integration.
- π² Santander Cycles dock occupancy: live bike and empty dock counts for every docking station in London.
- π¬οΈ Air-quality forecast: the daily London air-quality band and pollution summary from the TfL data feed.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with Transport for London (TfL) data
π± Populate a London travel app.
A developer runs the line-status mode daily to feed service health, disruptions, and arrival counts into a passenger-facing mobile application.
π° Monitor disruption patterns for reporting.
A journalist runs the disruptions mode weekly against all modes, then charts incident frequency by line and severity level for a city-mobility story.
π² Balance cycle-hire dock distribution.
An operations analyst runs bike-points mode every 30 minutes to detect docks running empty or full and inform redistribution vans.
πΊοΈ Build a station accessibility map.
A city planner runs stations mode once, extracts NaPTAN codes and geolocations, then joins the catalogue against step-free access datasets.
π«οΈ Track London air quality by zone.
A researcher runs air-quality mode daily and saves each forecast row to a time-series database for correlation with traffic and health data.
Why choose this scraper
| What you get | |
|---|---|
| No API key needed | Accesses public TfL data feeds directly with zero registration or OAuth setup. |
| Fixed flat schema | Every mode returns the same structured output format ready for SQL, BigQuery, or Excel. |
| All transport modes | Covers every TfL mode including River Bus, Cable Car, and Cycle, not rail and bus. |
How it compares
This Actor covers every TfL live data mode in one tool, including bike-points, air quality, and car-park occupancy, which competing TfL scrapers do not list.
| Feature | ParseForge | TfL London Scraper - Live Transport Data | TfL Service Status Scraper - London Transport Data |
|---|---|---|---|
| Line status (per-line service health) | Yes, across all TfL modes | Yes | Yes |
| Live vehicle arrivals by line | Yes, with lineId parameter | Yes | Not listed |
| Station catalogue with NaPTAN codes | Yes | Not listed | Not listed |
| Santander Cycles dock occupancy | Yes | Not listed | Not listed |
| London air-quality forecast | Yes | Not listed | Not listed |
| Car-park occupancy | Yes | Not listed | Not listed |
Configure the run
Drive the Actor by choosing a data mode, optionally filtering by transport mode, then set a line ID for arrivals or a maximum item count to control run size. Filters apply as each record is read, so only matched items reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{"maxItems": 10}
A larger pull:
{"maxItems": 200}
Pricing
Pay-per-result: $0.039 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $3.90 |
| 1,000 results | $39.00 |
| 10,000 results | $390.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the TfL London Live Status Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to Transport for London (TfL) through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/tfl-london-status-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting zero results?
Check that your transport mode filter matches the data mode. For example, station data exists for Tube but not for River Bus. Try running with 'All modes' first, then narrow down.
The arrivals mode returns an error.
Arrivals mode requires a valid lineId. Make sure you have provided an ID like 'northern' or 'bakerloo' in the Line ID field. You can get a full list of line IDs from a line-status run.
Some lines are missing from my line-status run.
If you set transportMode to a single mode, only lines from that mode appear. Set it to 'All modes' to collect every line, including Elizabeth line, Tram, and Cable Car.
The dataset columns don't match what I expected.
Each data mode returns a different flat schema. Check you have selected the correct mode in the input. Mode 'line-status' returns service health fields, while 'bike-points' returns dock counts.
My run times out before collecting all stations.
The stations catalogue is finite. Set maxItems to 2000 and transportMode to 'All modes', then increase the run timeout in the Apify actor settings if necessary.
FAQ
| Question | Answer |
|---|---|
| Do I need a TfL API key to use this Actor? | No. It reads public TfL data feeds directly, so there is no registration, OAuth, or key management required. |
| Which transport modes are supported? | All TfL modes: Tube, DLR, London Overground, Elizabeth line, National Rail, Bus, Tram, River Bus, IFS Cloud Cable Car, and Santander Cycles. You can select one mode or all modes. |
| Can I get live vehicle arrivals? | Yes. Set the mode to arrivals and provide a line ID like 'central' or 'jubilee'. The Actor returns the next vehicles with expected arrival times. |
| Does this scraper return station NaPTAN codes? | Yes. The stations mode includes the full National Public Transport Access Node identifier for every station, useful for mapping and data joining. |
| How often can I run the disruptions mode? | As often as your schedule permits. There is no source rate limit, but we recommend running it every few minutes to capture fresh incidents without unnecessary duplication. |
| What does the bike-points mode return? | It returns every Santander Cycles docking station with its current bike count, empty dock count, location, and dock ID from the live TfL feed. |
| Can I scrape air-quality data for London? | Yes. The air-quality mode returns the daily London-wide and site-specific air-quality forecast, including pollution bands and text summaries. |
| What is the maximum items I can scrape per run? | You can set maxItems up to 1,000,000. For line-status or stations, set it higher than the number of expected lines or stations to collect everything in one run. |
| How do I get line status for only Tube lines? | Set mode to 'line-status' and transportMode to 'tube'. The Actor returns service health for every London Underground line as separate flat rows. |
| Can I export the data to CSV? | Yes. Like all Apify Actors, you can export the dataset to CSV, JSON, Excel, XML, and other formats directly from the run console. |
Related actors
Browse the full ParseForge collection for more scrapers.
π Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
β οΈ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Transport for London. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
