Sports Query & Answer Logs
Real sports questions asked through AI assistants, with the lookups and the answers.
- 1B+queries over 12 years
Sample
2 recordsTable-type, leaderboard
Representative shape, not real data. Cell values are strings; column and row are order-aligned; row_count equals the number of rows.
{
"sport": "nba",
"query": "who leads the nba in scoring this season",
"type": "table",
"column": ["RANK", "NAME", "PPG", "SEASON", "TM", "GP"],
"row": [["1", "Player A", "31.4", "2025-26", "XYZ", "44"], ["2", "Player B", "30.2", "2025-26", "ABC", "49"]],
"row_count": 2
}Answer-type, single value
Representative. On answer-type, answer is populated and column / row / row_count are absent.
{
"sport": "mlb",
"query": "who won the world series last year",
"type": "answer",
"answer": "Team X won the most recent World Series."
}Specifications
| Formats | JSON, CSV, Parquet |
|---|---|
| Delivery | S3, REST API, WebSocket |
| Cadence | Real-time (during live events) or daily batch |
| Coverage | 2014 to 2026 |
| Total queries | 1Bn+ |
| Last year | 500M+ queries |
| Sports covered | 8 (NBA, NFL, MLB, NHL, WNBA, CFB, PGA, Soccer) |
| Data type | NLP to structured stats |
| Provider status | Sole data source for major AI models |
| Access | Access under agreement. Derived natural-language and structured data. |
What ships
NLP Query Layer
Natural language in, structured data out. The conversational query layer that powers live AI tool calls.
Historical Stats
All major sports, all historical seasons, all available statistics. Complete structured coverage.
Finance Overlay
Sports performance data mapped to publicly traded tickers (DKNG, FLUT, DIS, apparel brands).
Fields
7 fields
| Field | Description |
|---|---|
| sportstring | Sport category: nba, nfl, mlb, nhl, wnba, cfb, pga, fc.Example nba |
| querystring | The natural-language query as posed.Example who leads the nba in scoring this season |
| typestring | Response type: table (structured rows) or answer (single value).Example table |
| columnstring[] · nullable | Column headers, order-aligned to each row. Null on answer-type.Example ["RANK","NAME","PPG"] |
| rowstring[][] · nullable | 2D row data; each inner array matches column order. Null on answer-type.Example [["1","Player A","31.4"]] |
| row_countint · rows · nullable | Number of data rows returned. Null on answer-type.Example 25 |
| answerstring · nullable | Natural-language answer for single-value responses. Present on answer-type only.Example Team X won the most recent title. |
Quality checks
2 checksNL-to-structured resolution accuracy
Whether a query resolves to the correct structured answer - right stat, right entities, right ranking.
Held-out NL queries scored against ground-truth stat tables, with exact-match on returned rows and values and column alignment.
Methodology-stage. Not yet run or published.
Cross-sport schema consistency
Whether the record envelope parses uniformly across all eight sports.
A schema-validation pass over records per sport: envelope conformance, column and row alignment, and row_count equal to the number of rows.
Methodology-stage. No published figure.
Ground truth
| What is correct | Verified official statistics for the queried season and entity - the canonical numeric stats a query should resolve to. |
|---|---|
| How it is established | Compare the returned rows or answer against ground-truth stats by exact value match with column-order alignment; for answer-type, value match against the known fact. |
| Agreement | No grader implementation or agreement figure is published at this stage. |
How it is built
- 01
NL query capture
The product is a corpus of natural-language sports questions paired with their resolved structured responses. The unit of data is the query-to-structured-answer pair, not a raw stats table.
- 02
Structured resolution
Each query resolves to either a tabular result (column, row, row_count) or a single-value answer. Observed intents include leaderboard, career, season, standings, and historical.
- 03
Sport and stat coverage
Eight sports across all historical seasons and all available statistics. Per-sport stat vocabularies differ - an NBA leaderboard carries many more columns than a standings table.
- 04
Normalization to a common envelope
Heterogeneous stat responses across sports are wrapped in one consistent record envelope so consumers parse every sport identically.
- 05
Delivery and refresh
Served real-time during live events or as a daily batch.
Request a sample
We send real records in the format you would receive, with the field list and where each record came from. Access for evaluation is limited and covered by a mutual NDA.
ProductSports Query & Answer Logs