Selecting the Best Fantasy Premier League Team: Using Ratings + VORP in Football

Sam Iyer-Sequeira
Football Applied
Published in
15 min readJul 11, 2024

Note:I strongly recommend you read the following articles before proceeding to read this one:

Selecting the best Fantasy Premier League (FPL) team requires a blend of strategic insight and in-depth data analysis. To make informed decisions, FPL managers rely on key metrics such as the Influence, Creativity, and Threat (ICT) Index and the Value Over Replacement Player (VORP). The ICT Index provides a comprehensive measure of a player’s impact on the game, while VORP assesses the additional value a player brings to the team compared to a typical replacement player. By integrating these metrics, FPL players can construct a well-balanced team that maximizes performance and value, ensuring consistent success throughout the season. This article explores the relationship between player costs and these key metrics, providing strategic insights for assembling the ultimate FPL squad. We will analyze the scatter plots of player costs against their ICT and VORP values, offering a detailed comparison and interpretation to guide your fantasy football strategy.

· Explaining the key metrics
ICT Index
Total Points
Now Cost
·
Ratings and VORP
Data Retrieval and Preparation
·
Forwards & Midfielders
Cost vs ICT
Cost vs VORP
·
Defenders and Goalkeepers
Cost vs ICT
Cost vs VORP
·
My team

Explaining the key metrics

ICT Index

The ICT index stands for the Influence, Creativity, and Threat Index, which measures the value of a player in terms of those 3 metrics and ranks them accordingly. That then offers a single figure that presents a view on that player as an FPL asset, especially relative to others in the same position in FPL. In many cases, this is similar to VORP, however, with the way FPL points works, it doesn’t necessarily exhibit real VORP values. This is because FPL points are largely dependent on goals, assists, and clean sheets, which means that the ICT values are strongly skewed towards attackers.

Influence

The impact a player has had on a single game or the entire season is measured by influence. It considers things that might affect the fixture’s outcome either directly or indirectly. These are decisive plays at the highest level, such as goals and assists. However, the Influence score also analyses important defensive plays to determine how well goalies and defenders are doing their jobs.

Creativity

The ability of a player to create chances for other players to score goals is measured by creativity. It can be used as a reference to determine which players are most likely to provide an assist. In addition to analysing passing and crossing frequency, this also takes pitch location and final ball quality into account.

Threat

This figure assesses a player’s danger on goal. It determines who has the highest chance of scoring goals. Attempts are the most important activity, but the Index considers pitch location and gives more weight to acts that are thought to have the best possibilities of scoring.

Total Points

Total points is pretty self explanatory, which essentially tells us the total points of a given player throughout the season.

Now Cost

Now Cost also tells us the cost of a player based on the latest update.

Ratings and VORP

VORP in football, adapted from its origins in baseball, measures the additional value a player brings to the team compared to a typical replacement player. This metric helps in understanding how critical a player is to their team’s success, taking into account not just raw performance but also their contribution relative to other players available in the league.

By exploring these metrics, we can gain deeper insights into player performance and strategic decision-making, enhancing our appreciation of the tactical elements that define football.The formula for VORP is as follows: (Total Points — Replacement Points) / (Price — Replacement Price)

Data Retrieval and Preparation

First, the code defines URLs for fetching all the Fantasy Premier League stats for all Premier League players throughout the season. Using pd.read_html, it reads the tables from these URLs into Pandas DataFrames, adds columns indicating the country and nationality, and combines all the data into a single DataFrame (all_data). This aggregated data is then saved to a CSV file for further processing.

import pandas as pd
import numpy as np

df = pd.read_csv("/Users/samyukth/Downloads/cleaned_players.csv", index_col=0, encoding='ISO-8859-1')

df.columns

# Calculate replacement values based on position only
replacement_points = df.groupby(['element_type'])['total_points'].transform('min')
replacement_ict_index = df.groupby(['element_type'])['ict_index'].transform('min')
replacement_price = df.groupby(['element_type'])['now_cost'].transform('min')

# Calculate VORP for each player including ICT Index
df['VORP'] = ((df['total_points'] + df['ict_index']) - (replacement_points + replacement_ict_index)) / df['now_cost']

# Fill potential divisions by zero with NaN or 0 as appropriate
df['VORP'] = df['VORP'].replace([np.inf, -np.inf], np.nan)

# Display the updated DataFrame with VORP values
print(df[['firstname', 'second_name', 'Team', 'element_type', 'total_points', 'ict_index', 'now_cost', 'VORP']])

df.to_csv('fplvorppos1.csv', index=False)

print(df)

import pandas as pd

# Load the CSV file
file_path = '/Users/samyukth/Downloads/fplvorppos1.csv'
df = pd.read_csv(file_path)

