Thursday, Sep 5th
Monday, Sep 9th

Pawel’s Process Toward NBA Profit

Winning an NBA GPP is not easy. As a GPP player, I’ll always remember the one-offs that I missed more than I will remember my biggest wins. I still think about the night I played 50% Willie Reed and Thomas Robinson. If I had just stuck to my gut and kept Robinson in all lineups I would’ve binked the big $15 GPP. Or when I did in fact win a GPP, but a LOLOLOLonzo Ball stat correction cost me $17k! Even when I hit my $50k winner, I was also entered in the large field $15 GPP, but only ended up in 7th place for $1250. Although this looks like a lot of rambling, there’s a lot of lessons to take from this, which I will touch on shortly.

PAWEL (pah-vel)

First, I’d like to introduce myself, my name is Pawel (pah-vel); I go by miilk24 on DK / FD and @do_me_favors on Twitter. I’m an accountant by day and a DFS fiend by night. I spend all of my time talking, thinking, and dreaming about basketball. I was never good enough to play at a high level in any sport, but I’ve always loved basketball from my earliest memories of Michael Jordan. To couple with my basketball knowledge, I have a Master’s in Finance that I utilize more in fantasy sports than I do in my career. I don’t play DFS to grind every dollar to a profit, but instead, the majority of my volume is in GPPs in search of massive scores while sweating every minute. My friends love to tease me for how much time I put into this, but to me, this isn’t “work,” this is what is fun; researching, discussing, and playing fantasy sports.

Consistent and persistent

Again, it’s hard to win a GPP. It takes a lot of skill and some luck to be able to create a unique enough lineup to outscore the multi-entry sharks. As a GPP player, you have to be able to understand you’re going to lose more than you will win, but the key is staying consistent and persistent. I personally vary the contest I choose to attack each slate depending on the way it sets up. My personal favorite contest is the higher dollar, lower entry GPP’s that are $25-50k to first (the $44, $66, or $88, but this varies daily). I rarely max the 150 GPPs as it feels almost impossible to win unless you are consistently maxing that contest, otherwise, you expose yourself to too much variance, as your competition will have a huge edge on you. If I had to choose, I much prefer the MME (Mini Multi-Entry) $4 / 20 max contest. I usually play the 20 max when I feel great about my player pool and have a couple of guys I want to lock. On standard day, based on confidence, bankroll, and overlay, you can find me playing one to three lineups. I usually will enter the higher dollar tournaments, the large field GPPs, the $12 Pick and Roll (personal favorite), and the $5 High Five.


Just like NFL DFS, process is everything. As soon as a slate is released I review player pricing, matchups, and value plays. I start off by entering a thought-out dummy lineup, but understand NBA news can change the slate in an instant. I use Vegas lines and totals to avoid games that will be heavy blowouts (lines -10 or more) and target games with high totals (over 210/220) while focusing on two fast-paced teams. Last year, the Wizards (one of the fastest paced teams who played no defense) vs Mavericks, Grizzlies, Jazz, Timberwolves all yielded game totals over 255!! Finding these high paced teams that don’t play much defense is a priority to figure out early in the season. Throughout the season trends will present themselves as well, and finding the best matchups is easy; play PG vs the Hawks, scoring 2 guards and bigs against the Bulls, wings against Portland, etc.).

Gone are the days where a 304 score would take down a GPP. We need to be targeting a score of 360-400. When I’m building my lineups, my target score is 360 (or 40 points per player). The goal is to find the most optimal combination of players while creating the most complete rosters. I use an optimizer to essentially log my thoughts throughout the day in statistical form. The first thing I do when the optimizer refreshes for the next day is to remove all the players I know I won’t be playing. I take out all of the players that are not going to get minutes, and/or are low upside players. As news comes out, I will make notes on my phone and I’ll update projections whichever way the news makes me feel. For example, let’s say that we hear in the mid-afternoon that Kemba Walker is going to be out today. I’ll go into the optimizer and I’ll remove Kemba and bump up Jeff Teague’s projection to starter minutes and give a slight bump to other ball handlers like Marcus Smart and Jaylen Brown. Throughout the day I’ll run 50-100 lineups just to get a feel for what’s coming up. In my free time during the day, I’m constantly adjusting my dummy lineup to see what types of lineup combinations I can make that the optimizer hasn’t spit out.

Cheap doesn’t mean value

