2023 Monaco Grand Prix

Grand Prix Race
May 28, 2023

Changelog

×

Version 1.0.2 Minor Update

October 23, 2025

Frontend

  • [Improved] Misc styling changes.
  • [Improved] About page explaining how calculations are made.

Algorithm

  • No changes.

Version 1.0.1 Minor Update

October 06, 2025

Frontend

  • [Added] Country flags for drivers & constructors.
  • [Added] About button in menu.
  • [Added] Changelog button in menu.
  • [Added] Displaying total calculations on homepage footer, and per-race calculations count on race results pages.
  • [Improved] Event search menu design.
  • [Improved] Hamburger menu design.
  • [Fixed] Removed empty sprint qualifying & sprint shootout from search results.

Algorithm

  • [Added] Historical weighting to team performance for stability.
  • [Added] Raw vs. modified ELO logging for auditing.
  • [Fixed] Enforced zero-cap on DNF ELO changes to prevent positive gains.

Version 1.0.0 Initial Release

October 02, 2025

  • Initial release with driver rankings and race results.
๐Ÿ“ˆ
DRIVER OF THE DAY
Esteban OCON
Esteban OCON
Position: 3
+32.1
๐Ÿ“‰
BIGGEST DROP
Sergio PEREZ
Sergio PEREZ
Position: 16
-9.6
Pos Driver Team Rating Change New Rating Modifiers
1
Max VERSTAPPEN ๐Ÿ‡ณ๐Ÿ‡ฑ Max VERSTAPPEN
๐Ÿ‡ฆ๐Ÿ‡น Red Bull Racing +18.1 1660
Perf Weight +20%Reliability +3%Team Exp +40%Podium Bonus
2
Fernando ALONSO ๐Ÿ‡ช๐Ÿ‡ธ Fernando ALONSO
๐Ÿ‡ฌ๐Ÿ‡ง Aston Martin +13.8 1637
Perf Weight +20%Reliability +3%Podium Bonus
3
Esteban OCON ๐Ÿ‡ซ๐Ÿ‡ท Esteban OCON
๐Ÿ‡บ๐Ÿ‡ธ Haas F1 Team +32.1 1532
Perf Weight +20%Reliability +3%Team Exp +40%Podium Bonus
4
Lewis HAMILTON ๐Ÿ‡ฌ๐Ÿ‡ง Lewis HAMILTON
๐Ÿ‡ฎ๐Ÿ‡น Ferrari +17.6 1606
Perf Weight +20%Reliability +3%Team Exp +17%Points Finish
5
George RUSSELL ๐Ÿ‡ฌ๐Ÿ‡ง George RUSSELL
๐Ÿ‡ฉ๐Ÿ‡ช Mercedes +15.5 1579
Perf Weight +20%Reliability +3%Points Finish
6
Charles LECLERC ๐Ÿ‡ฒ๐Ÿ‡จ Charles LECLERC
๐Ÿ‡ฎ๐Ÿ‡น Ferrari +8.3 1571
Perf Weight +20%Reliability +3%Team Exp -17%Points Finish
7
Pierre GASLY ๐Ÿ‡ซ๐Ÿ‡ท Pierre GASLY
๐Ÿ‡ซ๐Ÿ‡ท Alpine +12.1 1512
Perf Weight +20%Reliability +3%Points Finish
8
Carlos SAINZ ๐Ÿ‡ช๐Ÿ‡ธ Carlos SAINZ
๐Ÿ‡ฌ๐Ÿ‡ง Williams +11.8 1621
Perf Weight +20%Reliability +3%Team Exp +40%Points Finish
9
Lando NORRIS ๐Ÿ‡ฌ๐Ÿ‡ง Lando NORRIS
๐Ÿ‡ฌ๐Ÿ‡ง McLaren +12.0 1509
Perf Weight +20%Reliability +3%Team Exp +11%Points Finish
10
Oscar PIASTRI ๐Ÿ‡ฆ๐Ÿ‡บ Oscar PIASTRI
๐Ÿ‡ฌ๐Ÿ‡ง McLaren +0.6 1492
Perf Weight +20%Reliability +3%Team Exp -11%Points Finish
11
Valtteri BOTTAS ๐Ÿ‡ซ๐Ÿ‡ฎ Valtteri BOTTAS
๐Ÿ‡จ๐Ÿ‡ญ Kick Sauber +6.6 1495
Perf Weight +20%Reliability +3%Team Exp +40%Finish Bonus
12
Nyck DE VRIES ๐Ÿ‡ณ๐Ÿ‡ฑ Nyck DE VRIES
๐Ÿ‡ฎ๐Ÿ‡น AlphaTauri -0.5 1453
Perf Weight +20%Reliability +3%Finish Bonus
13
ZHOU Guanyu ๐Ÿ‡จ๐Ÿ‡ณ ZHOU Guanyu
๐Ÿ‡จ๐Ÿ‡ญ Kick Sauber +1.9 1480
Perf Weight +20%Reliability +3%Team Exp +17%Finish Bonus
14
Alexander ALBON ๐Ÿ‡น๐Ÿ‡ญ Alexander ALBON
๐Ÿ‡ฌ๐Ÿ‡ง Williams -0.8 1496
Perf Weight +20%Reliability +3%Team Exp -17%Finish Bonus
15
Yuki TSUNODA ๐Ÿ‡ฏ๐Ÿ‡ต Yuki TSUNODA
๐Ÿ‡ฆ๐Ÿ‡น Red Bull Racing -5.4 1483
Perf Weight +20%Reliability +3%Team Exp -40%Finish Bonus
16
Sergio PEREZ ๐Ÿ‡ฒ๐Ÿ‡ฝ Sergio PEREZ
๐Ÿ‡ฆ๐Ÿ‡น Red Bull Racing -9.6 1629
Perf Weight +20%Reliability +3%Team Exp -40%Finish Bonus
17
Nico HULKENBERG ๐Ÿ‡ฉ๐Ÿ‡ช Nico HULKENBERG
๐Ÿ‡จ๐Ÿ‡ญ Kick Sauber -7.5 1488
Perf Weight +20%Reliability +3%Team Exp -40%Finish Bonus
18
Logan SARGEANT ๐Ÿ‡บ๐Ÿ‡ธ Logan SARGEANT
๐Ÿ‡ฌ๐Ÿ‡ง Williams -7.5 1461
Perf Weight +20%Reliability +3%Team Exp -40%Finish Bonus
19 (DNF)
Kevin MAGNUSSEN ๐Ÿ‡ฉ๐Ÿ‡ฐ Kevin MAGNUSSEN
๐Ÿ‡บ๐Ÿ‡ธ Haas F1 Team -6.5 1487
Perf Weight +20%Reliability -19%Team Exp -40%DNF Penalty70 laps
DNF
Lance STROLL ๐Ÿ‡จ๐Ÿ‡ฆ Lance STROLL
๐Ÿ‡ฌ๐Ÿ‡ง Aston Martin -4.5 1523
Perf Weight +20%Reliability -19%Team Exp -20%DNF Penalty53 laps

