Two first half tries by skipper Elinor Snowsill and Lowri Harries put Wales in pole position to record their second victory of the tournament but a late onslaught by Canada saw them score the crucial try in the 70th minute to break Welsh hearts.
Yasmin Leung had a last gasp chance to steal the win for Wales but her penalty shot sailed wide.
The defeat will be a bitter pill to swallow for the Welsh side as they dominated possession and made all the running but failed to breach the determined Canadian defence.
Alex Stokes was held up over the line early on after Levi Hallett had also posed some problems in attack. In the eighth minute Snowsill took matters into her own hands and produced a moment of individual brilliance to break the deadlock.
The Welsh fly half dummied a pass wide out, stepped over the gain line and dived over for an unconverted try.
Wales continued to apply all the pressure with Amy Lawrence to the fore before leaving the field injured with a shoulder injury.
Wales doubled their lead in the 25th minute after Lowri Harries dummied her way over from close range.
Canada scored against the run of play in the 45th minute when their full-back finished off a slick move from a line-out. The extras were added and suddenly Canada were right back in the game.
Canada broke through in the 70th minute to score and edge in front for the first time in the match. With time running out Wales camped inside Canada’s 22 and eventually forced a penalty to offer Leung a chance of restoring the lead, but fate intervened and hopes of a Welsh victory disappeared with her missed shot at goal.