UFC fight stats API for bout results and round-by-round analytics.
Fetch completed fight results, fighter totals, and individual round rows so your app can power fight recaps, research screens, and matchup pages.
Users searching this term usually need bout IDs, event stats, and exact round filters.
773
event records
8.6k+
fight rows
40k+
round stat rows
500
free calls/month
Live API shape
UFC fight stat workflow
curl "https://api.citoapi.com/api/v1/ufc/events?hasStats=true&page=1&limit=50" \
-H "x-api-key: YOUR_API_KEY"
{
"success": true,
"pagination": { "page": 1, "limit": 50, "hasMore": true },
"data": [
{
"slug": "ufc-328-chimaev-vs-strickland",
"dataId": "9eedac48b497de5a",
"hasStats": true,
"boutCount": 13
}
]
}Round filter
GET /api/v1/ufc/bouts/770c5302e32916ea/stats?round=1Fighter profile data
Fighter profile data that is ready for real product screens.
Use fighter images, record data, accuracy stats, win method splits, and strike target fields to build UFC profile pages, dashboards, and matchup tools without cleaning the data yourself.
featured fighter
Islam Makhachev
/api/v1/ufc/fighters/islam-makhachev/stats2.45
Sig. str. landed/min
3.10
Takedowns/15 min
0.30
Knockdown avg
46%
Wins by submission
sample response fields
{
"fighter": "Islam Makhachev",
"record": "28-1-0",
"sigStrikesByTarget": {
"head": { "count": 344, "percent": 0.71 },
"body": { "count": 114, "percent": 0.24 },
"leg": { "count": 27, "percent": 0.06 }
}
}fighter stat graphic
Sig. Str. By Target
Striking Accuracy
Sig. Strikes Landed
485
Sig. Strikes Attempted
830
Takedown Accuracy
Takedowns Landed
13
Takedowns Attempted
73
Fight recap pages
Render card-by-card results with winners, finish methods, and stat leaders.
Round scoring tools
Pull round-specific strike and grappling rows for detailed breakdowns.
Historical databases
Page through events and bouts to seed your own MMA analytics product.
ufc fight stats api
Data developers can actually ship with
/api/v1/ufc/bouts?hasStats=true&includeStats=trueFind completed fights that already have stats.
/api/v1/ufc/bouts/{boutId}Get bout result, fighters, method, round, time, and event context.
/api/v1/ufc/bouts/{boutId}/stats?round=1Get one fight's stats, filtered to a specific round.
/api/v1/ufc/events/{eventIdOrSlug}/stats?round=3Get all event fight stats for one round.
Built for product screens
From event list to fight stats without guessing endpoints.
Start with events, open the card, fetch bouts, then request event-level or bout-level stats. Every page in the UFC cluster links back to the same no-friction docs and signup flow.
FAQ
How do I get UFC stats for one fight?
Call /api/v1/ufc/bouts/{boutId}/stats. Add ?round=1 when you only want one round.
How do I find bout IDs?
Start with /api/v1/ufc/events?hasStats=true or /api/v1/ufc/bouts?hasStats=true, then use the returned bout ID.
Can I load all stats for a card?
Yes. Use /api/v1/ufc/events/{eventIdOrSlug}/stats to fetch stats for every fight on an event card.
Start building with UFC data today
Create a free key, test the UFC endpoints, and upgrade only when your app, dashboard, or data product needs more volume.
Get Free API Key