Feed CatalogWeather

Weather

freeliveanalytics

From raw conditions to predictive intelligence. weather.data (free) carries air/track temp, humidity, pressure, wind, and rainfall; the weather.rain-onset / weather.rain-cleared events fire on rainfall transitions. The analytics weather.* feeds add forecast-driven strategy signals — when the field splits wet vs. dry, when a compound crossover is imminent, and per-driver tyre-mismatch alerts.

Feed IDTierCadenceDescription
weather.datafreePer updateAir/track temp, humidity, pressure, wind, rainfall.
weather.data-serieslivePer updateTime-series history of weather data.
weather.rain-onsetliveOn rain startFires when rainfall begins at the circuit.
weather.rain-clearedliveOn rain stopFires when rainfall stops at the circuit.
weather.strategy-divergenceanalyticsDuring rainFires during active rain when the field splits between wet and dry compound strategies.
weather.compound-crossoveranalyticsOn crossoverFires when forecast conditions cross the threshold where a different compound becomes optimal.
weather.forecast-updateanalyticsOn forecast changeFires when precipitation forecast changes by more than 0.5 mm/hr.
weather.tire-mismatchanalyticsOn wet-tyre mismatchPer-driver alert when a car is on slicks with rain falling or imminent — the wrong tyre for the conditions.

Subscribe with the feedId via webhook or SSE. The badge shows the feed's access class: free feeds are open to every plan, live feeds require the Developer plan, and analytics feeds require the Custom plan.

weather.dataWeather Datafree

Per update

Air/track temp, humidity, pressure, wind, rainfall.

Sample payload
json
{
  "feed": "weather.data",
  "sessionId": "9560",
  "utc": "2026-06-08T14:32:18.441Z",
  "data": {
    "airTempC": 22.4,
    "trackTempC": 37.8,
    "humidity": 61,
    "pressure": 1014.2,
    "windSpeed": 3.1,
    "windDirection": 214,
    "rainfall": false
  }
}

weather.data-seriesWeather Data Serieslive

Per update

Time-series history of weather data.

Sample payload
json
{
  "feed": "weather.data-series",
  "sessionId": "9560",
  "utc": "2026-06-08T14:32:18.441Z",
  "data": {
    "snapshots": [
      {
        "utc": "2026-06-08T13:00:00.000Z",
        "airTempC": 21.2,
        "trackTempC": 35.1,
        "humidity": 64,
        "pressure": 1014,
        "windSpeed": 2.8,
        "windDirection": 210,
        "rainfall": false
      },
      {
        "utc": "2026-06-08T13:30:00.000Z",
        "airTempC": 21.8,
        "trackTempC": 36.4,
        "humidity": 63,
        "pressure": 1014.1,
        "windSpeed": 3,
        "windDirection": 212,
        "rainfall": false
      },
      {
        "utc": "2026-06-08T14:00:00.000Z",
        "airTempC": 22.4,
        "trackTempC": 37.8,
        "humidity": 61,
        "pressure": 1014.2,
        "windSpeed": 3.1,
        "windDirection": 214,
        "rainfall": false
      }
    ]
  }
}

weather.rain-onsetRain Onsetlive

On rain start

Fires when rainfall begins at the circuit.

Backed by: weather state machine. How the models work →

Sample payload
json
{
  "feed": "weather.rain-onset",
  "sessionId": "9560",
  "lap": 22,
  "utc": "2026-06-08T14:32:18.441Z",
  "data": {
    "lap": 22,
    "precipRateMmhr": 1.4,
    "rainStartLap": null,
    "durationLaps": null,
    "trackTempC": 28.9,
    "airTempC": 19.4,
    "humidity": 88
  }
}

weather.rain-clearedRain Clearedlive

On rain stop

Fires when rainfall stops at the circuit.

Backed by: weather state machine. How the models work →

Sample payload
json
{
  "feed": "weather.rain-cleared",
  "sessionId": "9560",
  "lap": 41,
  "utc": "2026-06-08T14:32:18.441Z",
  "data": {
    "lap": 41,
    "precipRateMmhr": 0,
    "rainStartLap": 22,
    "durationLaps": 19,
    "trackTempC": 31.2,
    "airTempC": 20.1,
    "humidity": 71
  }
}

weather.strategy-divergenceWeather Strategy Divergenceanalytics

During rain · Race, Sprint

Fires during active rain when the field splits between wet and dry compound strategies.

Backed by: weather impact model. How the models work →

