Estonian drift championship (Pro2) · 2026
Drift championship title calculator
A live calculation of which of five title contenders can still win the championship in the final round, and with what result.
Goal
Going into the championship's deciding final round, five drivers were close together on points. The official results service shows the run results, but not what they mean: who can still become champion, with what result, and how it affects the others. That had to be visible live, on every viewer's screen at the same time.
Results in numbers
What changed
25
registered drivers in the finals
5
title contenders before the deciding round
32
place elimination bracket
5 s
between result updates during qualifying
The situation
Going into the final round, the Estonian drift championship was very tight: five drivers were fighting for the title, some only a few points apart. The official results service shows the battle results as they happen, but doesn’t say what each result means for the title. I built a live calculation next to it that answers “who can still become champion right now, and with what result?”. The drivers and everyone watching could see the answer.
Constraints
- The points rules (qualifying, head-to-head battles and tie-breaks) had to be linked to data from the official results service, which doesn't work out the championship standings itself.
- The result had to update on every viewer's screen at the same time, without anyone refreshing the page.
- Everything had to run on an ordinary web server, without a separate database.
- No driver could be looked at alone: each contender's chances depend on what the other four do at the same time.
Solution
How I solved it
Rules
How do you turn the championship's points system (qualifying, head-to-head battles and a multi-step tie-break rule) into a calculation that actually works?
The points tables are written straight from the rulebook. When two drivers finish on equal points, they are compared step by step: first by round wins, then by second places and so on down to 32nd place. Only as a last resort does the final round’s own result decide. The calculation uses the same logic when it needs to know whether finishing level on points would win the title.
Data matching
The official results service lists drivers by name, and names are spelled slightly differently (accents, capital letters, punctuation).
Before comparing, every name is cleaned up: accents are removed and punctuation is dropped. If a driver isn’t found in the list, they are added automatically and their season points so far are taken from the same service. That way nobody starts from zero when they have actually already scored points.
Scenarios
How do you show not just the current standings, but every situation in which each of the five contenders could become champion, taking into account what the other four do?
For each contender and each possible final result, the system works out how far the other four can go for that situation to still hold. It turns this into a simple sentence, such as “becomes champion with 3rd place IF rival A doesn’t finish higher than 2nd AND rival B is knocked out earlier”. A separate block shows what happens if someone outside the top five wins the final or reaches the podium: who gains and who loses.
Live updates
Dozens of people watch the same result at once. How do you keep every screen in sync without overloading the server or the official results service?
All viewers get updates from one shared source as a live stream. The official service is asked for data only once at a time, no matter how many people are watching. How often it’s asked depends on what’s happening: more often during qualifying, less between battles, and least during breaks. The organiser can pause automatic updates with one click and confirm the standings themselves, so only checked results ever reach the screens.
Data quality
In the elimination bracket, an empty slot can mean two very different things: the opponent hasn't been decided yet, or nobody is in that slot at all.
An empty slot only counts as a free pass in the first round, where that can really happen. In later rounds, an empty slot means the opponent’s own battle isn’t finished yet. The system must never count it as a free pass, or it would give someone a win they haven’t earned.
Result
During the finals, drivers, teams and spectators could see live which result would win the title at any moment. Nobody had to work out the points table in their head. The organiser was in control the whole time: every standing shown on screen was confirmed and correct.
What's next
The logical next step is using the same calculation for other classes and rounds, not just the finals.