• How To
    • Win Your DFS League
    • Win Your Auction Draft
    • Win Your Snake Draft
    • Download Projections
    • Scrape Projections
    • Calculate Projections for Your League
    • Examine Accuracy of Projections
    • Identify Sleepers
    • Save Custom Settings
    • Use the API
  • Strategy
    • Fantasy Football is Like Stock Picking
    • Use Projections, Not Rankings
  • Projections
    • Our Projections
    • Who has the Best Projections?
    • Draft the Best Starting Lineup
    • Projections are More Accurate than Rankings
    • Points by Position Rank
    • Players’ Risk Levels
    • Value Over Replacement
    • Bid-Up-To Value
    • Player Value Gap
    • Gold Mining
    • Weekly Variability
    • Are Subscription Sources More Accurate?
  • Statistics
    • How To Learn R
    • R is Better than Excel
    • Do Stats Help in Fantasy Football?
    • Download/Run Our Scripts
    • ffanalytics R Package
  • Apps
    • Auction Draft Optimizer
    • Snake Draft Optimizer
    • Weekly Lineup Optimizer
    • Rankings/Projections for Your League
    • API
    • Other Tools
      • Stock Analysis
    • Error Logging
  • Testimonials
  • About the Site
    • About
    • Authors
      • Isaac Petersen
    • FAQ
    • FFA Insider
    • Privacy Policy
    • Terms of Service
  • Donate

Fantasy Football Analytics

Identify Fantasy Football Sleepers with this App

48
  • by Isaac Petersen
  • in Projections · R · Risk · Tools
  • — 6 Jul, 2014

This post describes a Shiny app that identifies fantasy football sleepers (players who are likely to exceed their statistical expectations and have a breakout season).  The app includes the most accurate fantasy football projections available, and calculates a robust average of more sources of projections than any other website using a robust average (see here for a list of the sources of projections).  You can even choose how much weight to give each source.  Based on your league settings, it determines which players are most likely to be sleepers.  Best of all, the app updates the selections automatically with your inputs, and you can download the data for yourself.  So let’s get to it.  Here’s a more thorough description:

How We Identify Sleepers

Sleepers are players that have the potential to greatly outperform their expected level of production.  To identify sleepers, we calculate players’ risk levels, as defined by the standard deviation (uncertainty) around the players’ ranks and projections across sources from experts and the wisdom of the crowd.  Note that risk is standardized to have a mean of 5 and a standard deviation of 2.  When the user checks the button to display sleepers, we display the number of sleepers at each position specified by the user.  We define sleepers as those players with the highest uncertainty risk (not injury risk) whose ceiling is at least 80 points and who have a low position rank (ranked lower than 80% of the VOR baseline for each position, except for Kickers and DST, for whom the player’s position rank is lower than 8).  Finally, the players are ranked by their ceiling (upside).  In other words, sleepers are players with a high degree of uncertainty, high ceiling, and low position rank.

When to Draft Sleepers

Sleepers should be drafted later in the draft as bench players because such a move has a low risk, high reward potential.  For bench players, value over replacement may be less important than a player’s ceiling because they only contribute to the team’s points if they score enough points to be on the starting lineup.  We include players’ ceiling (upside potential) in the output, as defined by the upper bound of the 95% confidence interval around analysts’ projections for a given player.

The OpenCPU App

The app is located here.  For a more thorough description of how to use the app, see here.

Sleepers

Share this:

  • Click to share on X (Opens in new window) X
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on Reddit (Opens in new window) Reddit
  • Click to email a link to a friend (Opens in new window) Email

Like this:

Like Loading...

Related

Share

Tags: Rrisk/rewardshinysleepers

— Isaac Petersen

My name is Isaac and I'm an assistant professor with a Ph.D. in Clinical Psychology. Why am I writing about fantasy football and data analysis? Because fantasy football involves the intersection of two things I love: sports and statistics. With this site, I hope to demonstrate the relevance of statistics for choosing the best team in fantasy football.

