The UFC runs a card most weekends, and the betting market around each one behaves differently from a team sport. Prices move on weigh-in results, late replacements and card reshuffles rather than on injury reports and lineups. Our UFC odds API is built to keep up with that, returning every bout on a card with its full market tree in one request.
For the wider picture — how fight data is structured, the full strike prop vocabulary and round period codes — see the MMA odds API.
UFC Odds API Features
Coverage spans numbered events and Fight Nights across the full calendar, from the prelims through the main card and the headline bout.
Available UFC betting markets include:
- Fight winner (moneyline), and 3-way lines where books price a draw
- Round betting — individual rounds and the opening-rounds market
- Rounds completed over/under, and even/odd
- Distance markets — whether the fight reaches the judges
- Yes/No propositions on fight outcomes
- Fighter props built on strikes, significant strikes and knockdowns
Coverage is deepest on the main card and the headline fight, where the widest set of books price the full market. Preliminary bouts reliably carry the fight winner and distance markets, with props where individual sportsbooks post them.
All market data is available pre-fight and live. Odds refresh sub-minute on the Pro plan, with Rookie and the free Amateur tier updating on a longer interval — see pricing for the frequency on each tier.
UFC Fighter Props
UFC props are strike-based, and the vocabulary is unusually granular. Strikes are broken down by target — head, body and leg — and by position, meaning at distance, in the clinch or on the ground. Those two dimensions combine, and each exists as landed versus attempted and as significant versus total. Knockdowns, ground time, clinch time and fight time round it out.
That granularity is what makes fight-style modelling possible: position data separates a striker from a grappler in a way that headline odds never will. See the UFC player prop odds API for the complete market list across every sport we cover.
UFC Odds API with Results
Odds and results arrive together in one unified response, so you can settle fight markets without adding a second data source. Each response includes:
- Upcoming and completed bouts across the card
- Both fighters as event participants
- Fight statistics, including the strike breakdowns above
- Full odds coverage — fight winners, round markets, distance lines and props
- Final results and settlement data
Line movement is tracked throughout, which matters more in the UFC than in most sports: a missed weight or a short-notice replacement can reprice a fight entirely in the days before it happens.
Try it Out
See live odds for an upcoming event
https://api.sportsgameodds.com/v2/eventsRequest Parameters
leagueID=NFLOnly NBA games
oddsAvailable=trueOnly games with available odds
includeAltLines=falseDon't return alt-lines
limit=1Number of games to return
Quick Start: Your First UFC Odds API Call
Fetching UFC odds takes a single HTTP request:
https://api.sportsgameodds.com/v2/events?apiKey=YOUR_API_KEY&oddsAvailable=true&leagueID=UFC&limit=10
Cards are scheduled irregularly rather than on a weekly cadence, so filtering by date range is usually more useful than a plain limit.
To pull the rounds-completed market for upcoming fights, use oddIDs:
https://api.sportsgameodds.com/v2/events?apiKey=YOUR_API_KEY&oddsAvailable=true&leagueID=UFC&oddIDs=roundsCompleted-all-game-ou-over,roundsCompleted-all-game-ou-under
OddIDs follow the format {statID}-{statEntityID}-{periodID}-{betTypeID}-{sideID}. Rounds completed is a fight-level stat, so its statEntityID is all rather than a fighter ID — fighter-level props use the fighter's ID in that slot instead.
Tips to keep responses lean:
- One object is one fight, no matter how many markets it returns, so a twelve-fight card costs 12 objects
- Add
bookmakerID=fanduel,draftkingsto limit results to the books you care about - Use
includeOpposingOdds=trueso you only need to specify one side of a market
What a UFC response looks like
Every fight returns an odds object keyed by oddID. Here's a trimmed rounds-completed market, with the bookmaker list cut to two books:
{
"eventID": "...",
"leagueID": "UFC",
"odds": {
"roundsCompleted-all-game-ou-over": {
"oddID": "roundsCompleted-all-game-ou-over",
"opposingOddID": "roundsCompleted-all-game-ou-under",
"marketName": "Total Rounds Completed Over/Under",
"statID": "roundsCompleted",
"statEntityID": "all",
"periodID": "game",
"betTypeID": "ou",
"sideID": "over",
"fairOdds": "-120",
"fairOverUnder": "1.5",
"bookOdds": "-125",
"bookOverUnder": "1.5",
"byBookmaker": {
"draftkings": { "odds": "-130", "overUnder": "1.5", "available": true },
"fanduel": { "odds": "-120", "overUnder": "1.5", "available": true }
}
}
}
}
The statEntityID here is all, which marks a fight-level market rather than one attached to a fighter — the same convention team sports use for game totals. Rounds completed is stored as a decimal, so a fight stopped halfway through round two settles at 1.5 rather than being rounded to a whole number. Fighter-level props carry the fighter's ID in that slot instead of all, which is the single field you filter on to separate the two.
UFC Odds API Technical Specifications
API Architecture
- REST API — standard HTTP endpoints returning clean JSON
- WebSocket feeds — real-time push updates on the All-Star plan, no polling required
- Rate limits — scalable plans matched to your usage volume
- Authentication — secure API key access
Data Update Speed
- Odds updates — sub-minute refresh on Pro; longer intervals on Rookie and Amateur
- Live scores — updated in real time during events
Developer Resources
- Interactive documentation — live examples and copy-paste snippets
- SDKs & libraries — JavaScript/TypeScript, Python, Ruby, Go and Java
- Postman collection — pre-built requests ready to run
- Dedicated technical support across paid plans
Use Cases
Odds Comparison Platforms — Show fight odds from 85+ bookmakers side by side. Books diverge more on UFC cards than on major team sports, so line shopping is worth more here.
Arbitrage & +EV Tools — Weigh-ins, late replacements and card reshuffles create short-lived pricing gaps between books.
DFS & Lineup Tools — Strike and knockdown props map directly onto UFC DFS scoring formats.
Sports Analytics & Research — Build fight-style models on position and target data rather than on headline odds alone.
Betting Automation — Monitor fight lines across bookmakers and trigger programmatic actions when your target price appears.
Sportsbook & Fantasy Apps — Power your platform with reliable real-time UFC odds across every card on the calendar.
UFC API Documentation
Our interactive documentation covers everything you need to integrate UFC odds:
- Full endpoint reference with parameters and response schemas
- Live request and response examples
- Code snippets in Python, JavaScript and more
- Authentication setup and API key management
- Error handling and troubleshooting
For the structural details — how fights are modelled, round period codes and the full strike stat vocabulary — see the MMA odds API, or start with the API basics.
Frequently Asked Questions
What UFC betting markets does the API cover?
Does coverage include prelims or only the main card?
How does round betting work?
What fighter props are available?
How are fighters represented in the response?
How often do UFC odds update?
Is there a free UFC odds API?
How does object-based pricing work for a fight card?
Ready to get started?
Join thousands of developers building the next generation of sports and betting applications.