How Scoring Works
RallyLab ranks participants by their average finish time across all heats. Faster average time means a higher rank. Here's the full picture.
Before the scoring → How Heats Are ScheduledThe Basics
Scoring in RallyLab is straightforward: add up all of a participant's finish times and divide by the number of heats they raced. The participant with the lowest average time wins.
Because the heat schedule ensures every participant runs every lane, the average naturally cancels out lane advantages. A fast lane time and a slow lane time balance each other — what remains is the car's true performance.
Example
Sarah races 6 heats on a 6-lane track with times: 2.15s, 2.32s, 2.28s, 2.20s, 2.41s, 2.18s
Her average: 2.257 seconds — this is the single number that determines her ranking.
Re-runs and Accepted Results
Sometimes a heat needs to be re-run — a car falls off the track, a lane sensor misfires, or the Operator calls a false start. When a heat is re-run, only the latest result counts. The original result is superseded and excluded from scoring.
This means each heat contributes exactly one result to a participant's average, regardless of how many times it was run.
Tie-Breaking
When two participants have the same average time (down to the millisecond), RallyLab uses a tiebreaker:
- Average time (primary) — lower average wins
- Best single heat time (secondary) — the fastest individual heat wins the tie
The best-heat tiebreaker rewards consistency and peak performance. Two participants with the same average could have very different spreads — the one who managed a faster single heat gets the edge. In the unlikely event that both average and best time are identical, participants are listed adjacently in car-number order.
When the Timer Can't Record
If the track controller can't capture times for a heat (hardware failure, a sensor that won't trigger), the Operator can enter a manual ranking instead — simply recording who finished 1st, 2nd, 3rd, and so on by visual observation.
RallyLab converts these manual rankings into approximate times so they can be averaged with real times from other heats. The conversion uses the section's overall average time as a baseline, with a small offset between each place (50ms). This preserves the manually-observed finishing order while producing values that blend reasonably with actual electronic times.
If all heats in a section end up with manual rankings (complete hardware failure), the final standings simply reflect the cumulative manual placements — consistent top finishers rank highest.
Removed Cars
If a car breaks down or a participant leaves mid-event, the Operator removes them from the section. Their completed heats are still scored normally, but they're ranked below all participants who completed the full schedule.
Multiple removed participants are sorted among themselves by their partial averages. Their results appear on the leaderboard marked as incomplete, so everyone can see they didn't run the full set of heats.
The Leaderboard
Each section has its own independent leaderboard. There are no cross-section rankings — Kub Kars and Scout Trucks are separate competitions. The leaderboard updates live after every heat.
Here's what a final leaderboard looks like:
| Rank | Car | Name | Avg Time | Best Time | Heats |
|---|---|---|---|---|---|
| 1 | 17 | Sarah | 2.205s | 2.150s | 12 |
| 2 | 42 | Billy | 2.340s | 2.280s | 12 |
| 3 | 8 | Emma | 2.412s | 2.310s | 12 |
| 4 | 23 | Jake | 2.498s | 2.390s | 12 |
| 5 | 7 | Tommy * | 2.450s | 2.400s | 5 of 12 |
* Removed after heat 5 — partial results, ranked below completed participants.
The audience display shows updated standings after every heat so the crowd can follow the competition in real time. At the end of a section, the full final standings are displayed.