Any UFC fighter. Any era.
2,721 rated fighters · 3.70M possible matchups · honest uncertainty
Honest Elo Meter
By running the simulation you acknowledge this is data analysis, not betting advice. Independent analytics — not affiliated with or endorsed by the UFC.
Notable
division-context facts onlyTale of the tape
advantage highlightedDivision-adjusted profile
each axis = percentile within own divisionThe size-fair view: each fighter is measured against his own division, so a heavyweight's lower raw pace isn't punished. Raw numbers are below.
Performance
Striking profile
where strikes land · careerFinishes & durability
how wins come · how losses cameSchedule & career
red · blueStrength of schedule
UFC · quality of oppositionHonest Elo history
trajectories overlaid · gold ring = career peakRecent form
last 5 · expand for moreHow the comparison works
Pick any two fighters from the full 2,721-fighter roster — same division, cross-division, or across eras — and the tool builds the complete side-by-side: tale of the tape, career statistics normalized to each fighter's own division, striking profiles, finishes and durability, strength of schedule, and both Elo trajectories on one chart. The Honest Elo Meter then runs 20,000 Monte Carlo simulations sampling each fighter's rating with its uncertainty — the same honest math used on every booked-fight page.
How does the cross-division size adjustment work?
When the two fighters come from different divisions, the simulation shifts the Elo gap by 650 × (weight difference ÷ average weight), using representative division weights (heavyweight counts as 240 lbs, the roster average), capped at ±400 Elo. Example: a heavyweight vs a middleweight is a 55 lb gap → about +168 Elo for the bigger man, which turns a 50/50 skill matchup into roughly 72/28. It is a documented heuristic, not a fitted model — cross-division data is too sparse to calibrate — and you can switch it off with one toggle to see the pure-skill hypothetical.
Why do the bars show percentiles instead of raw numbers?
Raw pace differs by weight class — lightweights land more strikes per minute than heavyweights simply because of division pace. So every bar and radar axis measures a fighter against his own division (percentile among active fighters with 3+ UFC fights), while the label still shows the raw career value. That way a heavyweight with a "low" 4.0 strikes-per-minute can honestly show as an 84th-percentile volume striker among heavyweights.
What does Peak mode do?
Current mode uses each fighter's published rating today (retired fighters decay toward their division mean). Peak mode swaps in each fighter's career-high Global Elo instead — useful for dream matchups across eras — with the uncertainty floored wider, because we know less about a rating frozen in time. It is a career-high rating, not a time machine.
Where do the numbers come from?
The same snapshot that powers the whole site: UFC fight results scored with our Elo system (Global Elo, uncertainty σ, and the headline Elo rating = Global Elo − 1.3σ), plus per-fighter career statistics. See the methodology page for the full formula.
Data snapshot: 2026-08-15T00:00:00. Full formulas on the methodology page.