48 Comments

  1. Marco Di Gabriele says:
    July 17, 2014 at 1:28 am

    I love how you are applying so much statistical analysis to fantasy football. Reminds me of Money Ball. Are these apps difficult to make? How much time did it take you to learn R and apply it to creating applications like these? Thanks, keep up the awesome work!

    Reply
    • Isaac Petersen says:
      July 17, 2014 at 8:09 am

      Hey Marco,
      Thanks for your interest! R and Shiny have a bit of a learning curve, but there is a large online community using them, so there are many great, free online resources to help you learn. Here are some resources for learning R: https://fantasyfootballanalytics.net/2014/06/learn-r.html. Basically, anything you write in R can be turned into an app with Shiny. Here is a tutorial for creating apps with Shiny: http://shiny.rstudio.com/. There are so many benefits to using R over Excel and other software: https://fantasyfootballanalytics.net/2014/01/why-r-is-better-than-excel.html. I’ve been working with R for a while now, but the great thing about it is that its packages are developed by stats experts in the community, so its functionality is constantly upgrading, and I’m continuously learning new things!
      Best,
      Isaac

      Reply
  2. Marco Di Gabriele says:
    July 17, 2014 at 8:59 am

    I appreciate the response! I am definitely going to look into using R. I need to find a good way to organize and display data on my site, so It may be able to help me in that regard. Also, you could probably make an awesome Average Draft Position analysis with data scraping. Not sure if you have already but its just an idea!

    Reply
    • Isaac Petersen says:
      July 17, 2014 at 8:22 pm

      Good point, R is great for visualizing data. Also, I have written scripts that calculate ADP from thousands of mock drafts on fantasyfootballcalculator.com: https://fantasyfootballanalytics.net/2014/06/identify-sleepers-using-wisdom-crowd.html. Here’s the relevant R script: https://github.com/isaactpetersen/FantasyFootballAnalyticsR/blob/master/R%20Scripts/Calculations/Wisdom%20of%20the%20Crowd.R. You can specify how many drafts to include in your ADP at the top of the script (default is 10,000).

      Reply
      • Marco Di Gabriele says:
        July 18, 2014 at 7:09 pm

        When attempting to run the scripts you have uploaded, i find that my Rstudio says “no package called “XML”, “no package called ggplot2”. Is there something that i need to modify in the script to personalize it for my Rstudio/computer. I’m new to the program and I’m just learning the coding behind it through the datacamp course.

        Reply
        • Isaac Petersen says:
          July 19, 2014 at 7:01 am

          You’ll need to install the XML and ggplot2 packages. They don’t come with R. Here’s how to install them:
          http://www.r-bloggers.com/installing-r-packages/

          e.g., try:
          install.packages(“XML”)

          Reply
  3. Isaac Petersen says:
    August 2, 2014 at 7:33 am

    Just updated the sleepers app with sortable projections. Cheers!

    Reply
  4. Jarod says:
    August 10, 2014 at 10:16 pm

    Is there a sleepers app for snake? Thanks

    Reply
    • Isaac Petersen says:
      August 10, 2014 at 10:36 pm

      This sleepers app can be used for both auction and snake drafts. It identifies the players’ with the greatest likelihood of breaking out (i.e., highest risk) and sorts them by upside potential.

      Reply
  5. Isaac Petersen says:
    August 13, 2014 at 7:31 am

    Upgrading our server to handle more traffic. Apps will be down for a bit. Will get the up as soon as possible.

    -Isaac

    Reply
    • Isaac Petersen says:
      August 13, 2014 at 10:31 am

      Apps are back up now!

      Reply
  6. Matt says:
    August 13, 2014 at 6:43 pm

    Issac,

    I really appreciate all the time you put into these apps and offering all of this great information for free. I just tried this sleeper app, but I’m getting an error “replacement has 0 rows, data has 288” Any idea what I may be doing wrong?

    Thanks!

    Reply
    • Isaac Petersen says:
      August 13, 2014 at 7:04 pm

      Hey Matt, sorry for the error. What inputs did you use? I’ll have to be able to reproduce the problem before I can fix it. Thanks!

      Reply
      • Matt says:
        August 13, 2014 at 7:52 pm

        Seems to work fine now. Not sure what I was doing wrong before.

        Reply
  7. Bruce S says:
    August 21, 2014 at 8:46 pm

    FYI, for the link to the app at the bottom of your post the text is correct, but the actual href is for projections, not sleepers.

    Reply
    • Isaac Petersen says:
      August 21, 2014 at 9:58 pm

      Thanks, Bruce, just fixed it!

      Reply
  8. Isaac Petersen says:
    August 22, 2014 at 12:17 am

    Just updated the data and added return TDs to the draft apps. Go win your draft!

    Cheers!
    -Isaac

    Reply
  9. Devin says:
    April 7, 2015 at 7:00 pm

    Studying the data that seems to be from last year and I’m impressed! I was just wondering when next year will be ready!

    Reply
    • Isaac Petersen says:
      April 7, 2015 at 8:21 pm

      Hey Devin,

      We’re working on updating them now. Most sites haven’t released their projections yet for the 2015 season, but hopefully we’ll be ready to go when they do!

      -Isaac

      Reply
  10. Mike says:
    July 7, 2015 at 3:27 am

    Hey Isaac,

    First of all I want to say fantastic website! I’ll be using these tools for sure so thank you!

    In regards to the sleepers, was the calculation to determine sleepers changed from last year to this year? I ask because last years system gave some very impressive results especially after tweaking them further (for ex. only positive ADP dif values). Using the new updated projection tool that has the sleepers built into it, when you go back and look at the 2014 data the sleeper lists are smaller, different, and frankly not as accurate as they were before the update. Has anything changed in the way these sleepers lists are determined? They should be the same players providing my inputs are the exact same as last years and I made sure to save them before the update.

    Thanks!

    Reply
    • Isaac Petersen says:
      July 7, 2015 at 8:15 am

      Hi Mike,

      We’ve tweaked the calculation of sleepers, though it’s mostly the same. I think the primary difference you’re seeing is because of some duplicate rows that are messing with the calculation. We’re working on fixing it right now!

      -Isaac

      Reply
    • Isaac Petersen says:
      July 7, 2015 at 1:48 pm

      Hi Mike,

      Okay, we removed the messy calculations owing to the duplicates, so the data should be much cleaner now. The formula is somewhat different from last year (see the section in the above article on how we identify sleepers), but the approaches are very similar so the results shouldn’t be drastically different. We define sleeper different than being “under-valued” that you would get with positive values on ADP Diff. If you want the most under-valued players, you could sort by ADP Diff. Rather, we define sleepers as those players with the greatest uncertainty and, therefore, the greatest chance to greatly outperform expectations. But they obviously could also underperform expectations, and that’s why we suggest drafting these high-risk, high-reward players later in the draft after you draft your starters.

      Hope that helps,
      Isaac

      Reply
  11. Mike says:
    July 7, 2015 at 4:57 pm

    Isaac,

    Thanks for clearing that up and it’s good to know that it has been tweaked. My concern was that last years formula generated a lot more sleepers. I remember there being around 30 or so WR’s and now with the same settings I get around 13. Sorry for the bad example before as I didn’t word it properly. What I meant was that after seeing the list of those 30 sleeper WR’s, I noticed that players with positive ADP values and higher dropoff values were more likely to “hit” as sleepers and thus narrowing down the list of 30 to about 5-10 but with better odds of success. Of course this was only just one season so that’s certainly not conclusive but the results we’re impressive, especially for RB’s.

    I noticed you include injury chance into the risk number now, is this new for this year or was it included last year as well? I think it’s brilliant by the way but maybe that could be a reason for the change in results.

    Thanks for your time!

    Reply
    • Isaac Petersen says:
      July 7, 2015 at 9:00 pm

      Hi Mike,

      You can change the number of sleepers displayed by increasing the number in the grid filters (default is 5). I will look into modifying the calculation so it outputs more than 13 WRs. Yes, risk now averages uncertainty risk and injury risk. Uncertainty risk influences sleeper status but injury risk does not.

      Thanks!
      -Isaac

      Reply
      • Mike says:
        July 9, 2015 at 7:17 pm

        Thank you for taking the time to reply to every comment. Much appreciated!

        Reply
    • Isaac Petersen says:
      August 3, 2015 at 10:10 am

      Hi Mike,

      We modified the sleeper criteria so that it shows more sleepers.

      Cheers!
      -Isaac

      Reply
  12. Max says:
    July 16, 2015 at 9:10 am

    Hey Isaac,
    Just had a quick question about sleepers in the Excel sheet. When you download the Excel sheet, there is a sleeper column. For some players in says “null” but for others there is a number. Could you explain what those numbers represent and what a good value is?

    Thanks, Max

    Reply
    • Isaac Petersen says:
      July 16, 2015 at 3:51 pm

      Hey Max,

      The number in the sleeper column is the sleeper rank. Players meeting the sleeper criteria (defined by the criteria in the above article) are ranked by risk. If the value is null then the player is not considered a sleeper by our criteria. I would focus more on risk and ceiling than on sleeper rank.

      Hope that helps!
      -Isaac

      Reply
  13. Patrick says:
    August 27, 2015 at 9:44 am

    Ugh! I am clueless about this “R” stuff and too old to attempt to figure it out. But my son wants me to play FF and, of course, I want to kick his a**!
    I understand the VOR now and want to draft using this strategy. Can I just use your “sleeper” as my best guide to VOR? I understand I’ll have to do it manually, but it sure sounds easier than learning “R”.
    If so, do you ever update the sleeper app?
    Thanks do much.
    Patrick

    Reply
    • Isaac Petersen says:
      August 27, 2015 at 11:38 am

      Hi Patrick,

      Yes, you can use our Projections tool to find sleepers (http://apps.fantasyfootballanalytics.net/projections). We update the data regularly, and they are up-to-date. For drafting strategy for starters and bench players, see here:
      https://fantasyfootballanalytics.net/2013/09/win-your-fantasy-football-snake-draft.html

      Good luck in your draft!
      -Isaac

      Reply
  14. Patrick says:
    August 29, 2015 at 9:27 am

    Thanks so much for this information. I certainly feel this is a situation where the more I know the more questions I have.
    So, if I’m understanding this VOR stuff adequately, are you saying that you’d pick Antonio Brown (currently #5 VOR) over M. Lynch (#6) with the first pick of a draft strictly based on the better VOR number for Brown?

    Reply
    • Isaac Petersen says:
      August 29, 2015 at 10:04 am

      Hi Patrick,

      We also recommend considering other factors as well, including floor, risk, dropoff, ADP Difference, etc. For more info on strategy, see here:
      https://fantasyfootballanalytics.net/2013/09/win-your-fantasy-football-snake-draft.html

      Hope that helps,
      Isaac

      Reply
      • Patrick says:
        September 1, 2015 at 2:41 pm

        How often is your projections app updated? Hourly, daily, weekly, or otherwise?
        I’ve been doing some mock drafts on fantasy pros and your VOR numbers look good – especially after they’ve been updated.
        Also, when I change data inputs (particularly on the last two weekends) an error occurred but it was OK by Monday. Just curios why and since our draft is this Sunday maybe I should print out those numbers on Friday as they might not be available over the weekend.
        Thanks again, this has been an education!

        Reply
        • Isaac Petersen says:
          September 2, 2015 at 8:03 am

          Hi Patrick,

          We update the data very regularly and just updated them. The error might have been caused by the heavy load we’ve been experiencing. We’re working on upgrading our servers to keep up with the load.

          Thanks,
          Isaac

          Reply
          • Patrick says:
            September 2, 2015 at 4:18 pm

            OK…fair enough. But is there any way you can put a note somewhere on the program to denote the last update?

          • Isaac Petersen says:
            September 2, 2015 at 10:48 pm

            Hi Patrick,

            Yes, that’s on our to-do list.

            Thanks,
            Isaac

  15. Patrick says:
    June 10, 2016 at 3:10 pm

    Would you (or anyone esle smarter than me!) give me your thoughts on VONA (Value of next available) versus VOR (Value over replacement)? Other websites have programs that can calculate VONA and wondering if you think this approach might lead to better results…everything else being equal.

    Reply
    • Isaac Petersen says:
      June 12, 2016 at 4:32 pm

      Good question, Patrick. VONA sounds similar to our ‘dropoff’ variable:
      https://fantasyfootballanalytics.net/2014/06/custom-rankings-and-projections-for-your-league.html

      Reply
      • Patrick says:
        June 15, 2016 at 11:28 pm

        Thanks Isaac. That certainly makes sense. Would you think that VONA (assuming it could be done “on the fly”) would yield the same, better, or worse results. It seems a more aggressive approach to me and wondering if you agree?
        Also, in the “Change Data” section under “Analysts”, why does the FantasyPros box show a zero?

        Reply
        • Isaac Petersen says:
          June 16, 2016 at 6:55 am

          We’d have to have a prediction algorithm for which players would be available at your next pick to calculate VONA. It’s a good idea, we can put it on our to-do list. FantasyPros shows a default weight of zero because we are already including all of their sources (CBS, ESPN) in our projections, so it would be double counting CBS and ESPN to give FP a weight above 0. You can certainly do so, though, if you’d like.

          Reply
          • Patrick Martin says:
            June 24, 2016 at 10:35 pm

            On your raw projection sheet the Seahawks Defense is rated #6 (6/24 Update). After switching to an ESPN scoring system Seattle’s defense falls to #19. Would you say the program is calculating things correctly? Or is this an internal error? I don’t think the wisdom of the masses really believe this…

          • Isaac Petersen says:
            June 25, 2016 at 12:17 am

            Hey Patrick,

            Things look to be calculating correctly. Although ESPN provides projected points on their site (http://games.espn.go.com/ffl/tools/projections?&slotCategoryId=16), they don’t provide projected stats, so we can’t use their estimates in our calculations. The Seahawks are brought down by projections from FantasySharks:
            http://www.fantasysharks.com/apps/bert/forecasts/projections.php?Position=6

            Hope that clarifies!
            -Isaac

  16. Patrick says:
    September 3, 2016 at 11:17 am

    Hello Isaac,
    I’m glad you’ll have an opportunity to make some money with this information. I’m sure a lot of this has been a labor of love and I hope the amount of money you’ll be getting will justify all the time spent.
    I have already created a username and password, but it is a little unclear as to what the monthly fee will get me (probably because I’m new at this FFL stuff). Will the projection sheet remain free? If so, being that football season is almost here, will the projections be updated more frequently? (Well, since our draft is next Tuesday how about at least updating it then!) Thanks again for the education and your patience. Good luck.

    Reply
    • Isaac Petersen says:
      September 4, 2016 at 10:37 am

      Hi Patrick,

      Thanks for the kind words and we apologize for the inconvenience. I tried to send a password reset. Let us know if you got it (and check your spam folder). If not, please add noreply@fantasyfootballanalytics.net as a whitelisted email address (http://onlinegroups.net/blog/2014/02/25/how-to-whitelist-an-email-address/), and we can try to re-create the account.

      The weekly projections sheet will be free, while the weekly lineup optimizer for DFS leagues will be reserved for FFA Insiders.

      Hope that helps!
      -Isaac

      Reply
  17. Patrick says:
    September 5, 2016 at 5:40 pm

    I created a free account and can now log in, but the info (VORP, ECR, etc.) is blank. Do I have to subscribe (I will) to get this data? Or what am I doing wrong?

    Reply
    • Isaac Petersen says:
      September 5, 2016 at 9:35 pm

      Hi Patrick,

      You were probably looking at projections for Week 1. Weekly projections do not include VOR, ADP, or ECR Rank. If you change to seasonal projections you should see those.

      Hope that helps,
      Isaac

      Reply
  18. Forrest says:
    August 15, 2017 at 12:10 pm

    Hello Isaac (and any others who wish to comment),

    Fantastic work. In addition to sleepers, I’m wondering if you have any advice for identifying potential busts, perhaps using similar methods, or whether you feel the concept of “busts” should be taken into account at all when making draft selections. Though the arguments analysts make in identifying busts seem compelling in themselves, there seems to be little science involved, and excluding every player identified as a potential bust would quickly eliminate the majority of players from selection.

    Opposite sleepers, if I tested for a high risk factor but with low upside and greater downside, do you feel this might accomplish this?

    Thanks for any insight,
    Forrest

    Reply
  19. Forrest says:
    August 15, 2017 at 1:49 pm

    Is it better to identify potential “busts” via calculation (as demonstrated here with sleepers) or by simply limiting risk level in the lineup?

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

  • Previous story Scraping Fantasy Football Projections from the Web
  • Next story Win Your Fantasy Football Draft with These OpenCPU Apps: 2014 Update
  • Tabs

    • Most Popular
    • Recent Posts
    • The ffanalytics R Package for Fantasy Football Data AnalysisJune 18, 2016
    • 2015 Fantasy Football Projections using OpenCPUMay 28, 2015
    • Win Your Fantasy Football Auction Draft: Determine the Optimal Players to Draft with this AppJune 14, 2013
    • Win Your Fantasy Football Snake Draft with this AppSeptember 1, 2013
    • Post-Combine Mock: Team Needs and TargetsMarch 10, 2025
    • Fantasy Football Weekly Cheat Sheet: Week 18 (2024)January 3, 2025
    • Fantasy Football Weekly Cheat Sheet: Week 17 (2024)December 26, 2024
    • Fantasy Football Weekly Cheat Sheet: Week 16 (2024)December 18, 2024
  • FFA Insider

    Logo
  • Categories

    • About the Authors
    • Articles
    • Auction Drafts
    • Draft Optimizer
    • FFA Insider
    • Gold Mining
    • How To
    • In the Media
    • Luck
    • Package
    • Projections
    • R
    • Risk
    • Theory
    • Tools
    • Trade Strategy
    • Uncategorized
    • Weekly
  • Facebook

  • Twitter

  • Our Partners

    R-bloggers

  • Support us building things... Even a cup of coffee ($1.99) helps us stay awake!

  • Subscribe to the Fantasy Football Analytics mailing list (no spam).
    Loading

        © Fantasy Football Analytics

        %d