Adam Schefter of ESPN confirmed the length of the agreement and added the contract is for $16 million but could be worth up to $19 million.
Sanders played for two different teams during the 2019 campaign. The Denver Broncos traded him to the San Francisco 49ers in October, and he helped the NFC West team win the division and reach the Super Bowl.
While he was a solid playmaker in Pittsburgh, he never topped 740 receiving yards in a single season and had more than two touchdown catches just once. He was far more effective for the Broncos, especially during the best three-year stretch of his career from 2014-16.
He tallied 101 catches for 1,404 yards and nine touchdowns as a Pro Bowler in 2014, posted 1,135 receiving yards and six touchdowns as a Super Bowl champion in 2015 and notched 1,032 receiving yards and five touchdowns as a Pro Bowler in 2016.
Sanders' numbers fell from there as he dealt with injuries and defenses focused additional attention his way, but he experienced something of a resurgence for the 49ers with 502 receiving yards in 10 games after he finished with just 367 receiving yards in seven games with the Broncos in 2019.
Sanders will be 33 years old throughout the 2020 campaign, but he proved he can still be durable by appearing in 17 games last year.
Kyle Madson of USA Today's Niners Wire noted he is just the ninth player since 1930 to appear in that many regular-season games, which was only possible because he was still on the Broncos during the 49ers' Week 4 bye.
Sanders is also playoff-tested in both conferences and can beat single coverage he may face playing alongside Michael Thomas.
His days of tallying more than 1,400 receiving yards in a season may be behind him, but he can still be a productive piece while serving as a veteran leader.
With the Saints coming off several disappointing exits in the playoffs, adding a player with a lot of postseason experience could be what they need to help get over the top.