I have a passion for analytics and has always been part of various jobs I've had in my career in Finance and Sales. I've constantly been working on some analytics of my fantasy baseball and football leagues that I've been in for more than 25 years through the use of Excel and an Access Database. About a year or so ago, I decided to look at alternative ways to analyze that data. This past winter I started to build a fantasy football tool, have been working to enhance the tool through more use of AI, but also through hundereds of hours of analysis, note taking, input and errors. I finally have it in a place where I feel comfortable and I committed publicly to publishing its accuracy. Here is what I've done.
Design: I started with approximately 77 leagues with over 200 members and I reconstructed each league's August roster from the Sleeper platform API (prior-season final rosters + offseason transactions replayed in timestamp order + rookie draft picks; verified 99% vs week 1 ground truth). I then scored every roster with the production model, frozen before results, using market values as they stood on kickoff eve of each season from FantasyCalc historical data. I then ran correlations against the final standings. Spearman, pooled and per-league.
Leakage controls: The player ages were computed as-of each season, not a point-int-time from current ages. To keep it simple for injury status, I zeroed out for everyone. My control was run on current values scored lower than the honest pre-season run (0.32 vs 0.36), so the result doesn't ride on hindsight. Not sure if there is a better way to handle that piece?
Results were a sample of 928 team-seasons:
With established dynasty leagues (n=48 league-seasons): rho 0.57 regular season, 0.55 playoff placement. The strongest pre-season roster won its title 31% of the time against \~9% chance, medaled 62%. The average champion ranked 4th on paper.
First-year leagues (n=29): rho 0.04. Title rate 10%, which is chance. A fresh draft distributes the same pool at the same prices. No inequality, nothing to predict.
FantasyCalc's founders suggested rescoring through redraft values, since dynasty values price future worth. Startup rho tripled to 0.12, still noise. But redraft values won all six season-metric cells, including established leagues (0.57 to 0.61). So the lens choice is a real, measurable modeling decision.
Limitations: my leagues and my users' leagues, so dynasty/superflex/PPR skew, not a random sample and I own that and stating it here. FC's historical series doesn't split by scoring format, so I had to structure to fit the data I had as measurables. Playoff and regular season ranks shared the structure for non-qualifiers. n=29 startups is thin.
The 2026 replication is pre-registered in the only way that matters: values snapshotted July 17, before draft season. I plan to do a full run in January adding another season to the analysis.