A second string Ireland side without their British and Irish Lions stars brought Canada down to earth with a 14-40 Test triumph at BMO Field.
Canada started the Test match riding high, after victories over Tonga, Fiji, the United States and Russia.
Ireland, in contrast, were without many of their biggest stars. Nevertheless, the eighth-ranked team in the world lived up to their favorites' billing, breaking open the contest in the second half after taking a 12-9 lead into the interval.
Fergus McFadden scored three tries for Ireland, who also had tries from Darren Cave, Andrew Trimble and Tommy O'Donnell.
Before a crowd of 20,396 - a record for rugby in Canada - the hosts put the first points on the board with James Pritchard's penalty six minutes into the contest.
Ireland responded quickly, with Ian Madigan launching the move that ended with a try by Trimble and Madigan adding the conversion.
Pritchard converted two penalties, putting the hosts back in front and overtaking former Canada international Gareth Rees as the country's all-time leading scorer.
Pritchard has scored 494 points in his international career.
A try from McFadden put Ireland back in front at the break, and, after Tyler Ardron drove over to score a try for Canada early in the second half, things unraveled for Canada as Ireland scored 28 unanswered points.
"It got a little away from us there," said Canadian captain Aaron Carpenter. "It was unlucky for us but I thought we were in there until the end."
Canada will now turn their attention back to the Pacific Nations Cup. In their first year in the tournament, Canada are unbeaten in three matches with wins over Fiji, Tonga and the United States.
They will finish their campaign in Japan on Wednesday.
They will face the United States again in August in a home-and-away series as part of the World Cup qualifier.
Final Score Canada 14 (9) Ireland 40 (12)
Tries: Tyler Ardron
Penalties: James Pritchard (3)
Tries: Fergus McFadden (3), Darren Cave, Andrew Trimble, Tommy O'Donnell
Conversions: Ian Madigan (4), Paddy Jackson
James Pritchard, Matt Evans, Ciaran Hearn, Harry Jones, Taylor Paris, Nathan Hirayama, Phil Mack; Aaron Carpenter (captain), John Monnlight, Tyler Ardron, Tyler Hotson, Jebb Sinclair, Jason Marshall, Ray Barkwill, Hubert Buydens.
Replacements : Ryan Hamilton, Andrew Tiedemann, Doug Woolridge, Jon Phelan, Nanyak Dala, Sean White, Nick Blevins, Connor Braid.
Felix Jones, Fergus McFadden, Darren Cave, James Downey, Andrew Trimble, Ian Madigan, Isaac Boss; Peter O'Mahony (captain), Tommy O'Donnell, Kevin McLaughlin, Devin Toner, Dan Tuohy, Mike Ross, Richardt Strauss, Tom Court
Replacements : Sean Cronin, David Kilcoyne, Declan Fitzpatrick, Mike McCarthy, Chris Henry, Paul Marshall, Paddy Jackson, Robbie Henshaw.