OpenF1 Formula 1 Telemetry Scraper
Pricing
from $13.00 / 1,000 result items
OpenF1 Formula 1 Telemetry Scraper
Export Formula 1 sessions, drivers, laps, pit stops, intervals, weather, and live car telemetry from the OpenF1 live data source. Filter by year, session, driver, and meeting to get historical and live F1 race data.
Pricing
from $13.00 / 1,000 result items
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share

ποΈ OpenF1 Formula 1 Telemetry Scraper
π Export Formula 1 sessions, laps, telemetry, weather, and team radio in seconds. Pull historical and live F1 data from 2023 onwards across 12 data modes, filterable by year, session, driver, and meeting. No API key, no registration, no scraping browser.
π Last updated: 2026-05-22 Β· π 50+ fields per record Β· ποΈ 12 data modes Β· π 2023-present coverage Β· π every race weekend
The OpenF1 Formula 1 Telemetry Scraper exports the open F1 live data catalog and returns up to 50+ structured fields per record across sessions, race weekends, drivers, laps, intervals, pit stops, weather, in-car telemetry, tyre stints, position changes, race control messages, and team radio recordings. The underlying feed mirrors the official Formula 1 timing stream and has been one of the most cited open motorsport sources since 2023.
Coverage spans every Grand Prix weekend from the 2023 season onwards, including Sprint Saturdays, Sprint Shootouts, qualifying sessions, free practice, and full Grand Prix races. Records are returned as CSV, Excel, JSON, or XML in under a minute. All filters run on the source, so you skip every parser and reverse-engineering step.
| π― Target Audience | π‘ Primary Use Cases |
|---|---|
| F1 analysts, fantasy & betting platforms, sports media, telemetry hobbyists, data scientists, broadcasters, racing strategists | Driver and team performance dashboards, fantasy league scoring, lap-by-lap timing widgets, weather-correlated strategy models, archival race datasets, in-car telemetry ML training |
π What the OpenF1 Scraper does
Twelve data modes in a single Actor:
- π Sessions. Every practice, qualifying, sprint, and race session with circuit, country, GMT offset, and timestamps.
- π Meetings. Full race weekend metadata (Grand Prix name, official name, circuit image, country flag).
- π€ Drivers. Per-session driver lineup with team name, driver number, and full name.
- β±οΈ Laps. Lap-by-lap duration plus per-sector times for every car on track.
- π Intervals. Gap-to-leader and interval between successive cars during a session.
- π οΈ Pit stops. Pit duration and lap number for every stop.
- π¦οΈ Weather. Air and track temperature, humidity, wind speed sampled live.
- π Car telemetry. Speed, throttle, brake, RPM, gear, and DRS state per car.
- π Tyre stints. Compound, stint number, lap range, and tyre age at start.
- π Position changes. Live running order updates throughout a session.
- π¦ Race control. Yellow flags, virtual safety car, blue flags, and incident messages.
- π» Team radio. Direct links to original team radio recordings per driver.
Each record carries cross-mode keys (sessionKey, meetingKey, driverNumber) so you can JOIN sessions to laps, weather, telemetry, or stints in your warehouse.
π‘ Why it matters: Formula 1 timing data powers fantasy leagues, betting models, broadcast graphics, and strategy ML pipelines. Building your own ingestion pipeline means decoding live timing protocols, handling sector splits, and re-syncing on every red flag. This Actor skips all of that.
π¬ Full Demo
π§ Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded telemetry dataset.
βοΈ Input
| Input | Type | Default | Behavior |
|---|---|---|---|
maxItems | integer | 10 | Records to return. Free plan caps at 10, paid plan at 1,000,000. |
mode | string | "sessions" | One of 12 data modes: sessions, meetings, drivers, laps, intervals, pit, weather, car_data, stints, position, race_control, team_radio. |
year | integer | 2024 | Season year. Applies to sessions, meetings, and drivers. |
sessionType | string | null | Race, Qualifying, Practice, Sprint, Sprint Shootout, or Sprint Qualifying. |
sessionKey | integer | null | Specific session ID. Required for laps, intervals, pit, weather, car_data, stints, position, race_control, team_radio. |
meetingKey | integer | null | Specific race weekend ID. |
driverNumber | integer | null | Filter by driver number (1 = Verstappen, 44 = Hamilton, etc.). |
Example: every 2024 race session.
{"maxItems": 50,"mode": "sessions","year": 2024,"sessionType": "Race"}
Example: lap-by-lap times for a single race session.
{"maxItems": 1000,"mode": "laps","sessionKey": 9462}
β οΈ Good to Know: lap, telemetry, weather, and radio modes need a
sessionKeyto scope the query. Run thesessionsmode first to discover the keys you want, then pass them into the deeper modes. Car telemetry is sampled at high frequency, so a single race session can return hundreds of thousands of rows.
π Output
Each record is tagged with a recordType and carries the relevant subset of 50+ fields. Download the dataset as CSV, Excel, JSON, or XML.
π§Ύ Schema
| Field | Type | Example |
|---|---|---|
πΌοΈ imageUrl | string | null | "https://media.formula1.com/.../bahrain.jpg" |
π·οΈ recordType | string | "sessions" |
π sessionKey | number | 9462 |
π meetingKey | number | 1228 |
π’ driverNumber | number | null | 1 |
π€ fullName | string | null | "Max Verstappen" |
π teamName | string | null | "Red Bull Racing" |
π·οΈ sessionName | string | null | "Race" |
π― sessionType | string | null | "Race" |
ποΈ circuitShortName | string | null | "Sakhir" |
π countryName | string | null | "Bahrain" |
π location | string | null | "Sakhir" |
π dateStart | ISO 8601 | "2024-02-21T07:00:00+00:00" |
π dateEnd | ISO 8601 | "2024-02-21T16:00:00+00:00" |
π
year | number | 2024 |
β±οΈ lapNumber, lapDuration | number | 12, 89.234 |
π’ durationSector1, durationSector2, durationSector3 | number | 26.012, 30.451, 32.771 |
π compound, stintNumber, tyreAgeAtStart | string, number | "SOFT", 1, 0 |
π οΈ pitDuration | number | 23.456 |
π¦ gapToLeader, interval, position | string, number | "+0.0", "+1.234", 1 |
π¦ category, flag, message | string | "Flag", "YELLOW", "TURN 4" |
π» recordingUrl | string | null | "https://livetiming.formula1.com/.../radio.mp3" |
π¦οΈ airTemperature, trackTemperature, humidity, windSpeed | number | 21.4, 28.9, 47, 2.1 |
π speed, throttle, brake, rpm, gear, drs | number | 321, 100, 0, 11200, 8, 12 |
π scrapedAt | ISO 8601 | "2026-05-22T00:00:00.000Z" |
π¦ Sample records
β¨ Why choose this Actor
| Capability | |
|---|---|
| ποΈ | 12 data modes. Sessions, meetings, drivers, laps, intervals, pit stops, weather, telemetry, stints, positions, race control, radio. |
| π | Cross-mode keys. sessionKey, meetingKey, and driverNumber let you JOIN any mode in your warehouse. |
| π‘ | Live and historical. Pulls the latest live timing data plus every season from 2023 onwards. |
| β‘ | Fast. 10 records in seconds, full session telemetry in under a minute. |
| π | Strategy-grade detail. Compound, tyre age, sector splits, pit duration, weather, and DRS state. |
| π« | No authentication. Works with the public F1 data feed. No login, no API key. |
| π | Always fresh. Every run fetches the latest data, so your dataset reflects current session state. |
π Accurate timing data is the foundation of every fantasy league, betting model, broadcast graphic, and strategy dashboard in modern motorsport.
π How it compares to alternatives
| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| β OpenF1 Telemetry Scraper (this Actor) | $5 free credit, then pay-per-use | 2023-present, every session | Live per run | year, session, driver, meeting, mode | β‘ 2 min |
| Official F1 live timing feed | Paid licensing | Live | Streaming | Specialized client required | π’ Weeks |
| Sportradar / Stats Perform | $$$$ enterprise | Live + historical | Streaming | Many | β³ Days |
| Custom scrapers off race websites | Free | Patchy | Manual | None | π Variable |
Pick this Actor when you want full-coverage F1 data, server-side filtering, and no licensing negotiations.
π How to use
- π Sign up. Create a free account with $5 credit (takes 2 minutes).
- π Open the Actor. Go to the OpenF1 Formula 1 Telemetry Scraper page on the Apify Store.
- π― Set input. Pick a mode (start with
sessions), set the year, and choosemaxItems. - π Run it. Click Start and let the Actor collect your data.
- π₯ Download. Grab your results in the Dataset tab as CSV, Excel, JSON, or XML.
β±οΈ Total time from signup to downloaded dataset: 3-5 minutes. No coding required.
πΌ Business use cases
π Automating OpenF1 Telemetry 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 API documentation for full details.
The Apify Schedules feature lets you trigger this Actor on any cron interval. Run every 30 seconds during a live session for real-time fantasy scoring, or refresh once a day after each Grand Prix.
π Beyond business use cases
Data like this 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 a data mode, set filters like year or session, click Start, and the Actor pulls the data and returns one clean record per session, lap, stint, or radio message. No browser automation, no captchas, no setup.
π How accurate is the data?
The feed mirrors the official Formula 1 live timing stream. Lap times, sector splits, weather, and telemetry samples are the same values you see on the F1 broadcast graphics.
π How fresh is the live data?
During a live session the source updates within seconds. Schedule the Actor every 30 seconds for near-real-time fantasy scoring, or once per session for archival pulls.
π How far back does coverage go?
Every Grand Prix weekend from the 2023 season onwards is included, with full session, lap, telemetry, weather, and radio coverage.
β° Can I schedule regular runs?
Yes. Use Apify Schedules to trigger this Actor on any cron interval. Common patterns: every 30 seconds during live sessions, every hour during a race weekend, or once per Grand Prix.
π Can I get tyre stints and pit timing?
Yes. Run with mode: "stints" for compound and stint range, or mode: "pit" for per-stop pit duration with lap number.
π» Are team radio recordings included?
Yes. Run with mode: "team_radio" to get a direct link to the original recording for each team radio transmission.
π³ 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 gives you access to scheduling, higher concurrency, and larger telemetry pulls.
π What happens if a run fails or gets interrupted?
Apify automatically retries transient errors. If a run still fails, inspect the log in the Runs tab, fix the input, and re-run. Partial datasets from failed runs are preserved so you never lose progress.
βοΈ Is this data legal to use?
The underlying live timing data is published as a free open feed. Commercial use is generally allowed for analytics and editorial work. Review the downstream terms of your specific use case, and note that the official F1 logos and trademarks remain the property of Formula One Group.
π 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
OpenF1 Telemetry Scraper connects to any cloud service via Apify integrations:
- Make - Automate multi-step workflows
- Zapier - Connect with 5,000+ apps
- Slack - Get live race notifications in your channels
- Airbyte - Pipe telemetry 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 live timing into your fantasy backend, or alert your team in Slack the moment a yellow flag drops.
π Recommended Actors
- βοΈ OurAirports Global Airport Database Scraper - Worldwide airport reference with ICAO and IATA codes
- βοΈ FAA Aircraft Registry Scraper - U.S. civil aircraft registrations and owners
- π€ Hugging Face Model Scraper - Discover and benchmark open ML models
- π° PR Newswire Scraper - Press releases for sponsor and team news monitoring
- π Indexmundi Scraper - Global demographic and economic indicators
π‘ Pro Tip: browse the complete ParseForge collection for more reference-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 Formula One Group, the FIA, OpenF1, or any F1 team. All trademarks mentioned are the property of their respective owners. Only publicly available open motorsport data is collected.