The Baseball API for developers ballers.
MLB data behind one API: live scores with inning-by-inning linescores, run-line and totals odds, confirmed starting pitchers, and per-player box scores. Statcast pitch data (exit velocity, barrel rate, xwOBA) is in development.
1,000 req/day free (2,000 with GitHub). No credit card.
MLB · 2026 season · regular season + postseason
The MLB API page goes deeper on lineups, events, and the Statcast surface. For pitch-level Statcast, see /mlb-statcast-api. See the MLB API →
Stats included
Every baseball stat field the API returns today — 22 in total, grouped by how they are produced. Each group carries its own freshness, because a sport is rarely uniformly current.
Per-game player stats
Post-gameWritten after the game ends — not a live in-game feed. Last ingested 2026-08-30.
- Endpoint
- /v1/players/:id/stats
- Last updated
- 2026-08-30
Fields (17)
ERA, RBIs, At Bats, Batting Average, Earned Runs, Innings Pitched, Hits, Hits/At Bats, Home Runs, On-Base %, Pitches, Pitches/Strikes, Runs, Slugging %, Stolen Bases, Strikeouts, Walks
Team stats (per game)
Post-gameWritten after the game ends — not a live in-game feed. Last ingested 2026-08-30.
- Endpoint
- /v1/matches/:id/statistics
- Last updated
- 2026-08-30
Fields (5)
Batting, Fielding, Pitching, Records, Score
Not included
- Not shown here — pitch_level: pitch-level Statcast data with no route serving it.
Missing a stat?
We build what people actually ask for. If a field you need is not on this page, tell us — requests are how we decide what to add next.
What you can build
Live score widget
Embed real-time MLB scores with inning-level linescores.
Starting pitcher tracker
Probable and confirmed starting pitchers as soon as MLB posts them.
Fantasy baseball tool
Per-player box scores and season aggregates in one feed.
Betting research tool
Moneyline, run-line, and totals odds with against-the-spread splits.
Standings dashboard
Division and league standings with games-back and win percentage.
At-bat event feed
Home runs, strikeouts, walks, and RBIs as they happen.
Statcast research
2.89M pitch-level rows across 2023-2026 — barrel rate, xwOBA, exit velocity, bat tracking (2024+). Public endpoint in development; see /mlb-statcast-api.
MLB odds: live lines and the archive: MLB Odds API: Live and Historical.
Endpoints
On the gateway at api.bigballsdata.com. Authenticate with the bearer token from /dashboard/keys.
| Method | Path | Returns | Plan |
|---|---|---|---|
| GET | /v1/matches?sport=baseball&league=mlb | Live + scheduled MLB games with inning linescores | Free |
| GET | /v1/standings?sport=baseball&league=mlb | Division + league standings (W-L, GB, win %) | Free |
| GET | /v1/matches/:id/odds?sport=baseball | Moneyline, run line, totals across 16+ books | Edge |
| GET | /v1/matches/:id/events?sport=baseball | Home runs, strikeouts, walks, RBIs | Free |
| GET | /v1/stored/matches/:id/lineups | Starting lineups + pitcher matchups | Free |
| GET | /v1/players/:id/stats?sport=baseball | Per-season player stats | Free |
| GET | /v1/teams/:id/form | Recent W/L form | Solo |
| GET | /v1/injuries | Injury reports (coming soon) | Coming soon |
Start on the free tier
100 requests per minute and 1,000 per day, free — the highest per-minute burst of any free sports API we checked. Burst is what matters when something asks several questions in a row and waits on each answer.
- Every sport and league we cover — the paid tiers add history depth and premium fields, not more leagues.
- Calls are counted one for one — no credit weighting, no markets-times-regions arithmetic.
- Link GitHub and the daily cap goes to 2,000.
- No credit card.
Or ask your AI tool directly
Connect your account to Claude, ChatGPT, Cursor, Perplexity or any other MCP-compatible tool and ask for baseball data in conversation — scores, standings, player stats and Elo ratings, with no API key to paste and no code to write. Your plan and limits carry over exactly as they do here.
Connect your AI tool →Integrate in a few lines
import { BigBallSportsClient } from '@bigballsdata/sdk';
const client = new BigBallSportsClient(process.env.BBS_API_KEY!);
const games = await client.matches.list({ sport: 'baseball', league: 'mlb' });
for (const g of games.data) {
// home and away are objects, not strings.
console.log(g.home.name, 'vs', g.away.name, '-', g.status);
}Free covers a real app. Scale when you need to.
1,000 req/day free (2,000 with GitHub). Production starts at $49/mo. Live WebSocket push on Pro+.
Frequently asked
- Is there a free baseball API?
- Yes. Scores, inning linescores, standings, lineups, and box-score stats on the free tier at 1,000 req/day (2,000 with GitHub), no credit card. Odds require the Edge plan ($149/mo) or higher. Injury reports are coming soon.
- What is the difference between the Baseball API and the MLB API?
- Same data, same endpoints — this page is the broad entry point, and /mlb-api is the league-specific deep dive with field-level docs on lineups, at-bat events, and the Statcast surface. Every league we cover is baseball = MLB today, so both pages serve the identical /v1/matches?sport=baseball surface.
- Are starting pitchers available in advance?
- Yes. Probable pitchers surface in the lineups endpoint as soon as MLB confirms them, typically the morning of the game; final lineups confirm closer to first pitch.
- Can I track at-bat outcomes?
- The events endpoint surfaces at-bat-level outcomes (home runs, strikeouts, walks, RBIs). For pitch-by-pitch analytics, 2.89 million Statcast pitches are loaded — see the next answer and /mlb-statcast-api.
- Can I get Statcast data?
- 2.89 million pitches across the 2023, 2024, 2025 and 2026 seasons are loaded (barrel rate, xwOBA, exit velocity, launch angle, bat tracking for 2024+). The dedicated public endpoint is in development; see /mlb-statcast-api for the planned shape.
- How fast do live MLB scores update?
- REST cache window is 15 seconds during live games (~200ms typical round trip). WebSocket push is on the Pro plan.
Leagues in this sport
Every league we serve for this sport, each with its own endpoints and coverage.