🚧 This site is under active development. Predictions and features may change. 🚧
Loading...

Lineup Optimizer

Find the best F1 Fantasy lineups within your budget, or get transfer recommendations for your current team.

How does the Lineup Optimizer work?

Checks all 1.4 million possible team combinations to find the best lineup within your budget. Uses ML predictions for qualifying and race positions.

  • Lock picks: Left-click a driver/constructor card to lock them in your lineup
  • Exclude picks: Right-click to exclude a player from consideration
  • Chips: Select your active chip to see optimized lineups with boost applied

Lock / Exclude Picks

Left-click to lock (force into lineup). Right-click to exclude (remove from consideration). Constructors shown in ALL CAPS.

Data Analysis

No FP analysis data available. Run pipeline/10_fp_analysis.py first.

No post-race analysis data available.

2026 Season

Race Calendar & Results

Championship Standings

Official F1 World Championship points based on race and sprint results.

Fantasy Points Standings

Driver Price Tracker

Constructor Price Tracker

Head-to-Head Matchup

Compare any two drivers side-by-side. See who to pick based on predictions, value, and historical performance.

VS

Model Accuracy

Track how well our predictions match reality. Updated after each race weekend.

Loading accuracy data...

Race Deep Dive

Detailed post-race telemetry analysis with fuel-corrected pace, sector breakdowns, and tyre degradation.

Select a round to view deep dive analysis...

Latest Videos

Race weekend analysis, predictions, and commentary from the BoxBox F1 Fantasy YouTube channel.

Subscribe on YouTube

Loading videos...

Race Weekend Articles

Analysis, insights, and commentary from each race weekend.

Loading articles...

How It Works

BoxBoxF1Fantasy uses a multi-stage machine learning pipeline to predict F1 race outcomes and convert them into fantasy point projections. Here's the full process from raw data to your lineup recommendations.

📊

1. Data Collection

We pull from two sources: FastF1 for live telemetry (lap times, sectors, tyre compounds, weather, track status) and the Jolpica API for historical results, qualifying, and championship standings from 2020-2026.

⚙️

2. Feature Engineering

Two feature layers are built. Layer 1: Jolpica historical priors — rolling 3/5/10-race averages, team strategy ratings, driver skill ratings, and track classification features (always available). Layer 2: Free practice telemetry — 27+ engineered features including pace, consistency, degradation, long-run performance, and sector analysis (when FP data is available).

🤖

3. ML Predictions

Three XGBoost models are trained with walk-forward temporal validation on 2,600+ historical rows. The qualifying model predicts grid positions, which feed into the race model for finish predictions. A third model scores confidence based on data completeness and model agreement.

🎲

4. Monte Carlo Simulation

10,000 race simulations sample from prediction distributions with calibrated noise — stochastically modelling DNFs, overtakes, fastest laps, and DOTD. Because fantasy scoring is nonlinear, the expected points of a distribution differ from points of the expected position.

🏆

5. Fantasy Points

Monte Carlo outputs are aggregated into mean, median, P5-P95 percentile ranges. Combined with driver prices to compute PPM (Points Per Million) value scores. The lineup optimizer then finds the best team combinations within your budget.

🔍

6. Post-Race Analysis

After each race, the deep dive pipeline processes full telemetry: fuel-corrected lap times, sector breakdowns, tyre degradation curves, dirty-air effects, race momentum phases, and speed trap data — all viewable in the Race Deep Dive tab.

Model Details

  • Qualifying model: XGBoost (1200 trees, lr=0.025, depth=3) — predicts qualifying position from historical priors + FP telemetry
  • Race model: XGBoost (650 trees, lr=0.03, depth=5) — predicts finish position using predicted quali as input feature
  • Confidence model: ExtraTrees classifier trained on FP-available rows, scoring prediction reliability 0-100
  • Monte Carlo: 10,000 simulations with calibrated noise, DNF sampling (rolling 5-race probability, capped at 25%), stochastic overtake/fastest-lap/DOTD assignment
  • Walk-forward validation: Models are only ever trained on past data — no future leakage. Jolpica features use shift(1) before rolling to prevent look-ahead bias
  • Feature count: 136 features total across both layers, with XGBoost handling missing FP data natively via histogram-based tree method

Pipeline Automation

  • Weekend orchestration: Automated phases — pre-FP (download + train), post-FP (features + predict), post-quali (re-predict with quali data), post-race (actuals + analysis)
  • Weather updates: Open-Meteo forecasts every 6 hours via GitHub Actions, showing rain probability for Friday/Saturday/Sunday
  • Deep dive generation: 7-step data cleaning (null removal, accuracy filter, pit/lap-1/safety-car exclusion, fuel correction, outlier removal) then 10+ analysis modules

Disclaimer

These predictions are for entertainment purposes only. F1 races are inherently unpredictable — weather, crashes, strategy calls, and reliability can dramatically alter outcomes. Use these predictions as one input for your fantasy decisions, not the only one.