The contract has an average annual value of $5.5 million and runs through the 2019-20 season. Schultz became a restricted free agent Saturday.
Schultz, who will turn 27 on Thursday, had NHL career highs in goals (12), assists (39), points (51), plus/minus (plus-27), power-play points (20), shots on goal (154) in 78 games with the Stanley Cup champion Penguins last season. He also played increased minutes in the absence of injured defenseman Kris Letang during the Stanley Cup Playoffs.
Schultz had 13 points (four goals, nine assists) in 21 playoff games, helping Pittsburgh repeat as champion. He was traded to Pittsburgh from the Edmonton Oilers on Feb. 27, 2016, and played in 15 playoff games during the Penguins' title run in 2015-16. He signed a one-year, $1.4 million contract to remain with Pittsburgh on July 13, 2016.
Selected by the Anaheim Ducks in the second round (No. 43) of the 2008 NHL Draft, Schultz has 160 points (41 goals, 119 assists) in 344 games with the Penguins and Oilers.