1,859 finished Tennis games since June 18, 2026, with every book's earliest and closing price at every line, as CSV, JSON or Parquet.
Since June 18, 2026: 1,859 games from 17 books. Last game added October 13, 2026.
What's in It
Sample
Alejandro Davidovich Fokina vs Hubert Hurkacz, October 13, 2026: Hubert Hurkacz moneyline at each book, earliest captured and closing price.
| Book | Market | Earliest | Close | Movement |
|---|---|---|---|---|
| Pinnacle (reference) | Moneyline | -115 | -110 | -1.11 pts |
| Bally Bet | Moneyline | -120 | -122 | +0.41 pts |
| BetMGM | Moneyline | -125 | -115 | -2.07 pts |
| BetOnline | Moneyline | -120 | -116 | -0.84 pts |
| BetParx | Moneyline | -120 | -122 | +0.41 pts |
| BetRivers | Moneyline | -120 | -122 | +0.41 pts |
| Bovada | Moneyline | -120 | -115 | -1.06 pts |
| DraftKings | Moneyline | -127 | -118 | -1.82 pts |
Download
A sample week, September 15 to 21, 2026, free. No signup, no key.
curl -o tennis.csv "https://theoddsgap.com/api/odds-history.csv?sport=tennis"
Try it: /data/sample.csv holds every book's prices on one finished NFL game, New York Jets at Chicago Bears. Free, no signup, no key.
Questions
Right here. A sample week, September 15 to 21, 2026, downloads free with no key. Recent data and the full Tennis history back to June 18, 2026 are a subscription. Every file also comes as JSON or Parquet with the same rows and columns.
Closing lines, yes: each book's last price before the game started. For the open, you get the earliest price we captured at that line, which is not always the market's first posted line, and the file labels it that way.
To June 18, 2026. Our coverage starts on June 4, 2026 across every sport, so this is not a multi-season archive. It grows with every Tennis game we scan.