Hello and welcome to MMA API, a collection of Mixed Martial Arts data. This is a project to collect and analyze fight statistics and take a Moneyball-type approach to the sport.


Why make this?

As a huge fan of both MMA and sports analytics I have often wondered about things like "How well do fighters age?" and "Does a high finish rate predict future success?". After looking and not finding a good dataset to work with I decided to make my own.

This is a work in progress and I am actively adding more information. The database is updated daily and currently has all 1980 fighters, 5232 fights, and 502 events in UFC history. Going forward I would like to add more organizations and other interesting information such as betting lines for each fight.


How does it work?

Head on over to the Data Explorer page to play around with it. There you can select certain fighter traits to see how often they win, both on average and broken down by age. For a simple example enter ages 20 - 35 to see how win rates change over time. More ways of analyzing and visualizing the data is on the way.

There is plenty more data to work with, which I have exposed through a REST API. Check out the Swagger API Docs to get a sense of what is there. Feel free to contact me if you would like access to the data.

As an example of one fight www.mmaapi.com/fight/2335/ returns the following JSON object:

                
                {
    "id": 2335,
    "winner_name": "Carlos Condit",
    "loser_name": "Rory MacDonald",
    "finish_type": "ko",
    "referee": "Kevin Dornan",
    "round": "3",
    "time": "4:53",
    "event": 235,
    "winner_experience": 2,
    "loser_experience": 1,
    "winner_age": 26.1452054794521,
    "loser_age": 20.9041095890411,
    "winner_streak": 1,
    "loser_streak": 1
}
                
            


Are there any errors in the data?

Almost for sure! Collecting real world information and creating data features is often a tricky process. I have done my best to keep everything accurate but there could be a few fights or the occasional field missing.


Feedback

The code can be viewed on Github and collaborations are welcome. Feel free to open an issue or email me with any questions or suggestions you have. My email is listed on my GitHub profile. I'd love to discuss interesting use cases for the data or ways the information could be expanded. If you would like access to the API for a separate project shoot me an email and I will get you an API key.