# Normalize the metrics
df['normalized_ict'] = (df['ict_index'] - df['ict_index'].min()) / (df['ict_index'].max() - df['ict_index'].min())
df['normalized_selected_by_percent'] = (df['selected_by_percent'] - df['selected_by_percent'].min()) / (df['selected_by_percent'].max() - df['selected_by_percent'].min())
df['normalized_total_points'] = (df['total_points'] - df['total_points'].min()) / (df['total_points'].max() - df['total_points'].min())

# Define weights for each metric
weight_ict = 0.50
weight_selected_by_percent = 0.18
weight_total_points = 0.32

# Calculate the overall rating
df['rating'] = (
weight_ict * df['normalized_ict'] +
weight_selected_by_percent * df['normalized_selected_by_percent'] +
weight_total_points * df['normalized_total_points']
)

# Scale ratings to 0-100
df['rating'] = df['rating'] * 100

# Display the updated DataFrame with normalized values and rating
print(df[['firstname', 'second_name', 'ict_index', 'total_points', 'now_cost', 'element_type']])

min_rating = df['rating'].min()
max_rating = df['rating'].max()
df['scaled_rating'] = 60 + ((df['rating'] - min_rating) / (max_rating - min_rating)) * 38

# Sort by scaled rating
df = df.sort_values(by='scaled_rating', ascending=False)

# Display the top 10 bowlers
print(df[['second_name', 'scaled_rating']].head(10))

# Save the scaled ratings to a new CSV file
df.to_csv('fpl_scaled_ratings5.csv', index=False)

The dataset includes columns like player names, teams, positions (element_type), total points, ICT index (a composite metric representing Influence, Creativity, and Threat), and current cost (now_cost). Replacement values for total points, ICT index, and cost are calculated for each position group. This is done by finding the minimum value of these metrics within each position group (element_type). The VORP for each player is then computed as the difference between a player’s total points plus ICT index and the replacement values for these metrics, all divided by the player’s current cost. This value is stored in a new column called ‘VORP’. The code also ensures that any potential division by zero errors are handled by replacing infinite values with NaN. The updated DataFrame, including the VORP values, is then saved to a new CSV file.

In the second part, the code loads the newly created CSV file and proceeds to normalize key performance metrics: ICT index, selected by percentage, and total points. Normalization scales these metrics to a range between 0 and 1. Weights are then assigned to these normalized metrics (50% for ICT index, 18% for selected by percentage, and 32% for total points) to calculate an overall rating for each player. This overall rating is scaled to a range of 0 to 100. To further refine the ratings, they are scaled to a new range of 60 to 98. Finally, the players are sorted based on their scaled ratings, and the top 10 players are displayed. The sorted DataFrame, with the new scaled ratings, is saved to another CSV file.

Forwards & Midfielders

Premier League forwards and midfielders record the highest points typically due to them scoring the most goals and recording the highest assists. Thus, when selecting attackers and midfielders, not only do you want players who regularly score goals and record assists such as Erling Haaland or Mohammed Salah, but you also want these players at an affordable price, so that the rest of your team isn’t filled with below average Premier League footballers.

First looking at the relationship between the cost of the player and their ICT values, although there’s a straightforward positive linear relationship, there’s evidently some outliers.

The provided scatter plot illustrates the relationship between the current cost (now cost) and the ICT index of Premier League football players. The ICT index is a composite measure representing Influence, Creativity, and Threat, essential metrics in evaluating a player’s overall contribution to their team. The plot confirms a straightforward positive correlation between the player’s cost and their ICT index. However, there are notable outliers and clusters that provide deeper insights:

Cost vs ICT

High-Cost, High-ICT Players

Players like Erling Haaland and Mohamed Salah are positioned at the top-right corner, indicating their high cost and high ICT index. These players are essential in any fantasy football team due to their consistent goal-scoring and assist-recording performances. Other notable high-cost players include Kevin De Bruyne, Son Heung-min, and Bukayo Saka, who also demonstrate high ICT values.

High-Cost, Lower-ICT Players
Some high-cost players like Kevin De Bruyne and Trent Alexander-Arnold have slightly lower ICT indices compared to their cost. This indicates that while they are valuable players, their performance in terms of Influence, Creativity, and Threat might not justify their high cost completely.

Moderate-Cost, High-ICT Players

Players such as Martin Ødegaard and Ollie Watkins are relatively affordable but still maintain high ICT indices. These players provide excellent value for money and could be strategic inclusions in a fantasy team for those looking to balance their budget.

Positive Outliers
Players such as Bukayo Saka and Phil Foden stand out as positive outliers. Despite having costs in the higher range, their ICT indices are exceptionally high, making them valuable players.

Negative Outliers
Players like Kai Havertz and Richarlison, who have moderately high costs but comparatively lower ICT indices, are seen as negative outliers. Their performance in terms of ICT does not fully justify their cost.

