How much do numbers matter in the NBA? That depends on whom you ask.

Some notable figures, like Houston Rockets general manager Daryl Morey and former Sixers GM Sam Hinkie, believe numbers are everything. Others—like retired players Charles Barkley and Karl Malone—think the emphasis on quantifiable variables has gone way too far. The truth is probably somewhere in the middle. 

No one would debate this, though: to put a championship-caliber team on the court, you have to manage the salary cap well. You can’t invest in bad assets. Sometimes teams get lucky and sign a player at exactly the right moment—like when the Dubs inked Steph Curry to a four-year, $44 million contract prior to the 2012-13 season despite his ankle issues. Decent move.

Other times, teams wreck their future by dishing out a monster deal at the exact wrong moment—like when the Knicks gave Eddy Curry $60 million in 2005...or Amar’e Stoudemire $100 million in 2010...or Joakim Noah $73 million in 2016. Not ideal.

If you want to compete with the best in the NBA, you need a few players who make a big impact at a bargain-bin price tag. Here are the 20 most underpaid players in the NBA for the 2018-19 season.

(We did not include players currently on their rookie contracts. Otherwise, a number of emerging standouts—like Domantas Sabonis, Buddy Hield, and D’Angelo Russell—would have a rightful place on this list.)