UFC Stats Scraper | MMA Fights and Fighter Data avatar

UFC Stats Scraper | MMA Fights and Fighter Data

Pricing

from $19.00 / 1,000 results

Go to Apify Store
UFC Stats Scraper | MMA Fights and Fighter Data

UFC Stats Scraper | MMA Fights and Fighter Data

Pull UFC fighter stats, fight results, event cards, and round-by-round breakdowns from UFC Stats. Get strikes landed, takedowns, submission attempts, control time, and career records for MMA analytics, fantasy tools, betting models, and combat sports research projects.

Pricing

from $19.00 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

ParseForge Banner

🥊 UFC Stats Scraper

🚀 Export UFC fighter statistics, records, striking accuracy, takedowns, and physical attributes in seconds. No account, no login, no limits.

🕒 Last updated: 2026-05-22 · 📊 20 fields per record · 🥋 4,000+ fighters · 🌍 Global UFC roster

Pull the entire UFC fighter database from ufcstats.com, the official stats source used by analysts, coaches, and MMA media worldwide. Every fighter's record, physical measurements, and advanced striking and grappling metrics are scraped fresh on every run.

The dataset covers all active and retired UFC fighters across all weight classes, from Strawweight to Heavyweight. Each record includes fight record (W-L-D), stance, height, weight, reach, and performance metrics like strikes landed per minute, takedown accuracy, and submission attempts.

🎯 Target Audience💡 Primary Use Cases
MMA analysts, fantasy MMA players, coaches and trainers, sports journalists, data scientists, sports bettorsFighter comparison dashboards, fantasy draft research, opponent scouting, data-backed articles, fight outcome modeling, betting research

📋 What the UFC Stats Scraper does

  • 🔤 Alphabetical roster scrape. Pulls the full ufcstats.com roster by last-name letter.
  • 📄 Detail page extraction. Visits each fighter's profile for extended performance stats.
  • 📊 20 fields per fighter. Record, physicals, striking, and grappling metrics in one record.
  • 🌐 Public data only. No login, API key, or credentials needed.
  • 🛑 Clean free tier. maxItems caps free users at 10 fighters with a referral upgrade path.

💡 Why it matters: ufcstats.com is the official stats engine behind UFC broadcasts. Getting this data programmatically unlocks fighter analytics at scale, comparing 4,000+ athletes across 20 dimensions that would take weeks to collect manually.


🎬 Full Demo

🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset.


⚙️ Input

InputTypeDefaultBehavior
startCharselect"a"Starting letter of fighter last name (a-z).
scrapeAllLettersbooleanfalseIf true, scrapes all 26 letters regardless of startChar.
maxItemsinteger10Records to return. Free plan caps at 10, paid plan at 1,000,000.

Example: fighters starting with J.

{
"startChar": "j",
"maxItems": 50
}

Example: full UFC roster.

{
"scrapeAllLetters": true,
"maxItems": 1000000
}

⚠️ Good to Know: free users are automatically capped at 10 fighters. Upgrade to a paid plan for full roster access. scrapeAllLetters: true combined with a high maxItems will collect the complete UFC database.


📊 Output

Each fighter record contains 20 fields. Download the dataset as CSV, Excel, JSON, or XML.

🧾 Schema