Strategy Implications

When selecting forwards and midfielders for a fantasy football team, one must look for players who regularly score goals and record assists. Players like Haaland and Salah, despite their high costs, are almost indispensable due to their consistent performance. However, to ensure that the rest of the team isn’t filled with below-average players, one must also look for value players — those who have a high ICT index but are more affordable.

Balancing the team by including moderate-cost, high-ICT players like Ødegaard and Watkins allows for the inclusion of a few high-cost stars without compromising the overall quality. This strategy ensures a more balanced and competitive fantasy team capable of scoring consistently across all fixtures.

Cost vs VORP

The provided scatter plot illustrates the relationship between the current cost (now cost) and the Value Over Replacement Player (VORP) of Premier League football players. The plot shows a general trend where players with higher costs have a wide range of VORP values, indicating that high cost does not always guarantee high value.

High-Cost, High-VORP Players
Players such as Erling Haaland and Mohamed Salah, located in the lower right quadrant, are high-cost players with relatively lower VORP values. Despite their high costs, their VORP is not exceptionally high, indicating that their performance, while excellent, may not provide the best value per unit cost.

Moderate-Cost, High-VORP Players:
Players like Bukayo Saka, Martin Ødegaard, and Ollie Watkins are positioned in the mid-to-high cost range but exhibit relatively high VORP values. These players are valuable as they provide a good balance of cost and performance, making them strategic choices for a fantasy team.

Low-Cost, High-VORP Players:
Players such as Palmer and Gross show high VORP values despite their low costs. These players are exceptional finds in fantasy football as they offer high performance at a lower cost, allowing for better allocation of budget across the team.

Clusters of Lower-Cost Players
A large cluster of players with lower costs and lower VORP values is evident. This group includes defenders and goalkeepers like Areola and Doughty, who are typically less expensive and have lower VORP scores.

Positive Outliers:
Players such as Palmer and Gross stand out as positive outliers. They have high VORP values relative to their costs, making them highly valuable for their price.

Negative Outliers
High-cost players like Kevin De Bruyne and Trent Alexander-Arnold, who exhibit lower VORP values, are negative outliers. Their performance does not fully justify their high cost in terms of value over replacement.

Strategy Implications

When selecting forwards and midfielders for a fantasy football team, it’s crucial to identify players who provide the best value in terms of VORP. High-cost, high-performance players like Haaland and Salah are often indispensable due to their consistent scoring and assist records. However, balancing the team with moderate-cost, high-VORP players like Saka and Ødegaard can maximize the overall value of the team.

Identifying low-cost, high-VORP players such as Palmer and Gross can also be strategic, as they allow for significant budget savings while maintaining high performance levels. This strategy enables the inclusion of a few high-cost stars without compromising the overall team quality.

Defenders and Goalkeepers

Premier League defenders and goalkeepers typically reord fewer points as they don’t score as many goals so their points mainly come from clean sheets. However, given that full-backs are the most attacking out of the defenders, they tend to rack up the most points, and so that usually leads to a high selection of full backs in most Fantasy Premier League teams. Thus, when selecting defenders and goalkeepers, not only do you want players who regularly get clean sheets such as Alisson Becker or Ederson Moraes, but you also want these players at an affordable price, so that the rest of your team isn’t filled with below average Premier League footballers.

First looking at the relationship between the cost of the player and their ICT values, although there’s a straightforward positive linear relationship, there’s evidently some outliers.

The provided scatter plot illustrates the relationship between the current cost (now cost) and the ICT index of Premier League football players. The ICT index is a composite measure representing Influence, Creativity, and Threat, essential metrics in evaluating a player’s overall contribution to their team. The plot confirms a straightforward positive correlation between the player’s cost and their ICT index. However, there are notable outliers and clusters that provide deeper insights:

Cost vs ICT

High-Cost, High-ICT Players

Players like Trent Alexander-Arnold are positioned at the top-right corner, indicating their high cost and high ICT index. These players are essential in any fantasy football team due to their chance creation and assists. Other notable high-cost players include Kieran Trippier and Andy Robertson, who also demonstrate high ICT values.

High-Cost, Lower-ICT Players
Some high-cost players like Virgil van Dijk and William Saliba have slightly lower ICT indices compared to their cost. This indicates that while they are valuable players, their performance in terms of Influence, Creativity, and Threat might not justify their high cost completely.

Moderate-Cost, High-ICT Players

Players such as Diogo Dalot, Lewis Dunk, and Josko Gvardiol are relatively affordable but still maintain high ICT indices. These players provide excellent value for money and could be strategic inclusions in a fantasy team for those looking to balance their budget.

Positive Outliers
Players such as Pedro Porro and Kieran Trippier stand out as positive outliers. Despite having costs in the higher range, their ICT indices are exceptionally high, making them valuable players.

