Live now!

Progress of current post

How-to use the Sportmonks’ Football Predictions API

Welcome to our comprehensive How-to use the Sportmonks’ Football Prediction API. Whether you’re a passionate football fan seeking insights or a seasoned bettor aiming to make informed decisions, our state-of-the-art Prediction Service, developed and continuously refined since 2017, offers accurate predictions for various leagues and markets.

Join us as we explore how to maximise your football experience and unlock the potential of our advanced Prediction API.

Time to read 3 min
Published 20 February 2024
Last updated 11 March 2025
Wesley Van Rooij
How-to use the Sportmonks’ Football Predictions API
Contents

What is a prediction API?

But first thing first, what’s a Prediction API anyway? We’ve all been there, wishing you could peek into the future of your favourite team’s football matches. Unfortunately, we can’t do that. But a Prediction API can! A Prediction API looks at team stats, player performances, and past games to make its predictions. And the best part? It’s always learning, getting better with each match it analyses.

But it’s not just for fans—it’s a total game-changer for businesses too! Betting sites and sports blogs use it to make wise choices and keep fans on the edge of their seats.

Whether you’re a die-hard football fan, betting expert or a business owner, it’s your secret weapon for staying ahead of the game!

Why choose our advanced prediction service?

In the competitive realm of football predictions, precision and reliability are paramount. Our Prediction Service stands out as a pinnacle of excellence, offering:

Advanced predictions
Our cutting-edge algorithms leverage accurate, data-driven match probabilities, considering team dynamics, previous match analytics, player contributions, and more for precise predictions.

Live data
Stay ahead of the curve with predictions available 21 days before kick-off and daily updates, ensuring access to the latest data and forecasts.

Diverse market coverage
Whether it’s match-winners, double chances, total goals, or other markets, our service offers extensive coverage, allowing users to explore various betting options and tailor strategies accordingly.

Detailed documentation
Dive into our comprehensive Football API documentation, providing clear instructions on accessing daily predictions, probabilities, and average bookie odds for seamless integration into your projects.

Easy integration
Our Prediction API is designed for easy integration, allowing you to incorporate accurate predictions and probabilities effortlessly into applications, websites, or betting platforms.

Enough information? Ready to elevate your football experience?

Unlocking the power of our prediction API:

To harness the potential of our Football Prediction API, you will need to have some tools at hand: 

A MySportmonks account and subscription
First, register on MySportmonks with your preferred option. After that, choose the plan that best suits your needs and select the Prediction API in the add-on section. Having trouble finding the best plan for your application? Contact our sales team for more guidance.

Your personalised Sportmonks API token
Unlocking the full potential of your football application begins with your personalised API token after creating your My.Sportmonks account, navigate to the API Token page to generate your unique token. For security reasons, the API token will only be shown to you once upon creation. Please make sure to write down your API token somewhere safe.

Choose your preferred endpoint
Enrich your applications with detailed predictions. Our Predictions API offers predictions on various markets like the winner, correct scores, over/under, and both teams to score (BTTS), which are all available here, produced with our machine learning techniques and models.

Use one of our three probability endpoints. Per endpoint, you can find the details, including base URL, parameters, includes and more.

  • GET probabilities: Retrieve all probabilities available within your subscription, exploring match outcomes or assessing potential betting options.
  • GET performance by league ID: Investigate the performance of our Predictions Model for specific leagues, obtaining detailed performance metrics tailored to your requested league ID.
  • GET probabilities by fixture ID: Access predictions for particular fixtures, ideal for daily football predictions or analysing upcoming matchups.

Practical example

For this how-to guide, we will use the ‘Probabilities by Fixture ID‘ endpoint. We’re going to look at the Manchester Derby: Manchester United vs Manchester City, played in the 2023/2024 season of the English Premier League.

Step 1: Make our request

First, some general information about the English Premier League

  • League ID: 8
  • 2023/2024 season id: 21646
  • Manchester United team ID: 14
  • Manchester City Team ID: 9
  • Fixture ID: 18842136

Based on the information, your request will be: https://api.sportmonks.com/v3/football/predictions/probabilities/fixtures/18842136?api_token=YOUR_TOKEN

As mentioned before, you have multiple options for retrieving predictions, including the option to use the fixtures between dates or fixture by ID endpoint with predictions as include.

For example: https://api.sportmonks.com/v3/football/fixtures/18842136?api_token=YOUR_TOKEN&include=predictions

Now you’ve learnt how to request predictions, lets discuss the response in the next chapter.

