Polymarket esports data

Polymarket prices professional esports matches the way it prices everything else: a live order book per outcome. Marketlens records those books through every match, 20,135 markets across League of Legends, Dota 2, Counter Strike, Valorant, $220.1M of traded volume since August 15, 2026. This page is about the esports dataset; endpoint reference is in the docs and per title coverage numbers are in the esports catalog.

What the esports dataset holds

Match winner markets for every League of Legends, Dota 2, Counter-Strike, and Valorant fixture Polymarket lists, plus map and game winner markets on the bigger series. Each market carries full L2 order book snapshots with millisecond price changes between them, executed trades, and, once the match settles, its stored winning outcome. Odds reprice through drafts, picks, and every fight, so the book is a tick level record of how the crowd digested the match.

Tournament schedules make esports unusually good backtest material: a steady stream of structurally similar matches, each one a fresh market with an objective resolution a few hours later.

Title coverage

Every title links to a live coverage page with market counts, resolution splits, and date ranges:

League of Legends4,856 markets, 4,855 resolved, $70.9M volume
Dota 21,984 markets, 1,984 resolved, $54.5M volume
Counter Strike11,625 markets, 11,620 resolved, $87.4M volume
Valorant1,670 markets, 1,670 resolved, $7.2M volume

Traditional leagues are collected the same way and live on sports odds history.

Query a title in Python

python
from marketlens import MarketLens client = MarketLens() # resolved League of Legends markets with their winners for market in client.markets.list( series_id="league-of-legends", subtype="moneyline", status="resolved", take=10, ): print(market.question, market.winning_outcome) # replay the last three hours of one match's book for market, book in client.orderbook.walk( market.id, after=market.data_end - 3 * 3_600_000, before=market.data_end, ): print(book.as_of, book.best_bid, book.best_ask)

Common questions

Where can I get Polymarket esports odds history?

Marketlens records the order books of every Polymarket esports match market through the whole series: 20,135 markets across League of Legends, Dota 2, Counter Strike, Valorant with $220.1M of traded volume. It is served through a REST API, a Python SDK (pip install marketlens), and bulk Parquet exports, with a free tier covering markets open in the last 7 days and the full archive on Pro.

Which esports titles have Polymarket odds history?

League of Legends, Dota 2, Counter-Strike, and Valorant, every match market Polymarket lists for them. Match winner markets cover every fixture; bigger series add map and game winner markets. Collection began August 15, 2026 and runs continuously as tournaments play out.

Does Polymarket show historical esports odds?

Polymarket's own pages show live odds; once a match ends, the price path is gone from the UI. Marketlens keeps the historical record: full L2 order books at millisecond resolution, trades, and the resolved winner for every captured match market.

Can I backtest esports betting strategies on Polymarket data?

Yes. The Marketlens Python SDK replays the recorded match books tick by tick with queue priority, latency, slippage, and Polymarket fees, and settles positions by the stored winning outcome. See marketlens.trade/docs/backtesting.

Try it

Pull esports books in one call

The free tier includes 2M data rows and every market open in the last 7 days, no card required.

bash
$ pip install marketlens