UFC Stats Fighters Scraper
Pricing
from $3.00 / 1,000 results
UFC Stats Fighters Scraper
Scrape UFC fighters from ufcstats.com. Filter by letter or keyword, or paste a UFC Stats URL.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Marco Rodrigues
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
🥋 UFC Stats Fighters Scraper
Want UFC Stats fighters in a spreadsheet? This scraper makes it easy.
Use structured filters — better for AI agents — or paste an input_url or start_urls. When either URL field is set, those pages are scraped and the filters are left unused. If both are set, both lists are scraped.
UFC Stats lists fighters with height, weight, reach, stance, win-loss record, and a belt mark for current champions. A profile visit, off by default, adds the date of birth and the career striking and takedown numbers. This actor returns up to 2000 rows per run.
💡 Perfect for...
- Matchups: Export fighter size, record, and career striking numbers.
- Media: Build a fighter index with the public profile URL.
- Data analysts: Slice the roster by letter, stance, or win total.
- 🤖 AI Agents: Power Claude, Cursor, Codex, the Hermes Agent, and OpenClaw workflows with live results.
- 📚 RAG Systems: Feed titles and public URLs into retrieval pipelines.
- 🔗 AI Workflows: Plug into LangChain, AutoGPT, CrewAI, and similar stacks.
✨ Why you'll love this scraper
- 🔗 Input URL or Filters: Paste UFC Stats pages, or type the same filters as the site. URLs win over filters.
input_urlandstart_urlsare combined. - 🎯 Website-Matched Filters: Last-name letter, stance, keyword, and minimum wins or losses.
- 🌐 Index rows: Record, size in inches, and the belt mark. Career numbers and the bout list are optional.
📦 What's inside the data?
Every row has id, url, name, first_name, last_name, nickname, height, weight, reach, stance, belt_holder, wins, losses, draws, record, height_inches, weight_lbs, reach_inches, and total_fights.
date_of_birth, age, no_contests, and the career striking and takedown numbers are added when include_career_stats or include_fight_history is on. fight_history is added only when include_fight_history is on. That visit fills the career numbers too.
🚀 Quick start
Option A: paste http://ufcstats.com/statistics/fighters?char=a&page=all, or put fighter pages in start_urls.
Option B: set a letter such as J, a keyword such as Jon Jones, and max_results. Leave the letter empty to walk the alphabet.
Input Example (filters):
{"letter": "J","query": "Jon Jones","include_fight_history": true,"max_results": 3}
Input Example (URL):
{"input_url": "http://ufcstats.com/statistics/fighters?char=a&page=all","max_results": 100}
Output Example:
{"id": "07f72a2a7591b409","url": "http://ufcstats.com/fighter-details/07f72a2a7591b409","name": "Jon Jones","first_name": "Jon","last_name": "Jones","nickname": "Bones","height": "6' 4\"","weight": "248 lbs.","reach": "84.0\"","stance": "Orthodox","belt_holder": false,"wins": 28,"losses": 1,"draws": 0,"record": "28-1-0 (1 NC)","no_contests": 1,"height_inches": 76,"weight_lbs": 248,"reach_inches": 84,"date_of_birth": "Jul 19, 1987","age": 39,"significant_strikes_landed_per_minute": 4.38,"striking_accuracy_pct": 58,"significant_strikes_absorbed_per_minute": 2.24,"striking_defense_pct": 64,"takedown_average_per_15_min": 1.89,"takedown_accuracy_pct": 45,"takedown_defense_pct": 95,"submission_average_per_15_min": 0.5,"total_fights": 30,"fight_history": [{"opponent": "Stipe Miocic","opponent_url": "http://ufcstats.com/fighter-details/d28dee5c705991df","event": "UFC 309: Jones vs. Miocic","date": "Nov. 16, 2024","method": "KO/TKO / Spinning Back Kick","round": "3","time": "4:29","kd": 1,"strikes": 96,"takedowns": 1,"submissions": 0,"result": "win"}]}
The bout list above shows one fight so the shape is easy to read. With include_fight_history on, the row includes every bout on the profile, plus the career numbers. With both switches off, the row keeps the index record, such as 28-1-0, and leaves out the date of birth, age, career numbers, no-contests, and fight_history. include_career_stats adds those profile numbers without the bout list.
Output fields:
| Field | Description |
|---|---|
id | Fighter id from the public profile. |
url | Public fighter page. |
name | Full name. |
first_name | First name. |
last_name | Last name. |
nickname | Nickname when the list shows one. |
height | Height as shown. |
weight | Weight as shown. |
reach | Reach as shown. |
stance | Orthodox, Southpaw, Switch, or Open Stance. |
belt_holder | True when the fighter index shows a championship belt. |
wins | Wins. |
losses | Losses. |
draws | Draws. |
record | Win-loss-draw line. No-contests stay in the form the profile shows, such as 28-1-0 (1 NC). |
no_contests | No-contests from that line. Zero when the line has none. |
height_inches | Height in inches, from the height text. |
weight_lbs | Weight in pounds, from the weight text. |
reach_inches | Reach in inches, from the reach text. |
date_of_birth | Date of birth as shown on the profile. |
age | Full years from that date of birth. |
significant_strikes_landed_per_minute | Significant strikes landed per minute. |
striking_accuracy_pct | Significant striking accuracy. |
significant_strikes_absorbed_per_minute | Significant strikes absorbed per minute. |
striking_defense_pct | Share of opponent strikes that did not land. |
takedown_average_per_15_min | Takedowns landed per 15 minutes. |
takedown_accuracy_pct | Takedown accuracy. |
takedown_defense_pct | Share of opponent takedown attempts that did not land. |
submission_average_per_15_min | Submission attempts per 15 minutes. |
total_fights | Wins, losses, draws, and no-contests added together. |
fight_history | Bout list when include_fight_history is on. Each item has opponent, opponent_url, event, date, method, round, time, kd, strikes, takedowns, submissions, and result. |
📋 Input reference
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
input_url | string | No | — | UFC Stats fighter index or fighter page. Combined with start URLs. Filters are left unused when a URL is set. |
start_urls | array | No | — | Fighter index or fighter profile URLs on ufcstats.com. Combined with input URL. |
letter | string | No | — | One last-name letter, A through Z. Combined with letters. Empty walks the alphabet. |
letters | array | No | — | Last-name letters. Combined with letter. Empty walks the alphabet. |
query | string | No | — | Words matched against the name and nickname. |
stance | string | No | — | Orthodox, Southpaw, Switch, or Open Stance. Empty keeps every stance. |
min_wins | integer | No | — | Keep fighters at or above this many wins. |
min_losses | integer | No | — | Keep fighters at or above this many losses. |
include_career_stats | boolean | No | false | Open each profile for the date of birth and career striking and takedown numbers. |
include_fight_history | boolean | No | false | Add the bout list. The same visit also fills the career numbers. |
max_results | integer | No | 50 | How many rows to return (1–2000). |