Another thing to consider is playing a cheap $3k play. If that player gets you 18, you may think to yourself, “6x — not bad!” but if we are going to reach 360 points you need one of your other players to cover that 22 points from our 40 point per player average. The cheaper a player, the higher multiplier you want to target. If I’m going to play a $3k type guy, I want to at least project 24-30 points. Personally, I try to avoid the chalky $3k plays as most of the time they handicap a high-end score. Try to avoid players who don’t do anything but stand in the corner, the Torrey Craig types. Although they have incredible value in real-life basketball, this is fake basketball, and we only care about accruing points. When considering higher-priced players, you want to pick ones that do more than just score. Scoring is nice, but if they have a bad game your night is over. Target players who have rebound/assist and block upside. For example, play Aaron Gordon over Andrew Wiggins, who doesn’t do anything but score, while Gordon is a playmaker that rebounds and puts up peripheral stats.

POints per minute

The types of players I target vary, but the first thing I look at is PPM (Points Per Minute). I want players who get at least a fantasy point per minute or close to it. If they are under, I try to see if they get blocks and steals because those are the best way to rack up points. Their PPM could be lower due to low minutes which doesn’t give a player an opportunity to showcase their skills properly. I love targeting players who have a solid usage role but also can get blocks and steals (this raises their upside and floor). I also like to target point guards that are listed at SG. SG tends to be one of the weaker positions, and having a higher usage guy that the PG role brings, raises your floor and ceiling. Again, I try to avoid players that stand in the corner and do nothing, the Tony Snell’s of the league. He might get 36 minutes and maybe get you 17 points, but that isn’t going to win you anything. You want to target players that will be active on the defensive end and have a role on offense (scorers, playmakers, rebounders). One key factor to identify is a player’s usage. When we have a player go out, I recommend referring to Usage Rate stats. Usage rate is a statistic used to estimate the percent of plays a player is being used (based on field goals, free throws, rebounds, and turnovers. Luka Doncic leads the league at a whopping 38%). If we receive news that Luka is not playing on a certain day, then we must think about where is all that usage going to go? First, since he is the main ball handler we know that his backup will most likely take a large part of that pie leading us to play Trey Burke or Jalen Brunson (or both!). Monitoring starters in these situations is critical, as starters have more opportunities (minutes) to score more fantasy points.


Following news is the single most important thing you can do as an NBA DFS player. If you’re going to seriously play NBA DFS, you need to be distraction-free for at least the hour before lock. NBA is different from the NFL where NBA players will be scratched last minute. For example, you can have a very slow news day and ten minutes before lock we will get news that Nikola Vucevic is out for the game sending you in a scramble to make necessary swaps to ensure your lineup isn’t dead out of the gate. Personally, I have Twitter open and follow almost every beat writer of every team as well as sports news sources to ensure I am not missing any news. Every bit of relevant information that comes out causes me to tweak my projections throughout the day. There are usually 4 waves of games; 7pm, 8pm, 9pm, 10:30pm, but multiple games can start in between creating 4-9 different game locks to monitor. The number one pitfall of novice players is not adjusting lineups throughout the night. Normally, we know the expected situations, but sometimes we have those late scratches. By monitoring these news breaks, we can adjust our lineups to give us a better chance of winning.


Another NBA DFS hot topic is chalk. To be honest, the market has become much, much more efficient. If a player is chalk, they’re most likely chalk for a reason. The biggest edge you have now is deciding whether to fade the chalk or not. A general rule of thumb for me is to avoid low usage players when chalk. For example, Torrey Craig last season could get you 25 points, but more often than not, he won’t. I classify good chalk generally as a backup PG, a C replacing a starter, or a high volume scorer who is being replaced with another scorer and then find other ways to differentiate.

The NBA has become a high pace, high scoring league. Most nights there are multiple games with over 220/230 game totals. The highest total game is almost always going to be pushed by the tout sites, but pairing chalk plays with the 2nd or 3rd most popular games of the night allows you to eat the chalk but also differentiate from the field. You can take down a GPP with multiple high owned players, but the key is finding a lower owned stack or piece to differentiate you from the field. Another slight edge is playing two bad teams against each other, as these typically end up being close, competitive games. The field seems to avoid these games because the teams are bad, but bad teams score fantasy points too, especially in close games!


If you gained anything from reading my piece, my number one recommendation is joining a community. Discords, group chats, and Twitter groups are all places you can find somewhere to discuss. Everyone follows different teams and it’s impossible to understand the nuances of each team. Having a community of informed players to discuss is an incredible tool.

Best of luck this year (as I head back to grinding out NBA bestballs!). My DMs on Twitter are always open, and that’s the best place to reach me if you have any questions!

Pawel :: @do_me_favors on Twitter