Using on-the-fly data modeling to draft the optimal fantasy football team

Fantasy football drafts are a tricky business. Fantasy team owners must make split-second decisions about which available player will give their team the best chance to win the title, and at the end of the day, those choices are driven by data.

The goal of a fantasy draft is simple: extract maximum profit by selecting players who will outperform their draft position. These players are called draft bargains, and winning fantasy teams are inevitably filled with them. Identifying draft bargains is entirely a data-driven decision process, and real-time analytics software like Pyramid Analytics BI Office is the perfect tool to help make optimal draft picks and identify those crucial draft bargains.

This season, I am experimenting with using BI Office to help me gain a competitive advantage in my annual fantasy football league. As I explained in my previous blog post, I combined transactional data from Fantasy Data with expert mock draft data from Fantasy Football Calculator and fed the data into the Data Model in BI Office. I then utilized the automated data wizard to produce custom projections for my league's scoring format (DraftKings). Throughout the draft, the on-the-fly modeling capabilities in BI Office provided me with real-time updates, allowing me to swiftly make data-driven decisions based on positional scarcity and projected performance for my league's particular format.

For instance, while most scoring formats favor running backs over other positions, quarterbacks tend to be more valuable in DraftKings. More importantly, the projected scoring differential between elite quarterbacks and second-tier quarterbacks is greater than the difference between elite running backs and their second-tier counterparts. As such, my custom BI Office dashboard suggested I take Indianapolis Colts quarterback Andrew Luck with the No. 5 overall pick, despite the fact that Luck was being drafted on average at No. 48 overall according to the data from Fantasy Football Calculator.

Figure 1. My custom BI Office dashboard displays a real-time optimal roster based on the projected points for each player under our league's specific scoring format.

Top scoring screen shot

Fantasy football (and most fantasy games for that matter) shares many concepts with economics. For instance, novice fantasy football owners typically select the player who will score the most points. But during the season, fantasy owners are forced to start players from certain positions, so drafting six high-scoring quarterbacks is wasteful because owners can only play one at a time. During the draft, shrewd owners consider the opportunity cost of drafting a particular player, and BI Office helped me to identify these costs as I drafted.

An example of where I was able to leverage the robust data visualizations of BI Office to identify a positional opportunity cost came in the second round when I had to choose between Cincinnati Bengals wide receiver A.J. Green and Arizona Cardinals running back David Johnson. Intuitively, Johnson seemed like the better choice because he's a running back, and in traditional leagues, running backs typically rack up the most fantasy points. However, my custom player projections in the BI Office dashboard showed a steep drop-off between Green and the next best wide receiver, while Johnson's projected points were not much different from the other available running backs. I selected Green, then watched as other owners drafted Johnson and several other running backs before my next pick. When it was my turn again in the third round, I selected Denver Broncos running back C.J. Anderson. The opportunity cost of passing on Green was significantly higher than that of passing on Johnson. By utilizing the on-the-fly modeling capabilities of BI Office, I was able to effortlessly optimize my roster and maximize my chances of winning the league.

Of course, fantasy football isn't completely a game of data analysis. As a devout Broncos fan, I sacrificed a few fantasy points to add Denver players to my squad. With the No. 58 overall pick, I drafted Broncos wide receiver Emmanuel Sanders to play in the "Flex" position (which can be filled by either a running back, wide receiver, or tight end) over running back Latavius Murray, despite the custom BI Office projections predicting that Murray would outscore Sanders under our scoring format. But Murray plays for the Oakland Raiders, the notorious division rival of my beloved Broncos. Before the draft, I planned not to select a disproportionate number of Broncos players, but as the draft progressed, the real-time data provided by the BI Office dashboard helped me to carefully choose spots to roster Broncos players while not sacrificing my team's ability to remain competitive.

With the draft under my belt, I will use BI Office to inform me on optimal roster and lineup decisions on a weekly basis. I will feed historical and in-season statistics into the BI Office Data Model and use that information to help me decide which players to start each week and which players I should drop, add, trade away, or trade for. And I will certainly have some tough decisions to make in week 11 when my Broncos have their bye week.

Figure 2. Despite my best efforts to not fill out my team with Denver players, I ended up with five Broncos on my squad.

Starting lineup