Models / gradient-boosted-ensemble

Overtake Probability

P(a clean on-track pass on the next lap), per attacking driver.

gradient-boosted-ensembleanalytics.strategy

How it works

For every car that is chasing another under green flags, the model forecasts the probability of a clean on-track pass on the next lap. It reads the gap to the car ahead, the pace difference, the tyre offset between the two cars, a per-circuit overtaking index, and the defender's own state — compound, tyre life and qualifying pace — resolved from the car directly ahead. It is scored every lap for each eligible attacker.

When to use it

  • Cue a director or liveblog: a per-pair probability that a pass is coming, updated every lap.
  • Rank the live battles on track, so a graphic or alert follows the fight most likely to change position.
  • Give context to strategy calls — a car that cannot pass on track is a candidate for the undercut instead.

Inputs

  • gap to car ahead
  • pace delta
  • tyre offset
  • per-circuit overtake index
  • defender state

Output

drivers[].threat.overtake.pNextLap0–1 probability of a clean on-track pass on the car ahead on the next lap.

Example payload

An excerpt of one analytics.strategy delivery, trimmed to the fields this model produces. Values are illustrative. The full message shape is on the feed reference.

json
{
  "feed": "analytics.strategy",
  "lap": 35,
  "drivers": [
    {
      "number": "16",
      "tla": "LEC",
      "threat": {
        "overtake": {
          "pNextLap": 0.18
        }
      }
    }
  ]
}

Use it

Subscribe to analytics.strategy with a webhook and read this model's fields from each delivery:

bash
curl -X POST https://api.racehooks.io/v1/webhooks \
  -H "Authorization: Bearer $RACEHOOKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"webhookUrl":"https://your-app.com/f1","feedId":"analytics.strategy"}'

To try it without waiting for a race weekend, replay the recorded Canadian Grand Prix (2026-canada_r) from the quickstart.

How to read it

The value belongs to the attacker and refers to the car directly ahead of it. It is a next-lap chance, so even a strong attacker on a hard circuit to pass on will show modest numbers lap to lap; a sustained run of elevated values is the stronger signal. The field is absent, not zero, when the car is not an eligible attacker — so absence does not mean there is no threat.

Limitations

  • Only published under green-flag running, for cars that are not leading and are within 5 seconds of the car ahead. Nothing is published during a Safety Car or VSC.
  • It predicts a clean pass on track; position changes from pit stops are a different question, covered by the undercut and overcut models.
  • Most of the history behind the model comes from seasons with DRS. 2026 races without DRS are a newer regime.

FAQ

Why does a driver have no overtake probability on some laps?

The field is only published for a non-leading car within 5 seconds of the car ahead under green flags. Absent means not scored, not zero.

Does the overtake model count passes made in the pits?

No. It forecasts a clean on-track pass on the next lap. Pit-stop position changes are covered by the undercut and overcut models.

Related models

  • Undercut — P(pitting now puts the driver ahead of the car in front once it covers), when within 5s — plus whether to strike now or hold.
  • Overcut Threat — P(pitting next lap ends ahead of a rival that has already stopped), while that duel is live.
  • Pace Mode — Which pace mode a driver is running — push, hold, manage, warm-up or delta — per lap.

Get the data

This model is delivered on analytics.strategy. Subscribe by webhook or stream it over SSE. The quickstart walks through registering an endpoint and replaying a past session against it.