FieldTypeDescription
🏷️ namestringFighter's full name
🔗 urlstringLink to ufcstats.com profile
💬 nicknamestringFighter's nickname
📏 heightstringHeight (e.g. 6' 2")
⚖️ weightstringWeight class (e.g. 185 lbs.)
📐 reachstringReach in inches (e.g. 76.0")
🥋 stancestringOrthodox, Southpaw, or Switch
winsintegerTotal career wins
lossesintegerTotal career losses
🤝 drawsintegerTotal career draws
🏆 beltHolderbooleanTrue if current UFC champion
👊 slpmstringSignificant strikes landed per minute
🎯 strikingAccuracystringStriking accuracy percentage
🛡️ sapmstringSignificant strikes absorbed per minute
🧱 strikeDefensestringStrike defense percentage
🤼 takedownAvgstringAvg takedowns per 15 minutes
🎯 takedownAccuracystringTakedown accuracy percentage
🛡️ takedownDefensestringTakedown defense percentage
🐍 submissionAvgstringAvg submissions per 15 minutes
🕒 scrapedAtstringISO timestamp of collection
errorstring | nullError message if collection failed

📦 Sample record


✨ Why choose this Actor

Capability
🚫No auth required. Runs immediately, no setup, no API keys.
📊20 fields per fighter. Record, physicals, and advanced stats in one pass.
🔤Alphabetical filtering. Target subsets without scraping the whole database.
Fast HTML scraping. Plain HTML site, no browser overhead.
🔄Real-time data. Scraped fresh on every run, no stale cache.
🆓Free preview. 10 fighters free before you upgrade.

📈 How it compares to alternatives

ApproachCostCoverageRefreshStats depthSetup
⭐ UFC Stats Scraper (this Actor)$5 free credit, then pay-per-use4,000+ fightersLive per run20 fields⚡ 2 min
Manual ufcstats.com exportFreeFullManualCopy-paste🐢 Days
Official UFC APIRestrictedPartialReal timeLimited🗝️ Auth gated
Third-party MMA APIsSubscriptionVariesVariesPartial🐌 Hours

Pick this Actor when you want comprehensive fighter stats without partner-API gating.


🚀 How to use

  1. 📝 Sign up. Create a free account with $5 credit (takes 2 minutes).
  2. 🌐 Open the Actor. Go to the UFC Stats Scraper page on the Apify Store.
  3. 🎯 Set input. Pick a startChar or enable scrapeAllLetters, then set maxItems.
  4. 🚀 Run it. Click Start and let the Actor collect your data.
  5. 📥 Download. Grab your results in the Dataset tab as CSV, Excel, JSON, or XML.

⏱️ Total time from signup to downloaded dataset: 3-5 minutes. No coding required.


💼 Business use cases

📊 MMA Analytics Platforms

  • Build live fighter comparison engines
  • Surface head-to-head stat comparisons
  • Power subscriber-only insight dashboards
  • Refresh the roster weekly via Apify Schedules

🎮 Fantasy MMA Tools

  • Automate fighter stat ingestion
  • Build scoring models on style metrics
  • Reward grappling and striking output
  • Surface "value picks" by stance and reach

📰 Sports Media and Journalism

  • Back every fight preview with real data
  • Auto-generate matchup comparison tables
  • Power pre-event social graphics
  • Skip manual stat-checking on PPV weekends

🥊 Coaching and Scouting

  • Research opponent tendencies pre-camp
  • Use TD defense and SLpM for gameplanning
  • Track weight-class meta shifts
  • Build athlete benchmarking databases

🔌 Automating UFC Stats Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

  • 🟢 Node.js. Install the apify-client NPM package.
  • 🐍 Python. Use the apify-client PyPI package.
  • 📚 See the Apify API documentation for full details.

The Apify Schedules feature lets you trigger this Actor weekly to refresh the full roster after each UFC event.


🌟 Beyond business use cases

Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

🎓 Research and academia

  • Sports-science studies of reach vs accuracy
  • Career-length analyses across weight classes
  • Stance distribution and effectiveness research
  • Reproducible MMA datasets for theses

🎨 Personal and creative

  • MMA blogs backed by real numbers
  • Custom Tapology-style comparison pages
  • Discord bots with live fighter lookups
  • Personal favorite-fighter trackers

🤝 Non-profit and civic

  • Combat-sports safety research datasets
  • Fighter career-length transparency
  • Athletic commission analyses
  • Open-data archives for MMA history

🧪 Experimentation

  • Train fight outcome classifiers
  • Build LLM-powered MMA explainers
  • Test card-prediction models
  • Prototype fighter recommendation engines

🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:


❓ Frequently Asked Questions

🔑 Does this require a ufcstats.com account?

No. ufcstats.com is fully public. No login or registration is needed.

📦 How many fighters are in the database?

As of 2026, ufcstats.com lists 4,000+ fighters across all weight classes and eras.

🔄 How current is the data?

Data is scraped live on every run. Run it the day after a UFC event to get updated records.

🌐 Can I get all fighters in one run?

Yes. Set scrapeAllLetters: true and a high maxItems value. This will collect the full roster.

👊 What does SLpM mean?

Significant Strikes Landed per Minute, a measure of offensive output calculated across all UFC bouts.

🛡️ What does SApM mean?

Significant Strikes Absorbed per Minute, how much punishment a fighter takes on average.

🥋 Are retired fighters included?

Yes. ufcstats.com includes all fighters who have ever competed in the UFC, active or retired.

🏆 What is the Belt Holder field?

A boolean indicating whether the fighter is a current UFC champion based on a belt icon on their profile.

⏰ Can I run this on a schedule?

Yes. Use Apify Schedules to run this Actor weekly and keep your dataset current.

📥 What format can I download the data in?

CSV, JSON, Excel (XLSX), XML, or RSS, available directly from the Apify dataset UI.

ufcstats.com is a public website with no authentication. Always review the site's terms of service before using scraped data commercially.

🆘 What if I need help?

Our support team is here to help. Use the Tally form linked below to reach out.


🔌 Integrate with any app

UFC Stats Scraper connects to any cloud service via Apify integrations:

  • Make - Automate multi-step workflows
  • Zapier - Connect with 5,000+ apps
  • Slack - Get run notifications in your channels
  • Airbyte - Pipe fighter data into your warehouse
  • GitHub - Trigger runs from commits and releases
  • Google Drive - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes.


💡 Pro Tip: browse the complete ParseForge collection for more sports and reference-data scrapers.


🆘 Need Help? Open our contact form to request a new scraper, propose a custom data project, or report an issue.


⚠️ Disclaimer: this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the Ultimate Fighting Championship (UFC), Zuffa LLC, or TKO Group. All trademarks mentioned are the property of their respective owners. Only publicly available data from ufcstats.com is collected.