Negative Outliers
Players like Trent Alexander-Arnold, who have moderately high costs but comparatively lower ICT indices, are seen as negative outliers. Their performance in terms of ICT does not fully justify their cost.

Strategy Implications

When selecting forwards and midfielders for a fantasy football team, one must look for players who regularly gets clean sheets and some full-backs who regularly gets assists. To ensure that the rest of the team isn’t filled with below-average players, one must also look for value players — those who have a high ICT index but are more affordable.

Balancing the team by including moderate-cost, high-ICT players like Porro and Trippier allows for the inclusion of a few high-cost stars without compromising the overall quality. This strategy ensures a more balanced and competitive fantasy team capable of scoring consistently across all fixtures.

Cost vs VORP

The provided scatter plot illustrates the relationship between the current cost (now cost) and the Value Over Replacement Player (VORP) of Premier League football players. The plot shows a general trend where players with higher costs have a wide range of VORP values, indicating that high cost does not always guarantee high value.

High-Cost, High-VORP Players
There’s no players in the top-right quadrant, which suggests that there aren’t really defenders in fantasy premier league that are indispensable relative to the next best alternative. Given that most of the higher cost defenders are Liverpool players, the VORP values suggest that their cost isn’t justified, based on its FPL output.

Moderate-Cost, High-VORP Players:
Mainly fullbacks, such as Ben White, and Ollie Watkins are positioned in the mid-to-high cost range but exhibit relatively high VORP values. These players are valuable as they provide a good balance of cost and performance, making them strategic choices for a fantasy team.

Low-Cost, High-VORP Players:
Players such as James Tarkowski and Tyrick Mitchell show high VORP values despite their low costs. These players are exceptional finds in fantasy football as they offer high performance at a lower cost, allowing for better allocation of budget across the team.

Clusters of Lower-Cost Players
A large cluster of players with lower costs and lower VORP values is evident. This group includes defenders and goalkeepers like Marc Guehi and Rico Henry, who are typically less expensive and have lower VORP scores.

Positive Outliers:
Players such as Pedro Porro and Kieran Trippier stand out as positive outliers. They have high VORP values relative to their costs, making them highly valuable for their price.

Negative Outliers
High-cost players like Trent Alexander-Arnold and Andy Robertson, who exhibit lower VORP values, are negative outliers. Their performance does not fully justify their high cost in terms of value over replacement.

My team

For self-explanatory purposes, I’m excluding any players who were relegated this past season or who are part of newly promoted sides. Given that full-backs typically yield the highest points and ICT index for defenders, my starting XI would include a back three of Pedro Porro, Kieran Trippier, and Andrew Robertson. These full-backs not only contribute significantly to their teams defensively but also offer substantial attacking returns through assists and occasional goals, making them invaluable assets in Fantasy Premier League (FPL).

In midfield, I’ve opted for a stack of attacking players who consistently deliver high volume and output. Midfielders generally make up the majority of a team’s lineup, so it’s crucial to include those who can regularly score and assist. Players like Bukayo Saka and Phil Foden, known for their creativity and threat, are prime examples of midfielders who can rack up significant points. Typically every season, there’s a new midfielder who creates high value for a lower price; last season it Kaoru Mitoma, whereas this recent season, it was Cole Palmer.

The inclusion of forwards like Ollie Watkins and Dominic Solanke was purely data-driven. Both players have demonstrated a strong ability to find the net and contribute to their teams’ attacking play, making them cost-effective options. After carefully selecting these players, I had £16m left in the budget. This allowed me to include Erling Haaland, who was the top scorer again this season despite being sidelined for two months due to injury. Haaland’s goal-scoring prowess and consistent performance make him an indispensable part of any FPL team.

Overall, this strategy focuses on maximizing value and performance by leveraging key metrics such as the ICT Index and VORP. By selecting players who offer the best combination of cost and output, this lineup aims to provide a well-rounded and competitive team capable of achieving consistent success in Fantasy Premier League.

In conclusion, the integration of ICT Index and VORP metrics offers a powerful approach to selecting the best Fantasy Premier League team. By understanding the nuances of these metrics and analyzing their relationship with player costs, FPL managers can identify high-value players who deliver exceptional performance for their price. The analysis of scatter plots highlights how high-cost stars like Erling Haaland and Mohamed Salah, despite their price tags, can be indispensable due to their consistent performance. However, balancing the team with moderate-cost, high-ICT, and high-VORP players such as Bukayo Saka and Ollie Watkins ensures a competitive and well-rounded squad. Additionally, strategic inclusions of affordable, high-performance players like Palmer and Gross enhance budget allocation, enabling the inclusion of essential stars without compromising overall team quality. Ultimately, leveraging these insights empowers managers to make informed decisions, optimize their team composition, and achieve consistent success in Fantasy Premier League.

--

--