Odds API pricing: per request vs flat monthly
Answer: odds APIs use three pricing models. Credit bundles charge by request volume (The Odds API: free 500 credits a month, then 20K credits for $30/mo up to 15M for $249/mo, as published on 9 Nov 2026). Hourly quotas include a request rate and sell more as add-ons (odds-api.io Solo includes 5,000 requests an hour). Flat plans charge one price with a rate limit: PinnFeed's paid plans have no daily request cap, and on Builder (€99/mo) price changes are pushed over a WebSocket, so watching a market does not cost a request per check. Credit bundles suit occasional checks across many books; a flat plan suits continuous monitoring of Pinnacle prices.
The three models side by side (published 9 Nov 2026)#
| Model | Example | What you pay for | Push |
|---|---|---|---|
| Credit bundle | The Odds API: 500 free credits/mo; 20K $30/mo; 100K $59; 5M $119; 15M $249 | Request volume; their page counts one request as one sport, one market, one region | None (REST polling) |
| Hourly quota | odds-api.io Solo £49/mo, 5,000 requests/hour; more hourly requests as monthly add-ons (10,000/h +£139/mo) | Number of books plus request rate; WebSocket costs 2× the plan | WebSocket (2× plan) |
| Flat with rate limit | PinnFeed Free 1,000 requests/day (30 s delay) · Hobby €29/mo, 2 req/s · Builder €99/mo, 10 req/s · Pro €199/mo, 30 req/s | Plan features and speed; no daily cap on paid plans | WebSocket on Builder and Pro |
Competitor figures are as published on each vendor's pricing page on 9 Nov 2026 and can change; odds-api.io lists prices exclusive of tax, PinnFeed prices include VAT where applicable. Vendors that only quote on request (for example OpticOdds or the OddsJam API) are "quote only" and not in this table.
Worked example: polling one market#
Suppose you poll one sport and three markets every 10 seconds, all day:
- 6 polls a minute × 1,440 minutes = 8,640 polls a day, about 259,200 a month (30 days).
- Under a rule of one request per sport, market and region, three markets is about 777,600 requests a month. That is above the 100K bundle and inside the 5M bundle ($119/mo as published).
- On a flat plan with a WebSocket, the same watch is one connection: you receive each change when PinnFeed's server gets it, instead of up to 10 seconds late, and the pushes are not counted as requests.
Polling every 60 seconds instead cuts the volume by 6×, but you see each move later. For the math of push versus polling: push vs polling.
When each model fits#
- Many bookmakers, occasional checks: a credit bundle is usually the better fit; PinnFeed carries Pinnacle only. Multi-book vs Pinnacle-only.
- Pinnacle prices watched all day, live or prematch: a flat plan with push. Builder is the lowest published live + prematch Pinnacle WebSocket on monthly or annual billing (Nov 2026); oddssea's Prematch plan ($59) is lower but prematch-only, odds-api.io Solo + WebSocket is €118/mo (tax-exclusive), and its annual ≈ €98.33/mo is above Builder annual at €82.50/mo. Details: compare.
- Prototypes: start on a free tier and measure your real request pattern first: free odds APIs.
Plans#
Builder (€99/mo, €990/yr): WebSocket, 3 connections, all markets, closing records. 3-day trial; a card is required and it is charged after day 3 unless you cancel.
Educational content for adults (18+). No tips, no guaranteed profit.
Questions people ask#
Do WebSocket messages count against PinnFeed's rate limit?#
No. The rate limit applies to REST requests. On the WebSocket, the limit is the number of simultaneous connections (3 on Builder, 10 on Pro).
What happens if I exceed PinnFeed's limits?#
REST returns 429 rate_limited with a Retry-After header; Free also has 429 daily_quota after 1,000 requests (resets 00:00 UTC). See rate limits.
Is a credit bundle ever the better deal?#
Yes, for low volumes or when you need many bookmakers. The Odds API's free tier and $30 bundle cost less in absolute terms than any paid PinnFeed plan; see The Odds API polling vs push.