Kendrys Morales gave the Blue Jays a much-needed lift after Toronto started the regular season with consecutive losses.
Morales hit his fourth career grand slam, Marcus Stroman pitched 6 1/3 effective innings and the Blue Jays beat the Tampa Bay Rays 5-2 on Thursday night.
"It was just a matter of time before the guys started heating up," Toronto manager John Gibbons said.
Morales homered off Blake Snell (0-1) in the third. Stroman (1-0), the MVP of last month's World Baseball Classic, allowed one run and six hits in his 2017 debut.
"It feels really satisfying knowing that we had two defeats already, and it's something that is hard to do," Morales said through a translator. "So I'm just happy that it happened in a win."
Snell gave up five runs and four hits in 6 2/3 innings. The lefty struck out five and walked five.
Darwin Barney had a one-out single in the third, and Josh Donaldson and Jose Bautista both drew two-out walks before Morales sent an 0-1 pitch into left-center field seats for a 4-0 lead.
"I'm upset about the walks." Snell said.
Toronto didn't homer in losing both games during a series at Baltimore. The Blue Jays have never gone homerless in their first three games of a season.
The Blue Jays signed Morales to a $33 million, three-year contract during the offseason to fill the offensive void left by the departure of Edwin Encarnacion, who joined Cleveland as a free agent. Morales hit 30 homers and drove in 93 runs last season for Kansas City.
Toronto went up 5-0 on Barney's bunt that first baseman Logan Morrison was charged with an error for mishandling in the seventh. Barney had two hits and walked once.
Stroman, who induced three double plays, left after giving up Morrison's run-scoring single in the seventh.
"I threw a lot of sinkers today," Stroman said. "I never come in with necessarily a certain game plan. It's more like I see how everything is working and kind of go from there."
Jason Grilli came in for Joe Smith with two on and one out in the ninth and threw a run-scoring wild pitch before getting his first save.
Tampa Bay right fielder Steven Souza Jr. remained in the game after colliding with Blue Jays catcher Russell Martin during the fifth while trying to score on Beckham's grounder to Stroman. Souza needed assistance after bruising his left leg, but was back out to play defense in the sixth.
"Some scrapes," Souza said. "The shin guard came down on my shin. Nothing serious."
Souza had three hits, including a pair of doubles.
Blue Jays: Closer Roberto Osuna (neck spasms) will throw in a simulated game Saturday and is expected to be ready for Toronto's home opener Tuesday night against Milwaukee. ... 2B Devon Travis, slowed by a bruised right knee during spring training, got a planned day off from the starting lineup. He had offseason surgery to remove a small flap of cartilage from the knee.
Rays: OF Colby Rasmus, coming back from hip surgery, started a rehab assignment with Class A Charlotte and was hitless in three at-bats.
Steve Pearce hit leadoff for the Jays and went 0 for 4.
It's a role he may fill on a regular basis when Travis gets a day off.
Blue Jays: LHP Francisco Liriano will make his first start of the season Friday night against the Rays. Liriano's lone outing at Tropicana Field last year came out of the bullpen Sept. 2 when he allowed three runs without recording an out.
Rays: RHP Matt Andriese, Friday night's starter, was 8-8 last year after starting the season by winning his first six decisions.