The team confirmed the move on X, with general manager Ryan Johnson credited as the executive on the deal under head coach Manny Malhotra's group.
A two-way contract tells you exactly where Safonov fits. He's not penciled into the top six. He's depth, callup insurance, and a roster body the Canucks can shuttle between Vancouver and Abbotsford as needed.
That matters more than usual right now. The Canucks finished 32nd overall at 25-49-8, dead last in the league with a -100 goal differential.
A team that scored 216 goals all season and went 9-27-5 at home doesn't get to be picky about cheap forward depth. Every two-way deal in this market is a small bet, and Vancouver needs a stack of them.
The bottom six was a problem all year. Names like Drew O'Connor and Aatu Raty produced in flashes, but the group as a whole drowned, and the road record of 16-22-3 reflected that.
Adding a two-way forward in early June is the quietest possible start, but it's still a signal.
Elias Pettersson is locked in at $11.6 million. Filip Hronek sits at $7.25 million. Brock Boeser carries $7.25 million on the books too. The big-ticket money is set.
That leaves Johnson chasing value at the margins. A two-way contract for a forward like Safonov costs almost nothing if it doesn't work and creates an internal option if it does.
Is this the move that fixes a team that just lost 1-6 in Edmonton to close the season? Of course not. But every rebuild starts with bets like this one, stacked on top of each other.
The team's official post is below. Worth a look for the wording on the contract structure itself.
-
The real question is what comes next. Vancouver still needs a top-nine forward, a defenseman who can eat real minutes, and answers in net that a two-way signing isn't going to provide.
|
LIVE
JUNE 2, 2026
| ||||
| G | A | PTS | ||
| Nikolaj Ehlers | 2 | - | 2 | |
| Jalen Chatfield | - | 2 | 2 | |
| Shea Theodore | 1 | - | 1 | |
| Brayden McNabb | - | 1 | 1 | |
| Jaccob Slavin | - | 1 | 1 | |
| Cole Smith | - | 1 | 1 | |
| Sebastian Aho | - | - | - | |
| Frederik Andersen | - | - | - | |
| Rasmus Andersson | - | - | - | |
| Ivan Barbashev | - | - | - | |
| Jackson Blake | - | - | - | |
| William Carrier | - | - | - | |
| Dylan Coghlan | - | - | - | |
| Pavel Dorofeyev | - | - | - | |
| Nic Dowd | - | - | - | |
| Jack Eichel | - | - | - | |
| Shayne Gostisbehere | - | - | - | |
| Taylor Hall | - | - | - | |
| Noah Hanifin | - | - | - | |
| Carter Hart | - | - | - | |
| COMPLETE STATS | ||||