Event Search

×

About DRS

×

Dynamic Rating System (DRS)

DRS is an ELO-inspired rating engine for motorsports racing. It measures how far a driver exceeds or falls short of expectations in every race โ€” not just who wins, but how much better (or worse) they did than their car, form, and rivals suggest they should have.

1. Expected Performance

For every driver in the race, we calculate their expected win probability against every other driver using the classic ELO formula:

Expected = 1 / (1 + 10(OpponentElo - MyElo)/400)

Then average all those expected scores โ†’ this is what the driver โ€œshouldโ€ have achieved based purely on current skill rating.

In Simple Terms: โ€œIf Max has 2000 Elo and Zhou has 1400, Max is expected to beat Zhou ~91% of the time. We do this for every pair in the race and average it. Thatโ€™s the bar the driver has to clear.โ€

2. Actual Performance

Turns finishing position into a 0โ€“1 score:

  • Normalized = (total drivers - position) / (total - 1) โ†’ P1 = 1.0, last = 0.0
  • Score = Normalized^1.2 (slightly rewards higher finishes more)
  • Points bonus: P1โ€“P10 get up to +0.3 extra
  • Teammate beat: +0.10 (backmarker teams get +0.05 extra)
  • Finish multiplier: ร—1.05 for finishing
  • DNF: 0.1 + (laps completed / 60) ร— 0.3 ร— team reliability factor
