Transport for London (TfL) Live Status Scraper
Pricing
from $29.25 / 1,000 results
Transport for London (TfL) Live Status Scraper
Scrape live Transport for London status: Tube, DLR, Overground, Elizabeth line, Bus, and Cycle line statuses; current disruptions; and station catalogues. Filter by transit mode.
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
13 days ago
Last modified
Categories
Share

🚦 TfL London Live Status Scraper
🚀 Export Transport for London's live status feed in seconds. Per-line service health for the Tube, Overground, Elizabeth line, DLR, buses, trams, river bus, cable car, and Santander Cycles, plus current disruptions and the full station catalogue. No sign-up, no manual scraping.
🕒 Last updated: 2026-05-15 · 📊 Up to 42 fields per record · 🚇 10 transport modes · 🌐 All London zones · 🟢 Live status feed
The TfL London Live Status Scraper exports the official Transport for London live status feed and returns up to 42 fields per record, depending on whether you fetch line statuses, disruptions, or station catalogues. The TfL feed is the canonical reference for London transit and powers Citymapper, the official TfL Go app, and dozens of accessibility and journalism projects.
The catalogue covers 10 transport modes across every London travel zone: London Underground (Tube), DLR, London Overground, Elizabeth line, National Rail services managed by TfL, the bus network, trams, river bus, the IFS Cloud cable car, and Santander Cycles. This Actor makes the live feed downloadable as CSV, Excel, JSON, or XML in under a minute. Filtering by transport mode runs server-side.
| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| London transit-app developers, accessibility advocates, urban-planning teams, real-estate platforms, journalism teams, mobility researchers | Live service-status widgets, disruption alerts, station-accessibility audits, commuter dashboards, real-estate transit scoring, transport-equity research |
📋 What the TfL London Live Status Scraper does
Three data modes, each across 10 transport modes:
- 🚇 Line status. Service health per line, with severity codes (1-20), human-readable descriptions, and active disruptions.
- ⚠️ Disruptions. Current incidents with category, description, affected routes, affected stops, and last-update time.
- 🚉 Stations. Full catalogue with NaPTAN IDs, lat/lon, accessibility info (lifts, boarding ramps, toilets, cash machines), and modes served.
Filter every mode by transport mode (Tube, DLR, Overground, Elizabeth line, National Rail, bus, tram, river bus, cable car, cycle).
💡 Why it matters: TfL serves more than 4 million weekday journeys. Live status data powers commuter apps, accessibility scoring, and journalism on service equity. Building your own pipeline means juggling multiple TfL data products and reconciling status codes. This Actor skips all of that.
🎬 Full Demo
🚧 Coming soon: a 3-minute walkthrough showing live Tube line status pushed to Slack.
⚙️ Input
| Input | Type | Default | Behavior |
|---|---|---|---|
| maxItems | integer | 10 | Records to return. Free plan caps at 10, paid plan at 1,000,000. |
| mode | string | "line-status" | One of line-status, disruptions, stations. |
| transportMode | string | "tube" | Restrict to one of 10 TfL transport modes. |
Example: live Tube line status.
{"maxItems": 20,"mode": "line-status","transportMode": "tube"}
Example: current Elizabeth line disruptions.
{"maxItems": 50,"mode": "disruptions","transportMode": "elizabeth-line"}
⚠️ Good to Know: TfL severity codes range from 1 (closed) to 20 (good service). The 14 standard codes map roughly to "Closed", "Suspended", "Part Suspended", "Planned Closure", "Part Closure", "Severe Delays", "Reduced Service", "Bus Service", "Minor Delays", "Good Service", and a few rarely used codes. The Actor surfaces the raw severity number plus the official description.
📊 Output
Each record contains up to 42 fields depending on the mode you choose. Download as CSV, Excel, JSON, or XML.
🧾 Schema (representative subset by mode)
| Field | Type | Where it appears | Example |
|---|---|---|---|
🆔 id | string | all | "victoria", "940GZZLUVIC", "alert-12345" |
📌 name | string | all | "Victoria" |
🚇 modeName | string | line-status, stations | "tube" |
🔗 url | string | null | line-status, disruptions | "https://tfl.gov.uk/tube/status" |
🔴 statusSeverity | number | line-status | 10 |
🚦 statusSeverityDescription | string | line-status | "Good Service" |
🚦 hasActiveDisruption | boolean | line-status | false |
📝 reason | string | null | line-status, disruptions | "Severe delays due to a signal failure at Oxford Circus" |
🏷️ disruptionCategory | string | null | disruptions | "RealTime" |
📝 disruptionDescription | string | disruptions | "Severe delays..." |
📦 lineStatuses | array | line-status | nested status entries |
📦 affectedRoutes | array | disruptions | route IDs and names |
📦 affectedStops | array | disruptions | stop IDs and names |
🆔 naptanId | string | stations | "940GZZLUVIC" |
📍 latitude | number | stations | 51.4961 |
📍 longitude | number | stations | -0.144 |
🚇 modes | array | stations | ["tube", "national-rail"] |
♿ lifts | string | null | stations | "Step-free interchange" |
🚻 toilets | string | null | stations | "Available with disabled access" |
💵 cashMachines | string | null | stations | "In ticket hall" |
♿ boardingRamps | string | null | stations | "Manual boarding ramp" |
📦 lineGroups | array | stations | grouped lines per platform |
🕒 snapshotTime | ISO 8601 | all | "2026-05-15T18:32:11.000Z" |
📦 Sample records
✨ Why choose this Actor
| Capability | |
|---|---|
| 🚇 | Ten transport modes. Tube, Overground, Elizabeth line, DLR, National Rail, bus, tram, river bus, cable car, cycle. |
| 📡 | Live every run. Status, disruptions, and station data reflect the latest TfL snapshot. |
| 🎯 | Three data modes. Line status, disruptions, stations, all from one Actor. |
| ♿ | Accessibility ready. Lifts, boarding ramps, toilets, and step-free flags on every station. |
| 🔍 | Server-side filters. Restrict by transport mode in one click. |
| ⚡ | Fast. Status for every Tube line in under five seconds. |
| 🚫 | No sign-up. Works against the public TfL live status feed. |
📊 The TfL feed is the data layer behind every commuter app, accessibility audit, and London transit-equity investigation.
📈 How it compares to alternatives
| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| ⭐ TfL London Live Status Scraper (this Actor) | $5 free credit, then pay-per-use | All TfL modes | Live per run | mode, transport mode | ⚡ 2 min |
| Manual TfL Tube status page | Free | Tube only | Live | None | 🚫 Not bulk-friendly |
| Scrape + parse + maintain | Free time | Variable | Manual | None | 🐢 Hours |
| Commercial transit APIs | $99+/month | Multi-city | Live | Many | ⏳ Integration |
Pick this Actor when you want filtered, structured TfL data without writing scrapers or paying for a multi-city aggregator.
🚀 How to use
- 📝 Sign up. Create a free account with $5 credit (takes 2 minutes).
- 🌐 Open the Actor. Go to the TfL London Live Status Scraper page on the Apify Store.
- 🎯 Set input. Pick a data mode (line status, disruptions, stations) and a transport mode.
- 🚀 Run it. Click Start and let the Actor pull the live feed.
- 📥 Download. Grab your results in the Dataset tab as CSV, Excel, JSON, or XML.
⏱️ Total time from signup to downloaded TfL feed: 3-5 minutes. No coding required.
💼 Business use cases
🔌 Automating TfL London Live Status Scraper
Control the scraper programmatically for scheduled runs and pipeline integrations:
- 🟢 Node.js. Install the
apify-clientNPM package. - 🐍 Python. Use the
apify-clientPyPI package. - 📚 See the Apify documentation for full details.
The Apify Schedules feature lets you trigger this Actor every minute (status), every five minutes (disruptions), or daily (station catalogue refresh).
🌟 Beyond business use cases
Live transit data powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.
🤖 Ask an AI assistant about this scraper
Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:
- 💬 ChatGPT
- 🧠 Claude
- 🔍 Perplexity
- 🅒 Copilot
❓ Frequently Asked Questions
🧩 How does it work?
Pick one of three data modes, choose a transport mode, and run. The Actor pulls the official TfL live status feed and writes one clean record per line, disruption, or station.
📏 How accurate is the data?
Data mirrors the official TfL feed exactly. Line statuses update within minutes of operational changes. Disruptions reflect TfL's own controllers in real time.
🔁 How fresh are the line statuses and disruptions?
Live. Each Actor run snapshots the current state, so back-to-back runs return updated severity codes and disruption descriptions.
🚇 Which transport modes are covered?
All ten TfL modes: Tube (London Underground), DLR, London Overground, Elizabeth line, TfL-managed National Rail services, bus, tram, river bus, IFS Cloud cable car, and Santander Cycles.
🔢 What do the severity codes mean?
The standard scale runs from 1 (Closed) to 20 (Good Service), covering closures, severe delays, reduced service, minor delays, and good service. Each record includes a human-readable description alongside the code.
⏰ Can I schedule regular runs?
Yes. Use Apify Schedules to refresh status every minute, disruptions every five minutes, or station catalogue daily.
⚖️ Is this data legal to use?
Yes. TfL publishes its live status feed under permissive open-data terms. Attribution to TfL is required.
💼 Can I use this data commercially?
Yes. TfL welcomes commercial use of its open data for transit apps, journalism, and analytics. Verify the latest terms in TfL's data policy.
💳 Do I need a paid Apify plan to use this Actor?
No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit and unlocks scheduling.
♿ Are accessibility flags included?
Yes. Station records include lifts, boarding ramps, toilets, and step-free interchange information when TfL publishes them.
🆘 What if I need help?
Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.
🔌 Integrate with any app
TfL London Live Status Scraper connects to any cloud service via Apify integrations:
- Make - Automate multi-step workflows
- Zapier - Connect with 5,000+ apps
- Slack - Push delays and disruptions to channels
- Airbyte - Pipe transit data into your warehouse
- GitHub - Trigger runs from commits and releases
- Google Drive - Export datasets straight to Sheets
You can also use webhooks to trigger downstream actions when a run finishes. Push disruption alerts into a workplace stack, or stream daily station snapshots into a dashboard.
🔗 Recommended Actors
- 🚇 MBTA Live Transit Scraper - Boston transit routes, stops, vehicles, and predictions
- 🗺️ OSRM Routing Scraper - Driving, cycling, and walking routes anywhere
- 🌍 Carbon Intensity UK Scraper - UK grid carbon intensity in gCO2/kWh
- 🗺️ Nominatim OSM Scraper - Geocode addresses via OpenStreetMap
- 📰 Guardian Article Search Scraper - Search The Guardian's full article archive
💡 Pro Tip: browse the complete ParseForge collection for more transit and UK-data scrapers.
🆘 Need Help? Open our contact form to request a new scraper, propose a custom data project, or report an issue.
⚠️ Disclaimer: this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Transport for London or any of its affiliates. All trademarks mentioned are the property of their respective owners. Only publicly available open transit data is collected.