Budget the optimal squad must leave unspent — for next week's transfers, or to hunt the best squad that still banks $1M, $2M, etc.
Model
0.50
0.5 keeps the market as-is; above leans harder on a favorite’s upside, below fades it. Even at max, a 36%-win driver lands ~P5 (he loses 64% of the time) — that's correct.
Markets
15%
Caps how much not-classified % feeds the −20 penalty. Backtest to find what predicts best.
Enter FanDuel odds. Win / Pod / Top6 / Top10 are the finishing bands (each scores its own slice; Top6 optional). NC = not-classified (−20). DOTD auto = 0.8×win, OT & Pos± auto-estimated from grid vs finish — type to override. DRS (×2) auto-applies to your squad's top projected scorer; toggle Extra DRS for the once-a-season ×3 + ×2 chip.
Driver
Team
Price$M
Win%
Pod%
Top6%
Top10%
Quali%
FL%
DOTDauto
OTauto
NC%
Pos±auto
Form%±
Pitlane
Uselock/ban
Combined output of the team's two drivers (auto-matched by name) + teamwork quali bonus (+10 both Q3, +5 both Q2, +3 one Q3) + avg pit points.
Enter this race's odds and fetch prices (Prices → Fetch latest) — then this shows, for every driver, the points they need this race to hit each price band (Great / Good / Poor / Terrible) and the odds of reaching it. The same numbers as tapping a driver's xP, all in one place.
// Price Moves β · season drift & momentum
Pulls every gameday's price feed and shows each driver's and constructor's season drift and latest move. Needs the hosted site. A points→price rule appears automatically once the feeds expose enough data to fit one.
// League β · private-league standings
Log in, then paste your league's invite code and Load to see the table — rank, points, weekly trend, and each rival's squad. (If code lookup isn't available yet for your league, F1GridIQ will tell you exactly where to find the numeric league ID instead.) Public data; needs the hosted site.
// My Synced Teams β · from linked leagues, no capture needed
Log in, load a league above, tick which entries are yours, and save — your teams reload automatically every time you visit, from any device.
// My Team β · sync & transfers · admin/dev only
Run the capture snippet on the F1 site (see docs/capture-snippet.md), open your Team or Transfers page, run __f1dump(), then Sync the downloaded file here. It loads your squad, budget and free transfers and recommends the best moves (−10 per transfer beyond free). Enter this race's odds first so the model can compare.
// Chip Advisor β · best week to burn each chip
Load the grid and enter this race's odds — then this ranks your chips by how many points each would add this week, so you know which one is worth burning.
// Live β · race scoring
During a race or sprint this shows live points for your team (and your league) from F1's public live feed, refreshing every 30s — dormant between sessions. Sync your team and load your league first. Needs the hosted site.
// Season log β · predicted vs actual
After a race (Go live to pull the points), hit Log this gameday to record your team's predicted vs actual points. Builds a season history you can export.
Update prices
Refresh driver & constructor prices from the official game — without touching the odds you've entered. Prices are matched by name; any new drivers are added.
or load a file (offline)
1
Open a terminal in the package folder and run python3 pull_prices.py
2
It writes prices.json next to the script.
3
Drop it in below — prices update, odds stay put.
First run can't reach the server? The script prints exactly what to check — it never overwrites your work.
Paste drivers from a spreadsheet
Copy rows from Excel / Sheets and paste below — tab or comma separated, in this column order: Name · Team · Price · Win% · Pod% · Top6% · Top10% · Quali% · DOTD% · FL% · NC% · OT · Pos±
Leave DOTD / OT blank for auto. Header row optional (auto-detected).