{
  "data": {
    "id": 18842136,
    "sport_id": 1,
    "league_id": 8,
    "season_id": 21646,
    "stage_id": 77464011,
    "group_id": null,
    "aggregate_id": null,
    "round_id": 307127,
    "state_id": 5,
    "venue_id": 206,
    "name": "Manchester United vs Manchester City",
    "starting_at": "2023-10-29 15:30:00",
    "result_info": "Manchester City won after full-time.",
    "leg": "1/1",
    "details": null,
    "length": 90,
    "placeholder": false,
    "has_odds": true,
    "starting_at_timestamp": 1698593400,
    "predictions": [
      {
        "id": 8870093,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 72.1,
          "no": 27.9
        },
        "type_id": 334,
        "type": {
          "id": 334,
          "name": "Home Over/Under 0.5 Probability",
          "code": "home-over-under-0_5_probability",
          "developer_name": "HOME_OVER_UNDER_0_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870091,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 46.83,
          "no": 53.17
        },
        "type_id": 236,
        "type": {
          "id": 236,
          "name": "Over/Under 3.5 Probability",
          "code": "over-under-3_5_probability",
          "developer_name": "OVER_UNDER_3_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870097,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 67.08,
          "no": 32.92
        },
        "type_id": 235,
        "type": {
          "id": 235,
          "name": "Over/Under 2.5 Probability",
          "code": "over-under-2_5-probability",
          "developer_name": "OVER_UNDER_2_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870085,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 25.44,
          "no": 74.56
        },
        "type_id": 328,
        "type": {
          "id": 328,
          "name": "Away Over/Under 2.5 Probability",
          "code": "away-over-under-2_5_probability",
          "developer_name": "AWAY_OVER_UNDER_2_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870105,
        "fixture_id": 18842136,
        "predictions": {
          "home": 35.05,
          "away": 42.48,
          "draw": 22.48
        },
        "type_id": 237,
        "type": {
          "id": 237,
          "name": "Fulltime Result Probability",
          "code": "fulltime-result-probability",
          "developer_name": "FULLTIME_RESULT_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870094,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 44.52,
          "no": 55.48
        },
        "type_id": 331,
        "type": {
          "id": 331,
          "name": "Home Over/Under 1.5 Probability",
          "code": "home-over-under-1_5_probability",
          "developer_name": "HOME_OVER_UNDER_1_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870099,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 84.83,
          "no": 15.17
        },
        "type_id": 234,
        "type": {
          "id": 234,
          "name": "Over/Under 1.5 Probability",
          "code": "over-under-1_5-probability",
          "developer_name": "OVER_UNDER_1_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870095,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 75.53,
          "no": 24.47
        },
        "type_id": 333,
        "type": {
          "id": 333,
          "name": "Away Over/Under 0.5 Probability",
          "code": "away-over-under-0_5_probability",
          "developer_name": "AWAY_OVER_UNDER_0_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870096,
        "fixture_id": 18842136,
        "predictions": {
          "scores": {
            "0-0": 3.83,
            "0-1": 5.8,
            "0-2": 4.81,
            "0-3": 2.85,
            "1-0": 5.58,
            "1-1": 9.11,
            "1-2": 8.06,
            "1-3": 4.83,
            "2-0": 4.11,
            "2-1": 7.35,
            "2-2": 7.03,
            "2-3": 4.14,
            "3-0": 2.3,
            "3-1": 4.31,
            "3-2": 3.63,
            "3-3": 2.32,
            "Other_1": 8.69,
            "Other_2": 10.66,
            "Other_X": 0.64
          }
        },
        "type_id": 240,
        "type": {
          "id": 240,
          "name": "Correct Score Probability",
          "code": "correct-score-probability",
          "developer_name": "CORRECT_SCORE_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870104,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 65.71,
          "no": 34.29
        },
        "type_id": 231,
        "type": {
          "id": 231,
          "name": "Both Teams To Score Probability",
          "code": "both-teams-to-score-probability",
          "developer_name": "BTTS_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      }
    ]
  },

Step 2: Analyse the response

By default, you will receive some static information. It can be tricky if you have limited experience with our Football API and its structure. As you can see, there are a lot of values, but what do they mean exactly?

For your convenience, you can include the type variable. This will return the definition of the values as well.

It is important to note that if you use the probabilities by fixture ID endpoint, you must repeat this step for all the other matches you’re interested in. But you won’t have to if you use the predictions included on one of our fixtures or livescores endpoints.

Predictions are updated multiple times a day. Take this into account when you start implementing.

Please note that including .type is not recommended as an inclusion on any endpoint. Types are used throughout the entire API. We recommend retrieving all types from the types endpoint and storing them in your database or other data structure. Only include the type if no other option exists or when testing the API.

{
  "data": [
    {
      "id": 8870073,
      "fixture_id": 18842136,
      "predictions": {
        "yes": 30.08,
        "no": 69.92
      },
      "type_id": 1679,
      "type": {
        "id": 1679,
        "name": "Over/Under 4.5 Probability",
        "code": "over-under-4_5-probability",
        "developer_name": "OVER_UNDER_4_5_PROBABILITY",
        "model_type": "prediction",
        "stat_group": null
      }
    },
    {
      "id": 8870076,
      "fixture_id": 18842136,
      "predictions": {
        "yes": 90.42,
        "no": 4.49,
        "equal": 5.09
      },
      "type_id": 1690,
      "type": {
        "id": 1690,
        "name": "Corners Over/Under 4 Probability",
        "code": "corners-over-under-4-probability",
        "developer_name": "CORNERS_OVER_UNDER_4_PROBABILITY",
        "model_type": "prediction",
        "stat_group": null
      }
    },
    {
      "id": 8870079,
      "fixture_id": 18842136,
      "predictions": {
        "yes": 82.71,
        "no": 9.58,
        "equal": 7.72
      },
      "type_id": 1683,
      "type": {
        "id": 1683,
        "name": "Corners Over/Under 5 Probability",
        "code": "corners-over-under-5-probability",
        "developer_name": "CORNERS_OVER_UNDER_5_PROBABILITY",
        "model_type": "prediction",
        "stat_group": null
      }
    },
    {
      "id": 8870080,
      "fixture_id": 18842136,
      "predictions": {
        "yes": 72.57,
        "no": 17.29,
        "equal": 10.13
      },
      "type_id": 1685,
      "type": {
        "id": 1685,
        "name": "Corners Over/Under 6 Probability",
        "code": "corners-over-under-6-probability",
        "developer_name": "CORNERS_OVER_UNDER_6_PROBABILITY",
        "model_type": "prediction",
        "stat_group": null
      }
    },

 

Explanation of the data

Both Teams To Score probability (type id: 231) = 65,71% probability that both teams will score.

Over/Under 1.5 probability (type id: 234) = 84,83% probability that there will be more than 1.5 goals.

Over/Under 2.5 probability (type id: 235) = 67,08% probability that there will be more than 2.5 goals.

Over/Under 3.5 probability (type id: 236) = 46,83 % probability of more than 3.5 goals, 53,17% probability of less than 3.5 goals.

Fulltime result probability (type id: 237) = probability of 35,05% that the home team (Manchester United) will win. 42,78% probability that the away team (Manchester City) will win and 22,48% probability that the match will end in a draw.

Correct Score Probability (type id: 240) = 9,11% probability of a final score of 1-1.

Away Over/Under 2.5 Probability (type id: 328) = 25,44% probability that the away team will score more than 2.5 goals, 74,56% probability that the away team will score less than 2.5 goals.

Home Over/Under 1.5 Probability (type id: 331) =44,52% probability that the home team will score more than 1.5 goals, 55,48% probability that the home team will score less than 1,5 goals.

Away Over/Under 0.5 Probability (type id: 333) = 75,53% probability that the away team will score more than 0.5 goals (Manchester City), 24,47% probability that the away team will score less than 0.5 goals.

Home Over/Under 0.5 Probability (type id: 334) = 72,10% probability that the away Home will score more than 0.5 goals (Manchester United), 27,90% probability that the home team will score less than 0.5 goals.

{
  "data": {
    "id": 18842136,
    "sport_id": 1,
    "league_id": 8,
    "season_id": 21646,
    "stage_id": 77464011,
    "group_id": null,
    "aggregate_id": null,
    "round_id": 307127,
    "state_id": 5,
    "venue_id": 206,
    "name": "Manchester United vs Manchester City",
    "starting_at": "2023-10-29 15:30:00",
    "result_info": "Manchester City won after full-time.",
    "leg": "1/1",
    "details": null,
    "length": 90,
    "placeholder": false,
    "has_odds": true,
    "starting_at_timestamp": 1698593400,
    "predictions": [
      {
        "id": 8870093,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 72.1,
          "no": 27.9
        },
        "type_id": 334,
        "type": {
          "id": 334,
          "name": "Home Over/Under 0.5 Probability",
          "code": "home-over-under-0_5_probability",
          "developer_name": "HOME_OVER_UNDER_0_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870091,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 46.83,
          "no": 53.17
        },
        "type_id": 236,
        "type": {
          "id": 236,
          "name": "Over/Under 3.5 Probability",
          "code": "over-under-3_5_probability",
          "developer_name": "OVER_UNDER_3_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870097,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 67.08,
          "no": 32.92
        },
        "type_id": 235,
        "type": {
          "id": 235,
          "name": "Over/Under 2.5 Probability",
          "code": "over-under-2_5-probability",
          "developer_name": "OVER_UNDER_2_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870085,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 25.44,
          "no": 74.56
        },
        "type_id": 328,
        "type": {
          "id": 328,
          "name": "Away Over/Under 2.5 Probability",
          "code": "away-over-under-2_5_probability",
          "developer_name": "AWAY_OVER_UNDER_2_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870105,
        "fixture_id": 18842136,
        "predictions": {
          "home": 35.05,
          "away": 42.48,
          "draw": 22.48
        },
        "type_id": 237,
        "type": {
          "id": 237,
          "name": "Fulltime Result Probability",
          "code": "fulltime-result-probability",
          "developer_name": "FULLTIME_RESULT_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870094,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 44.52,
          "no": 55.48
        },
        "type_id": 331,
        "type": {
          "id": 331,
          "name": "Home Over/Under 1.5 Probability",
          "code": "home-over-under-1_5_probability",
          "developer_name": "HOME_OVER_UNDER_1_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870099,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 84.83,
          "no": 15.17
        },
        "type_id": 234,
        "type": {
          "id": 234,
          "name": "Over/Under 1.5 Probability",
          "code": "over-under-1_5-probability",
          "developer_name": "OVER_UNDER_1_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870095,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 75.53,
          "no": 24.47
        },
        "type_id": 333,
        "type": {
          "id": 333,
          "name": "Away Over/Under 0.5 Probability",
          "code": "away-over-under-0_5_probability",
          "developer_name": "AWAY_OVER_UNDER_0_5_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870096,
        "fixture_id": 18842136,
        "predictions": {
          "scores": {
            "0-0": 3.83,
            "0-1": 5.8,
            "0-2": 4.81,
            "0-3": 2.85,
            "1-0": 5.58,
            "1-1": 9.11,
            "1-2": 8.06,
            "1-3": 4.83,
            "2-0": 4.11,
            "2-1": 7.35,
            "2-2": 7.03,
            "2-3": 4.14,
            "3-0": 2.3,
            "3-1": 4.31,
            "3-2": 3.63,
            "3-3": 2.32,
            "Other_1": 8.69,
            "Other_2": 10.66,
            "Other_X": 0.64
          }
        },
        "type_id": 240,
        "type": {
          "id": 240,
          "name": "Correct Score Probability",
          "code": "correct-score-probability",
          "developer_name": "CORRECT_SCORE_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      },
      {
        "id": 8870104,
        "fixture_id": 18842136,
        "predictions": {
          "yes": 65.71,
          "no": 34.29
        },
        "type_id": 231,
        "type": {
          "id": 231,
          "name": "Both Teams To Score Probability",
          "code": "both-teams-to-score-probability",
          "developer_name": "BTTS_PROBABILITY",
          "model_type": "prediction",
          "stat_group": null
        }
      }
    ]
  },

Value bets

Besides the Prediction API, we also have the Value Bet API. While the Prediction API evaluates the probabilities of game events, the Value Bet API processes thousands of historical odds data and market trends to find Value opportunities compared to bookmakers’ odds.

Once the opening odds are available, the value detection algorithm runs every 10 minutes up to the beginning of the match. Each value detected by the model comes with a set of features described below.

If you want to combine your Value Bets requests with your requests on the Fixture endpoint or Livescore endpoint, you can add the relationship include &include=valuebet.

{
  "data": [
    {
      "id": 3507922,
      "fixture_id": 18535517,
      "predictions": {
        "bet": "1",
        "bookmaker": "interwetten",
        "odd": 1.9,
        "is_value": false,
        "stake": 0.95,
        "fair_odd": 1.84
      },
      "type_id": 33,
      "type": {
        "id": 33,
        "name": "Valuebet",
        "code": "valuebet",
        "developer_name": "VALUEBET",
        "model_type": "prediction",
        "stat_group": null
      }
    }

Create stunning applications

Congratulations! You’ve embarked on a journey to master football predictions with our advanced Prediction API. Whether you’re a bettor seeking value opportunities or a fan seeking deeper insights, our Prediction Service is your gateway to unparalleled football experiences. Start your journey today and unlock the full potential of football predictions with our API.

Create stunning applications

FAQ

Why should I use the Predictions?
Football prediction sites have become increasingly popular in recent years as more and more people turn to online resources for insights into their favourite football teams and matches. Using advanced machine learning techniques and historical data, our Prediction API accurately predicts the outcomes of future football matches, considering various factors such as team form, player injuries, head-to-head records, and more. We also incorporate the player contribution model, which further enhances the accuracy of the predictions. With our Predictions API, you’ll have access to a vast range of markets, including match-winner, double chance, total goals, and beyond. We’re constantly improving our model, adding new features to ensure you have access to the most accurate and up-to-date predictions possible. The Prediction API is a valuable asset to any football prediction website, providing accurate predictions for future matches based on advanced machine-learning techniques and historical data.
What models do you use?
Our prediction API has two key models:

1. Prediction model:
Using advanced machine learning techniques and historical data, our model accurately predicts the outcomes of future football matches, considering various factors such as team form, player injuries, head-to-head records, and more. In addition to that, we also incorporate the player contribution model, which further enhances the accuracy of the predictions. By analysing the performance of individual players and their impact on the team, we can better understand how they'll contribute to the match's final outcome. This model takes into account various metrics such as the player's recent form, their position, and their contribution to the team's overall performance

2. Value bet model:
The Value Bet model processes thousands of historical odds data and market trends to find the best value opportunities. In other words: it compares bookmakers' odds with each other and then gives you the best value bookmaker. Using our value bet model, you can access valuable insights into the best bets, which can help you make better decisions.

The models and algorithms are based on five key principles:

1. Timely and substantive:
The prediction API is updated daily with the latest data from the Sportmonks Football Database.

2. Data controlled:
No human intervention is needed. The prediction API runs on statistical analysis results based on the entire historical Sportmonks Football Database.

3. Precise probabilities:
The prediction API offers the most precise probabilities possible, thanks to our mathematical probability distribution models.

4. Predictability performance:
We monitor our prediction API's success rate and quality, but you can also track our predictions’ performance.

5. Machine Learning:
We use cross-validation machine learning models.
What is the quality of the predictions?
At Sportmonks, we believe that transparency on the predictions and models used results in a better understanding, more sympathy and a greater product. That’s why we've introduced the league predictability. We provide access to our prediction history and performance metrics, allowing you to see the accuracy of our model over time. We are committed to continually monitoring and refining our model to remain accurate and up-to-date. We understand the importance of trust when making informed betting decisions. With our transparent approach, you can be confident in our predictions' accuracy and easily make informed decisions.
What is the average success rate of the predictions?
Our advanced machine learning model accurately predicts football match outcomes by analysing historical data, including team form, player injuries, and head-to-head records. Additionally, our player contribution model enhances prediction accuracy by analszing individual player performance, recent form, position, and impact on the team. With our predictions API, you can access various markets such as match-winner, double chance, and total goals.
Are there any previous statistics about the prediction's performance?
You can retrieve statistics on prediction performance by using the "GET Performance by League ID" endpoint, which provides information about the prediction model's performance for a specific league.
How to get the best probabilities out there?
Our Predictions API offers predictions on various markets like the winner, correct scores, over/under and both teams to score (BTTS) are all available here, produced with our machine learning techniques and models. An overview of all the options to request predictions:
  • GET Probabilities: Returns all probabilities available within your subscription.
  • GET Performance by League ID: Returns the performances of our Predictions Model for your requested league ID.
  • GET Probabilities by Fixture ID: Returns all the predictions available for your requested fixture ID.
Check our docs for more info.
Can I subscribe to only the predictions?
The Prediction API is an add-on that can be added to your subscription. It is not possible to subscribe to the prediction API add-on. You must always subscribe to a plan and add the Prediction API to your football plan.
Is the prediction also available for other sports on your API?
The prediction is only available on the Football API at the moment.
What is the endpoint to get the all the predictions with the team names?
The best way to do this would be to call the "All Predictions" endpoint and then use the fixture.participants include. This retrieves all the predictions with their corresponding fixtures and teams.

Written by Wesley Van Rooij

Wesley van Rooij is a marketing and football expert with over 5 years of industry experience. His comprehensive knowledge of the Sportmonks Football API and a focused approach to APIs in the Sports Data industry allow him to offer insights and support to enthusiasts and businesses. His outstanding marketing and communication skills and technical writing expertise enable him to empathise with developers. He understands their needs and challenges to facilitate the development of cutting-edge football applications that stand out in the market.