UFC stats API

UFC stats API for fighter, bout, and round-level data.

Pull the stats developers need for MMA profiles and dashboards: strikes, takedowns, control time, target splits, position splits, win methods, and round rows.

Developers searching for UFC stats want concrete stat fields, not just event schedules.

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=1

Fighter 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.

Welterweight28-1-0
Live profile shape

featured fighter

Islam Makhachev

GETendpoint
/api/v1/ufc/fighters/islam-makhachev/stats

2.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

REST JSON
Head
34471%
Body
11424%
Leg
276%
58%

Striking Accuracy

Sig. Strikes Landed

485

Sig. Strikes Attempted

830

56%

Takedown Accuracy

Takedowns Landed

13

Takedowns Attempted

73

MMA stat dashboards

Build sortable tables for fighter totals, round stats, and matchup comparisons.

Betting and research tools

Seed models with historical fight outcomes and detailed performance rows.

Content automation

Generate recap cards using method, round, time, knockdowns, and strike splits.

ufc stats api

Data developers can actually ship with

Striking accuracy and takedown accuracy
Knockdowns, significant strikes, total strikes, takedowns, and submissions
Control time, reversals, head/body/leg splits, and distance/clinch/ground splits
Win by method, significant strikes by target, and significant strikes by position
Round filters for apps that need one round at a time
GET/api/v1/ufc/fighters/{slug}/stats

Fighter profile stat charts and career aggregates.

GET/api/v1/ufc/bouts/{boutId}/stats

Bout-level fighter totals with optional round filtering.

GET/api/v1/ufc/bouts/{boutId}/rounds

Round-by-round fighter stat rows.

GET/api/v1/ufc/events/{eventIdOrSlug}/stats

All fight stats for one UFC event card.

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

Does the API include round-by-round UFC stats?

Yes. Use /api/v1/ufc/bouts/{boutId}/rounds or add ?round=1 to bout/event stats endpoints.

Does Cito API include significant strike splits?

Yes, the UFC stats endpoints include significant strike target and position splits where available.

Can I filter stats by round?

Yes. Bout and event stat endpoints support a round query parameter for round-specific rows.

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