Skip to main content
The TracingInsights F1 data platform organizes telemetry and timing data in a hierarchical structure that mirrors the Formula 1 weekend format. Understanding this structure is essential for efficiently accessing and analyzing the data.

Repository Organization

Data is organized following a three-level hierarchy: Event → Session → Driver.
2026/
├── Australian Grand Prix/
│   ├── Practice 1/
│   │   ├── corners.json
│   │   ├── drivers.json
│   │   ├── rcm.json
│   │   ├── weather.json
│   │   ├── ALB/
│   │   │   ├── 1_tel.json
│   │   │   ├── 2_tel.json
│   │   │   ├── laptimes.json
│   │   │   └── ...
│   │   ├── NOR/
│   │   ├── VER/
│   │   └── ...
│   ├── Practice 2/
│   ├── Practice 3/
│   ├── Qualifying/
│   └── Race/
├── Chinese Grand Prix/
├── Pre-Season Testing 1/
└── ...

Event Level

The top level contains event folders named after Grand Prix events:
  • Australian Grand Prix
  • Monaco Grand Prix
  • Abu Dhabi Grand Prix
  • Pre-Season Testing 1 (for testing sessions)
Each event folder represents a race weekend or testing session.

Session Level

Within each event, there are session folders for different track sessions:
  • Practice 1, Practice 2, Practice 3
  • Qualifying
  • Sprint Qualifying (sprint weekends only)
  • Sprint (sprint weekends only)
  • Race
Each session folder contains:
  1. Session-level data files (apply to the entire session)
  2. Driver folders (one per participating driver)

Driver Level

Inside each session folder, individual driver folders are named using 3-letter driver codes:
  • VER (Max Verstappen)
  • HAM (Lewis Hamilton)
  • LEC (Charles Leclerc)
  • NOR (Lando Norris)
  • etc.
Each driver folder contains lap-specific telemetry and timing data.

File Types

These files are stored directly in the session folder and contain data applicable to the entire session:

weather.json

Environmental conditions recorded approximately once per minute during the session.Fields include:
  • Air temperature (wAT)
  • Track temperature (wTT)
  • Humidity (wH)
  • Rainfall indicator (wR)
  • Wind speed and direction (wWS, wWD)
  • Atmospheric pressure (wP)
Weather conditions dramatically affect lap times. Cold air reduces engine power, hot tracks reduce tire grip, and rain changes braking distances.

rcm.json

Race Control Messages sent by officials to teams about track status, penalties, and incidents.Message types:
  • Flag events (Yellow, Red, Green)
  • DRS status (Enabled/Disabled)
  • Car events (incidents, unsafe releases)
  • Track status changes

corners.json

Circuit corner information including position coordinates and angles for each corner on the track.Fields include:
  • Corner number
  • X, Y coordinates
  • Distance from start/finish line
  • Angle and rotation data

drivers.json

Driver roster with static information about each participating driver.Fields include:
  • Driver code (3-letter)
  • Full name
  • Team name
  • Car number
  • Team color (hex)
  • Headshot URL
These files are stored inside each driver’s folder and contain lap-specific data:

{lap_number}_tel.json

Detailed telemetry data for a specific lap, sampled at approximately 3.7 Hz (~270ms intervals).Basic metrics:
  • speed - km/h
  • throttle - 0-100%
  • brake - boolean (0/1)
  • rpm - engine revolutions per minute
  • gear - current gear (1-8)
  • drs - DRS status
Position data:
  • x, y, z - 3D coordinates (meters)
  • distance - distance from lap start
  • rel_distance - relative distance (0.0 to 1.0)
Acceleration vectors:
  • acc_x - longitudinal (forward/backward)
  • acc_y - lateral (side-to-side)
  • acc_z - vertical (elevation changes)
Acceleration values are computed by the extraction script using gradient analysis, not raw IMU sensor data. They include smoothing and outlier handling.
Other fields:
  • DriverAhead - car number of driver ahead
  • DistanceToDriverAhead - gap in meters
  • dataKey - unique identifier linking to driver and lap

laptimes.json

Comprehensive timing and performance information for all laps completed by this driver.Core timing:
  • time - lap time (seconds)
  • lap - lap number
  • sesT - session time when lap ended
  • lST - lap start time
Sector times:
  • s1, s2, s3 - sector times
  • s1T, s2T, s3T - session times when sectors were set
Speed trap data:
  • vi1, vi2 - intermediate speed traps
  • vfl - finish line speed
  • vst - longest straight speed
Tire information:
  • compound - tire type (SOFT, MEDIUM, HARD, etc.)
  • life - laps driven on this tire
  • fresh - new or used tire
  • stint - stint number
Position & status:
  • pos - race position at lap end
  • status - track status codes
  • pb - personal best lap indicator
Pit stops:
  • pin - pit entry time
  • pout - pit exit time
Data quality:
  • iacc - accuracy indicator
  • ff1G - FastF1 generated/interpolated
  • del - deleted by stewards
  • delR - deletion reason

File Naming Conventions

Session Files

  • Always lowercase or abbreviated
  • Placed directly in the session folder
  • Examples: weather.json, rcm.json, corners.json, drivers.json

Driver Folders

  • Uppercase 3-letter driver codes
  • Standard F1 driver abbreviations
  • Examples: VER, HAM, LEC, NOR, PIA

Telemetry Files

  • Format: {lap_number}_tel.json
  • Lap numbers start at 1
  • Examples: 1_tel.json, 2_tel.json, 15_tel.json

Lap Times File

  • Always named laptimes.json
  • Contains data for all laps by that driver in the session
  • One file per driver per session

Accessing Data Examples

Access a Specific Lap

Australian Grand Prix/
  Practice 1/
    NOR/
      5_tel.json
Norris’s 5th lap telemetry in FP1

Access Session Weather

Australian Grand Prix/
  Race/
    weather.json
Weather conditions throughout the race

Access All Driver Laps

Australian Grand Prix/
  Qualifying/
    VER/
      laptimes.json
All of Verstappen’s qualifying lap times

Access Race Control Messages

Australian Grand Prix/
  Race/
    rcm.json
All race control messages during the race

Data Key Format

Each telemetry record includes a dataKey field that uniquely identifies the data point:
Format: "Year-EventName-Session-DriverCode-LapNumber"

Examples:
- "2026-Australian Grand Prix-Race-VER-9"
- "2026-Monaco Grand Prix-Qualifying-LEC-12"
- "2026-PreSeasonTesting1-Practice 1-HAM-5"
For 2026 Pre-Season Testing, the event name uses PreSeasonTesting1 instead of Pre-Season Testing 1 (spaces removed) in the dataKey format.

Practical Navigation Tips

  1. Find a specific driver’s data: Navigate to {Event}/{Session}/{Driver}/
  2. Compare multiple drivers: Access the same lap number across different driver folders
  3. Analyze session conditions: Use session-level files (weather.json, rcm.json) for context
  4. Track progression: Read laptimes.json to see lap-by-lap performance trends
All JSON files use optimized serialization with NumPy support. Missing or invalid values are represented as the string "None" rather than null.

Build docs developers (and LLMs) love