1,559 finished MLB games since June 3, 2026, with every book's earliest and closing price at every line, as CSV, JSON or Parquet.
Since June 3, 2026: 1,559 games from 21 books. Last game added October 5, 2026.
What's in It
Sample
New York Yankees at Tampa Bay Rays, October 5, 2026: Tampa Bay Rays moneyline at each book, earliest captured and closing price.
| Book | Market | Earliest | Close | Movement |
|---|---|---|---|---|
| Pinnacle (reference) | Moneyline | +110 | +109 | +0.23 pts |
| Bally Bet | Moneyline | +107 | +102 | +1.20 pts |
| BetMGM | Moneyline | +110 | +105 | +1.16 pts |
| BetOnline | Moneyline | +109 | +108 | +0.23 pts |
| BetParx | Moneyline | +107 | +102 | +1.20 pts |
| BetRivers | Moneyline | +107 | +102 | +1.20 pts |
| Bovada | Moneyline | +107 | +106 | +0.23 pts |
| Caesars | Moneyline | +111 | +111 | 0.00 pts |
Download
The last 7 days, free. No signup, no key.
curl -o mlb.csv "https://theoddsgap.com/api/odds-history.csv?sport=baseball_mlb"
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. The last 7 days download free with no key. Full MLB history back to June 3, 2026 is 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 3, 2026. Our coverage starts on June 4, 2026 across every sport, so this is not a multi-season archive. It grows with every MLB game we scan.