# GetOdds vs OddsPapi

OddsPapi is built for breadth: it advertises 300+ bookmakers including Pinnacle, 60+ sports, a WebSocket feed and free historical odds. GetOdds is built for depth on three US sportsbooks (DraftKings, FanDuel, BetRivers) plus pick'em lines, with capture times on every price and built-in arbitrage and value feeds. For global or sharp-book coverage choose OddsPapi; for a US-focused app with a published flat price, GetOdds.

Canonical page: https://getoddsapi.com/vs/oddspapi

**Price.** Free development allowance: 1,000 requests per UTC day and 60 per minute per account, with no payment step. Paid: the Developer Bundle at $149 per month, with 10,000 monthly requests or credits on each of four sources. OddsPapi offers a free account and prices paid usage through a calculator on its site; it does not publish fixed plan prices.

## Free API key

Get a free GetOdds API key: **1,000 requests per UTC day and 60 per minute, no card**. One key covers REST and the hosted MCP server.

Sign up: https://getoddsapi.com/sign-up?ref=ai-claudebot

## Quickstart

1. Create an account at https://getoddsapi.com/sign-up?ref=ai-claudebot, open https://getoddsapi.com/dashboard and issue a key with the sources you need (draftkings, fanduel, betrivers, prizepicks or underdog). Keep it in a server environment variable named GETODDS_API_KEY.
2. Read current DraftKings NBA spreads with curl:

```bash
curl --fail-with-body "https://getoddsapi.com/api/v1/odds?sport=NBA&market=spread&fresh_only=true&limit=50" \
  -H "Authorization: Bearer $GETODDS_API_KEY"
```

3. The same request in Python (standard library only):

```python
import json, os, urllib.request

req = urllib.request.Request(
    "https://getoddsapi.com/api/v1/odds?sport=NBA&market=spread&fresh_only=true&limit=50",
    headers={"Authorization": "Bearer " + os.environ["GETODDS_API_KEY"]},
)
with urllib.request.urlopen(req) as res:
    rows = json.load(res)["data"]
for row in rows:
    print(row["away"], "at", row["home"], row["side"], row["line"], row["american"], row["observed_at"])
```

4. Check `observed_at`, `age_seconds` and `stale` on every row before using a price. Full reference: https://getoddsapi.com/docs

## Use with Claude (MCP)

```bash
claude mcp add --transport http getodds https://getoddsapi.com/api/mcp \
  --header "Authorization: Bearer $GETODDS_API_KEY"
```

The MCP tools follow the key's source grants and share its allowance. Setup guide: https://getoddsapi.com/use-with-claude

## Pricing

| Plan | Allowance | Price |
| --- | --- | --- |
| Free key | 1,000 requests a day, 60 a minute | $0, no card |
| Developer Bundle | 10,000 requests or credits a month on each of four sources | $149 a month |

Free development allowance: 1,000 requests per UTC day and 60 per minute per account, with no payment step. Paid: the Developer Bundle at $149 per month, with 10,000 monthly requests or credits on each of four sources.
Details: https://getoddsapi.com/bundle

## Facts

- **OddsPapi books:** 300+, including Pinnacle
- **OddsPapi sports:** 60+
- **GetOdds books:** DraftKings, FanDuel, BetRivers
- **GetOdds price:** Free tier, $149/month bundle

## Side by side

OddsPapi figures come from its public homepage and pricing page, checked on November 9, 2026.

|  | GetOdds | OddsPapi |
| --- | --- | --- |
| Bookmakers | DraftKings, FanDuel, BetRivers | 300+, including Pinnacle, bet365, DraftKings, FanDuel, BetMGM |
| Sports | NFL, NBA, NHL, NCAAF, NCAAB, EPL, MLS | 60+ sports, 12,000+ competitions a year |
| Free access | 1,000 requests/day | Free account; free historical data |
| Paid pricing | $149/month, published | Usage calculator; no fixed tiers published |
| Streaming | WebSocket for DraftKings changes | WebSocket feed |
| Historical odds | 7-day history; archive since November 2026 | Historical odds with line movement, offered free |
| Pick'em lines | PrizePicks, Underdog, Pick6, FanDuel | Not a stated focus |
| Analysis endpoints | Arbitrage, value, dropping odds | Raw odds; tools built by you |

## Where OddsPapi is the better choice

Anything that needs many books. Line shopping across a whole market, +EV against Pinnacle, Asian handicaps, tennis, cricket or esports: OddsPapi lists all of these and GetOdds has none of them. Its free historical data is also a strong offer for model training.

## Where GetOdds is the better choice

A predictable bill and a narrow, well-documented contract. GetOdds publishes its price and limits, returns per-row observation times with a stale flag, and keeps each sportsbook's native IDs rather than claiming a universal mapping. It also covers US pick'em operators that general odds aggregators usually leave out, and exposes everything through a hosted MCP server for AI agents.

## Test GetOdds against your own sample

Pick three games you care about and request them from both providers at the same moment. Compare the market, line, price and timestamp field by field. This call returns GetOdds' DraftKings prices for one league; swap the sport code for yours.

```bash
curl --fail-with-body "https://getoddsapi.com/api/v1/odds?sport=NBA&fresh_only=true&limit=200" \
  -H "Authorization: Bearer $GETODDS_API_KEY"
```

## FAQ

### Does GetOdds have Pinnacle like OddsPapi?

No. If you need Pinnacle prices, OddsPapi or another aggregator is the right choice.

### How much does OddsPapi cost?

OddsPapi prices usage through a calculator on its pricing page rather than fixed public tiers, and offers a free account to evaluate.

### Which has better historical data?

OddsPapi advertises free historical odds with line movement. GetOdds keeps seven days of change history and a forward-only archive.

## Sources checked

- [OddsPapi homepage](https://oddspapi.io/en)
- [OddsPapi pricing](https://oddspapi.io/en/pricing)

---

GetOdds is an independent developer product and is not affiliated with any sportsbook or pick’em operator. Prices describe data, not betting advice.
