DATA ANALYTICS / DESKTOP WEB APP

GT7 Telemetry Lab.

Driving Data. Better Decisions.

A local Windows application that reads Gran Turismo 7 driving logs and visualizes differences between laps. Find sections where time is lost, then decide what to try on the next lap.

BUILT WITHReactTypeScriptPythonFastAPIpandasNumPyPlotly.js
Analysis / Your lap and referenceACTUAL APPLICATION SCREEN

Why was that lap slower?
Turn it into something to test.

A lap time alone does not tell you which input to change. GT7 Telemetry Lab aligns your lap and a reference by distance, connecting sections with time losses to differences in driving inputs—and then to focused practice.

01

COMPARE

Find the reason behind the gap.

Compare your lap with a reference at the same distance. Read the differences in time delta, speed, braking, and throttle to understand how the inputs differ.

02

FOCUS

Know where to look.

Identify sections with larger time losses as improvement candidates. The selected section, telemetry traces, and track map work together to show where differences occur.

03

PRACTICE

Take the insight into the next lap.

Save a section to your practice plan. Review how full-lap and section times change across your recorded laps.

Explore the data further.

Another view: driving history

Review records across driving conditions.

Review records across multiple tracks and cars.

Driving history / Records across tracks and carsACTUAL APPLICATION SCREEN

Local data. Local processing.

The browser, API, and driving CSV files run on the same PC. FastAPI serves the built frontend alongside the API. Python modules keep analysis calculations separate from the interface.

INPUT / EXTERNAL LOGGERDriving CSV filesRead from a selected folder
Source files remain read-only
PROCESS / LOCAL APIFastAPI + Pythonpandas / NumPy
Preprocessing, interpolation, comparison
INTERFACE / BROWSERReact + Plotly.jsTypeScript / TanStack Query
Telemetry, track map, practice history

Sections, settings, manually entered records, and video synchronization data are stored as local JSON. An external logger handles UDP reception from GT7. The optional YouTube video integration requires an external connection.

The decisions behind the numbers.

Align by distance, not time.

Elapsed time is calculated from 60 Hz samples, and cumulative distance from 3D coordinates. Linear interpolation on a one-meter grid aligns laps driven at different speeds. Final lap times are read from CSV filenames.

Make improvement candidates explainable.

Sections are evaluated at a selected width of 300–1,000 meters. Those losing more than 15 ms against the reference are ranked by time loss. Rule-based hints use differences in braking position, average speed, and full-throttle position.

Connect traces and map in one interaction.

Selecting an improvement candidate aligns the distance range. A telemetry cursor also marks the position on the track map. Chart updates are serialized, unnecessary cursor-driven redraws are reduced, and gear traces preserve the original state transitions.

Keep the source data intact.

Required columns, invalid values, and abnormal distances are validated, with errors shown in the interface. CSV files are never rewritten. Application settings are stored separately in JSON, using temporary-file writes followed by replacement.

A hands-on experience, coming next.

A walkthrough video and a separate public demo using sample data are planned.

An unofficial, independently developed tool. Gran Turismo 7 and related trademarks belong to their respective owners.

Application screen

Scroll horizontally to explore the details. Press Esc to close.