The 21-year-old Russian winger has come under fire for not producing as much as expected early in his NHL career.
The No. 1 pick in the 2012 draft has 42 goals and 46 assists for 88 points in 192 games.
Yakupov had a league-worst minus-35 rating this season, but that was partly a product of being on a team near the bottom of the standings.
The Oilers went 24-44-14 for 62 points as part of a season that included the firing of head coach Dallas Eakins, who was replaced by Todd Nelson.
This deal doesn't cement Yakupov's status as part of Edmonton's core, but it sends the message that he hasn't run out of chances.
That core group includes forwards Ryan Nugent-Hopkins, Jordan Eberle and Taylor Hall and arguably defenceman Justin Schultz.