In Simple Terms: โ€œP1 isnโ€™t just โ€˜1stโ€™, itโ€™s a near-perfect score. Beating your teammate? Extra credit. Crashing out on lap 1? Barely any points. Finishing lap 50 of 60? You get partial credit โ€” not zero.โ€

3. Performance Difference

Diff = Actual Score โ€“ Expected Score

Positive = outperformed expectations. Negative = underperformed.

In Simple Terms: โ€œDid the driver do better than their rating said they would? Thatโ€™s the gap we care about.โ€

4. Dynamic K-Factor (Learning Rate)

Base = 28. Then adjusted:

  • High Elo (>1900) โ†’ ร—0.7 (slow learning)
  • Low Elo (<1400) โ†’ ร—1.4 (fast learning)
  • Podium โ†’ ร—1.4 | P4โ€“P10 โ†’ ร—1.2 | Back of grid โ†’ ร—1.1
  • Smaller field โ†’ lower K | Tighter competition โ†’ higher K

Final K clamped between 15 and 45.

In Simple Terms: โ€œRookies and backmarkers change rating faster. A podium in a chaotic race? Big swing. A veteran cruising to P8? Small tweak.โ€

5. Modifiers

  • Race Weight (1.0โ€“1.5): Bigger fields, closer Elo spread, more top drivers โ†’ more important race โ†’ bigger Elo swings.
  • Reliability Factor: DNF โ†’ ~0.7โ€“0.9 (less penalty if car is unreliable or many laps done). Finish โ†’ ร—1.03.
  • Team Expectation: Did you beat your teamโ€™s average? Sigmoid curve gives 0.6โ€“1.4ร— boost/penalty.
In Simple Terms: โ€œA DNF in a fragile car hurts less. Beating your teammate when both cars are slow? Thatโ€™s huge. Crashing a bulletproof Red Bull? Ouch.โ€

6. Intelligent Capping

  • Standard: ยฑ25 Elo
  • Backmarker upside โ†’ up to +30, downside only -15
  • DNF โ†’ no positive gain
  • Exceptional: (e.g. backmarker in P4) โ†’ up to +40
  • Catastrophic: (e.g. 1950 Elo driver P17) โ†’ down to -30
In Simple Terms: โ€œNo one jumps +100 for one miracle. But a Haas in the points? Thatโ€™s worth celebrating. A Ferrari in the wall? That stings โ€” but not endlessly.โ€

Full Calculation Flow (per driver)

  1. Build team strength (current + 60% historical)
  2. Expected = average win-probability vs all others
  3. Actual = position โ†’ score + bonuses
  4. Diff = Actual โ€“ Expected
  5. Raw Change = K ร— Diff
  6. Apply: Race Weight ร— Reliability ร— Team Expectation
  7. Cap intelligently โ†’ Final Elo change
In Simple Terms: โ€œItโ€™s not just โ€˜you finished P5โ€™. Itโ€™s: โ€˜You were expected to be P12 in that car. You beat your teammate. The car usually breaks. You finished. Hereโ€™s +32 Elo.โ€™โ€

Examples

Exceptional: Backmarker P4

Expected: 0.15 โ†’ Actual: 0.78 โ†’ Diff: +0.63 โ†’ K: 38 โ†’ Raw: +24 โ†’ Exceptional cap โ†’ +38 Elo

Catastrophic: Top driver P17

Expected: 0.82 โ†’ Actual: 0.12 โ†’ Diff: -0.70 โ†’ K: 22 โ†’ Raw: -15 โ†’ Catastrophic โ†’ -28 Elo

DNF with 42/66 laps

Actual: ~0.29 โ†’ Expected: 0.55 โ†’ Diff: -0.26 โ†’ K: 30 โ†’ Reliability: 0.84 โ†’ Final: -6 Elo

The Idea: Reward drivers for punching above their weight. Penalize underperformance โ€” but fairly, with context. The system learns and self-corrects over time.