F1 Race Results and Standings Scraper
Pricing
from $12.00 / 1,000 result items
F1 Race Results and Standings Scraper
Scrapes Formula 1 race results, qualifying, sprint, standings, drivers, constructors, circuits, and schedules from the Ergast API. Returns each record as a flat row for analysis.
Pricing
from $12.00 / 1,000 result items
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
F1 Race Results and Standings Scraper
Scrape F1 race results, qualifying, sprint, standings, drivers, constructors, circuits, and schedules from the Ergast API, up to a million rows per run. Every row is flat and ready for analysis. No API key, no rate limits, no setup. Export to CSV, JSON, Excel, or XML.
Formula 1 data is scattered across PDFs, news sites, and unofficial APIs. This Actor pulls clean, structured data straight from the Ergast F1 database, the same source used by researchers and hobbyists for over a decade. Pick an endpoint, set a season or round, and get every row in one fixed schema.
| Who uses it | What they scrape Ergast F1 for |
|---|---|
| F1 data analysts | Build season-long datasets for lap time and points analysis |
| Sports journalists | Pull race results and standings for race weekend reporting |
| Fantasy F1 players | Get driver and constructor performance data to optimize lineups |
| Researchers and students | Collect historical F1 data for academic projects or visualizations |
| App developers | Populate F1 apps with schedules, results, and standings |
What it does
This Actor collects F1 race results, qualifying, sprint results, driver and constructor standings, driver, constructor, circuit, and race schedule data from the Ergast API and returns each record as a flat row.
- π Race results: full finishing order with position, points, and status for any race
- β±οΈ Qualifying and sprint: grid positions and sprint results for every session
- π Championship standings: driver and constructor points after each round
- π€ Drivers and constructors: one row per driver or team with codes and details
- πΊοΈ Circuits: track names, locations, and country data
- π Race schedule: every round of a season with dates and circuit info
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with Ergast F1 data
π Build a season dataset.
A data analyst runs the Actor with endpoint results and season 2024 to collect every race result, then joins it with qualifying data for a complete performance picture.
π° Report on a race weekend.
A journalist sets season current and round to the latest race, pulls results and standings, and uses the CSV export to create tables for an article.
ποΈ Optimize a fantasy lineup.
A fantasy F1 player scrapes driver standings and recent results to compare form and pick the best drivers for the next race.
π Analyze historical trends.
A researcher collects constructor standings from 2000 to 2024 to study team performance over decades.
π± Power an F1 app.
A developer schedules the Actor to fetch the race schedule and results weekly, feeding a mobile app with up-to-date data.
Why choose this scraper
| What you get | |
|---|---|
| No API key or registration | The Ergast API is public and free, so you can start scraping immediately |
| Flat, analysis-ready rows | Every record is returned as a simple object with consistent field names |
| Historical data back to 1950 | Ergast covers every F1 season, so you can build long-term datasets |
| Flexible filtering | Combine season, round, driver, constructor, and circuit to target exactly what you need |
How it compares
No other Store actor targets Ergast F1 the same way, so the honest comparison is with the alternatives teams actually weigh.
| F1 Race Results and Standings Scraper | Build it in-house | By hand | |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When Ergast F1 changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |
Configure the run
Drive the Actor from endpoint, season, round, driver, constructor, and circuit filters, alone or together, and only matching rows reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{"maxItems": 10,"endpoint": "results","season": "2024"}
A larger pull:
{"maxItems": 200,"endpoint": "results","season": "2024"}
Pricing
Pay-per-result: $0.016 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $1.60 |
| 1,000 results | $16.00 |
| 10,000 results | $160.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 F1 Race Results and Standings 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 Ergast F1 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/f1-ergast-results-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
Check your filters. If you set a season and round that do not exist together, or a driverId that is misspelled, the API returns nothing. Try clearing optional fields and running again.
Why is my dataset missing some rows?
The maxItems field limits how many results are returned. Increase it to cover the full season or endpoint you need.
What does the 'current' season value do?
Setting season to current tells the Actor to use the latest season available in the Ergast database. This is useful for ongoing seasons.
Can I get data for a specific circuit?
Yes, use the circuitId field with values like monaco or silverstone. Combine it with a season to get results for that track.
Why are some fields empty in the output?
Ergast sometimes has missing data for older races or certain sessions. Empty fields are normal and reflect gaps in the source database.
FAQ
| Question | Answer |
|---|---|
| What is the Ergast API? | Ergast is a free, open-source database of Formula 1 data maintained by the community. It has been the standard source for F1 statistics since 2008 and covers every season from 1950 to the present. |
| Do I need an API key? | No. The Ergast API is public and does not require registration or authentication. You can start scraping immediately. |
| What endpoints can I scrape? | You can scrape race results, qualifying results, sprint results, drivers, constructors, circuits, driver standings, constructor standings, and the race schedule. |
| Can I filter by season or round? | Yes. Set the season field to a year like 2024, or use current for the ongoing season. The round field lets you target a specific race. |
| Can I filter by driver or constructor? | Yes. Use driverId like max_verstappen or constructorId like ferrari to get only rows for that driver or team. |
| What is the maximum number of results? | You can set maxItems up to 1,000,000. The default is 10, but for full seasons you should increase it. |
| What format is the data returned in? | Each record is a flat JSON object. You can export the dataset to CSV, JSON, Excel, or XML from the Apify platform. |
| Does this include live data? | Ergast updates shortly after each session ends, but it is not a live timing feed. For real-time data, consider a different source. |
| Is the data free to use? | Yes, Ergast data is free for non-commercial use. Check the Ergast terms for commercial applications. |
| Can I schedule this Actor to run automatically? | Yes, you can set up a schedule in Apify to run the Actor daily, weekly, or after each race weekend. |
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 Ergast Developer API. 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.
