What historical data does GRID offer, and how far back does it go?
Article 3776591, Status: VALIDATED
Table of Contents
❓Issue/Question
- How far back does GRID historical data go for CS2, League of Legends, Valorant, and Dota?
- What format does GRID historical data come in?
- What is the difference between Historical State and Historical Events?
- What data points are included in a historical data file?
- How can I preview or access GRID historical data?
💻Environment/Context
- GRID Historical Data
- Series State API
- Series Events API (WebSocket)
- File Download API
👌Resolution/Answer
GRID Historical Data refers to data generated from completed matches (series).
- Historical data is availability differs from title to title, but all titles have at least 2 years worth of data available
Types of Historical Data
GRID Historical Data is derived from the Live Data Feed and exists in two forms. The right choice depends on your use case.
Historical State |
Historical Events |
|---|---|
| Represents the final aggregated snapshot of a series → e.g. Match result (score, winner), Team stats (kills, assists, objectives), Player stats (kills, deaths, weapon usage), etc. | The full sequence of individual events that occurred during a series → e.g. each kill event as it happened, in order, the actor (who performed the action), the target (who/what was affected), etc. |
| Best suited for stats-based applications such as Fantasy platforms and visualisation widgets. | Best suited for in-play betting and live series modelling that requires event-by-event sequences. |
| Available externally via the Series State API and as a downloadable JSON file. | Provided as a compressed JSONL (JSON Lines) file via the File Download API or through the Series Events API. |
| Users can re-use their existing Series State API integration seamlessly. | Each event includes the actor, action, target, and how the event changed the GRID state. |
How to access historical data
Option 1 — Series State API
The Series State API returns the end state of any completed series in the same structure as the live feed. Clients with an existing Series State API integration can query past series immediately without any additional setup.
- Endpoint: the same GraphQL Series State API used for live data
- Authentication: standard GRID API key via
x-api-keyheader - Returns: aggregated end-state snapshot in JSON
- Best for: stats, Fantasy, visualisations
Option 2 — Series Events API (WebSocket)
When you connect to the Series Events API WebSocket for a past series, GRID automatically replays the full sequence of events for that series from start to finish, exactly as they were emitted during the live match. This means the same WebSocket integration used for live coverage can be reused to retrieve historical event data with no extra configuration.
- Protocol: WebSocket connection to the Series Events API
- Behaviour: connecting to a finished series triggers a full event replay from the beginning
- Returns: stream of individual events, each with actor, action, target, and resulting state change
- Best for: in-play betting models, live series modelling, ML training data
- Some in-play events such as damage related events are not available through this method
- This requires a special level of access that needs to be requested through your commercial contact
Option 3 — File Download API
The File Download API at https://api.grid.gg/file-download allows bulk download of historical data files for a given series. This is useful for one-off data exports or batch processing workflows that do not require a streaming integration.
The File Download API includes both the Series State and Series Events files.
More information is available here.
Data formats
Example Data Format (End-State)
Historical State follows the same structure as the Series State API:
Example Data Format (Event-Level - JSONL)
Historical Events are delivered in JSON Lines (JSONL) format:
- Each line = one transaction
- Each transaction contains one or more events occurring at the same timestamp
- Each event includes:
- Actor (who performed the action)
- Action (what happened)
- Target (who/what was affected)
- State delta (how the state changed)