Sample payload
json
{
  "feed": "weather.strategy-divergence",
  "sessionId": "9560",
  "lap": 28,
  "utc": "2026-06-08T14:32:18.441Z",
  "data": {
    "onWetCompounds": {
      "count": 2,
      "drivers": [
        {
          "driverId": "verstappen-max",
          "constructorId": "red-bull-racing",
          "number": "1",
          "tla": "VER",
          "name": "Max Verstappen",
          "team": "Red Bull Racing"
        },
        {
          "driverId": "norris-lando",
          "constructorId": "mclaren",
          "number": "4",
          "tla": "NOR",
          "name": "Lando Norris",
          "team": "McLaren F1 Team"
        }
      ],
      "avgLapDeltaVsBaselineSec": -1.8
    },
    "onDryCompounds": {
      "count": 2,
      "drivers": [
        {
          "driverId": "leclerc-charles",
          "constructorId": "ferrari",
          "number": "16",
          "tla": "LEC",
          "name": "Charles Leclerc",
          "team": "Scuderia Ferrari"
        },
        {
          "driverId": "hamilton-lewis",
          "constructorId": "ferrari",
          "number": "44",
          "tla": "HAM",
          "name": "Lewis Hamilton",
          "team": "Scuderia Ferrari"
        }
      ],
      "avgLapDeltaVsBaselineSec": 3.4
    },
    "favoredGroup": "wet"
  }
}

weather.compound-crossoverCompound Crossover Alertanalytics

On crossover · Race, Sprint

Fires when forecast conditions cross the threshold where a different compound becomes optimal.

Backed by: weather impact model. How the models work →

Sample payload
json
{
  "feed": "weather.compound-crossover",
  "sessionId": "9560",
  "lap": 44,
  "utc": "2026-06-08T14:32:18.441Z",
  "direction": "inter_to_slick",
  "confidence": 0.79,
  "evidence": {
    "driversOnSlick": [
      {
        "driverId": "verstappen-max",
        "constructorId": "red-bull-racing",
        "number": "1",
        "tla": "VER",
        "name": "Max Verstappen",
        "team": "Red Bull Racing",
        "ltoeSec": -0.6
      },
      {
        "driverId": "norris-lando",
        "constructorId": "mclaren",
        "number": "4",
        "tla": "NOR",
        "name": "Lando Norris",
        "team": "McLaren F1 Team",
        "ltoeSec": -0.4
      }
    ],
    "driversOnInter": [
      {
        "driverId": "leclerc-charles",
        "constructorId": "ferrari",
        "number": "16",
        "tla": "LEC",
        "name": "Charles Leclerc",
        "team": "Scuderia Ferrari",
        "ltoeSec": 1.1
      }
    ]
  },
  "rainClearedLap": 41,
  "estimatedLapsUntilAllOnSlick": 3
}

weather.forecast-updateWeather Forecast Updateanalytics

On forecast change

Fires when precipitation forecast changes by more than 0.5 mm/hr.

Backed by: Open-Meteo forecast integration. How the models work →

Sample payload
json
{
  "feed": "weather.forecast-update",
  "sessionId": "9560",
  "lap": 18,
  "utc": "2026-06-08T14:32:18.441Z",
  "source": "radar",
  "currentPrecipRateMmhr": 0.2,
  "precipProbabilityPct": 78,
  "rainExpectedInMin": 12,
  "next60min": [
    {
      "timeUtc": "2026-06-08T14:15:00.000Z",
      "precipRateMmhr": 0.8,
      "precipProbabilityPct": 82
    },
    {
      "timeUtc": "2026-06-08T14:30:00.000Z",
      "precipRateMmhr": 1.6,
      "precipProbabilityPct": 90
    }
  ]
}

weather.tire-mismatchTyre Mismatch Alertanalytics

On wet-tyre mismatch · Race, Sprint

Per-driver alert when a car is on slicks with rain falling or imminent — the wrong tyre for the conditions.

Backed by: weather impact model. How the models work →

Sample payload
json
{
  "feed": "weather.tire-mismatch",
  "sessionId": "9560",
  "lap": 21,
  "utc": "2026-06-08T14:32:18.441Z",
  "driver": {
    "driverId": "hamilton-lewis",
    "constructorId": "ferrari",
    "number": "44",
    "tla": "HAM",
    "name": "Lewis Hamilton",
    "team": "Scuderia Ferrari"
  },
  "currentCompound": "MEDIUM",
  "severity": "urgent",
  "trigger": "forecast_imminent",
  "expectedWetOnsetLap": 24,
  "rainProbabilityNext5Laps": 0.86,
  "intermediateWindowOpen": true
}
Race EventsTelemetry