Despite the massive numbers associated with it, San Francisco 49ers quarterback Jimmy Garoppolo's five-year deal worth up to $137.5 million has been described as team-friendly. When signed in February, it contained the largest annual salary in the NFL.

That changed a month later when free agency hit and Kirk Cousins got a historic three-year contract from the Minnesota Vikings. It wasn't record-setting just because of the annual salary attached to the deal, which surpassed Garoppolo's, but because it was fully guaranteed.

The Atlanta Falcons further eclipsed Garoppolo's annual salary with quarterback Matt Ryan's new five-year, $150 million deal.

With Aaron Rodgers still awaiting his new record-setting deal, Garoppolo's contract may look like a bargain when all is said and done.

The 49ers could have used the franchise tag on Garoppolo in 2018 and gotten 16 more games to analyze the quarterback who started just five games for the team last season – but won them all. General manager John Lynch and company knew that was not in the best interest for the 49ers' future. With the price for quarterbacks skyrocketing, San Francisco knew Garoppolo's price tag could as well – especially if he has a big 2018.

NFL deals are never what they seem unless you are Cousins. The initial number reported on these massive multi-year deals is never what a player might actually see. It is almost always a mix of guaranteed money and incentives. Make no mistake, Garoppolo will earn a great deal of money over the next five years. The 49ers, however, are in good shape to absorb that salary and will pay out much of it up front with a 2018 cap hit of $37 million. While Groppolo will earn $42.6 million this year, that number drops to an average of $23.7 million over the next four years.

Despite the direction quarterback salaries are headed, ESPN writer Bill Barnwell believes Garoppolo is overpaid. He recently looked at 20 NFL players with "bloated" contracts when it comes to each's three-year value. Two 49ers are on the list.

Garoppolo came in at No. 20.

Barnwell believes the 49ers could have saved money if they wanted. He also sees the sizeable up-front sum more as a security blanket for the team should Garoppolo not pan out.

"Although you might think the accounting is to use up the 49ers' cap space in a year where they had $100 million available, it's not," writes Barnwell. "The 49ers could just as easily have given Garoppolo a huge signing bonus and rolled their current cap space over into future years. Instead, by paying Garoppolo's roster bonus now, the Niners have some semblance of cost certainty but also retain flexibility to move on if Garoppolo doesn't live up to his first seven NFL starts."

"They'll have paid as much as $61.2 million out of pocket to Garoppolo when they could have franchised him twice and paid just over $51 million," Barnwell continues, "but when you want flexibility and long-term stability, that's the cost of having your cake and eating it, too."

The other 49ers player on the list is fullback Kyle Juszczyk, who comes in at No. 1. He came in that high because players were only compared to their peers at the same position. The 49ers fullback is earning an average that is more than double any other fullback in the league.

Lynch touted Juszczyk as more than a fullback. He was an "offensive weapon." While that weapon was more productive (at least in the passing game) when Garoppolo entered the picture, the offensive production didn't, on paper, match the salary.

"The 49ers would point out that Juszczyk's versatility in Kyle Shanahan's scheme allows the offense to create mismatches, and it's true that he did have more success once the team acquired Garoppolo," writes Barnwell. "At the same time, though, merely being versatile doesn't mean that Juszczyk is a difference-maker in multiple facets of the game, and the amount he's being paid suggests that he should at least be an impactful receiver or blocker, if not both."

Barnwell believes the 49ers did the same thing this offseason with the signing of running back Jerick McKinnon.

"Even if you wanted to pay a premium for McKinnon -- and it's unclear why the 49ers felt like they needed to pay a premium for any running back in a scheme that has generated excellent running backs out of nowhere for decades -- nobody was valuing backs with McKinnon's track record this offseason at anywhere close to $12 million for one year or $7.5 million over four," Barnwell continued.

Not mentioned by Barnwell is that the 49ers got into mini bidding wars for both Juszczyk and McKinnon. The fullback even turned down another NFL team's larger offer for the opportunity to play for head coach Kyle Shanahan. Juszczyk's fiancée also loved the idea of living and working in the Bay Area.

As for McKinnon, the 49ers had to fight off the New York Jets.

"The Jets engaged in a full-court press to sign the underrated player, according to sources, before the 49ers landed him," reported Manish Mehta of the New York Daily News.