CALGARY, AB -- David Perron collected his third career hat-trick to lead the St. Louis Blues to a 6-4 victory over the Calgary Flames on Saturday at the Scotiabank Saddledome.
Calgary trailed 5-2 in the third period and scored a pair of goals to get them to within one strike, but couldn't complete the comeback.
Mark Giordano cut the Blues lead to 5-3 at the 9:31 mark of the third with his first goal of the season when Michael Frolik set up the Flames captain for a one-timer blast from the high-slot that beat Blues' goaltender Jake Allen.
Kris Versteeg scored his second of the game to cut the Blues lead to 5-4 with less than five minutes remaining, a one-timer from the point that eluded Jake Allen.
Video: STL@CGY: Versteeg's blast narrows Flames' deficit
Calgary had a chance to tie the game with a late powerplay but couldn't convert.
"The push was great. Obviously we generated a lot," said Giordano. "We had a lot of chances when we were down by three but I still feel like we've got to be a lot better. The powerplay in the end, that's the time to generate one and get pucks to the net and we really didn't do much."
The Flames fell to 1-4-1 on the season while the Blues improved to 4-1-1.
"We didn't manage the puck, we didn't make plays," Flames coach Glen Gulutzan said. "You can't do that against a team like the Blues who showed tonight are a very good hockey club."
Paul Stastny scored his third goal of the season, Patrik Berglund tallied his first of the season, and Alexander Steen rounded out the scoring for the Blues.
Micheal Ferland scored his second goal of the season for the Flames, who dropped their second straight game at home.
Jake Allen made 23 stops for the Blues while Chad Johnson, who suffered his first loss of the season, turned aside 34 shots in goal for the Flames.
Johnson was tested early in the first period when he turned aside Kyle Brodziak on a two-on-one. Scotty Upshall threw the puck in front of Johnson and Brodziak attempted to redirect it past Johnson, who slid out aggressively to make the save.
"I thought he played well," Gulutzan said of Johnson. "He gave us a chance, made some saves. We hung him out to dry, pretty simple."
The Blues drew first blood with a powerplay marker at 6:04 of the first period. Robby Fabri sent a hard pass into the slot, and Perron got his stick on it, redirecting the puck in the bottom corner past Johnson.
It was Perron's first goal of the season and first as a member of the Blues, since 2013. The 28-year-old returned to St. Louis after inking a two-year contract with the Blues on Jul. 1, 2016.
Calgary took the lead early in the second period with a pair of goals just 35 seconds apart.
First, it was Versteeg collecting his first of the season and first in a Flames jersey, 2:21 into the second period. Troy Brouwer feathered a pass to Versteeg on a two-on-one and the 30-year-old wired a one-timer past Allen.
Ferland put Calgary in front at 2:56 of the period when he entered the Blues zone and sent a weak backhand shot from the top of the faceoff circle on the ice towards the goal. Allen crouched down to make the stop but the puck slid by him, and the Flames took a 2-1 lead.
Video: STL@CGY: Ferland sneaks bouncing puck past Allen
The lead didn't last long for Calgary as Perron responded and tied the game 2-2 just 3:26 later with his second of the contest, grabbing a loose puck in front of the net and successfully putting it behind Johnson on the second whack.
The Blues took a 3-2 lead 12:08 into the second frame. With Giordano serving the first of two penalties, Steen shot a one-timer that was tipped by Stastny right under the bar. The referee signaled no goal immediately and play continued for another minute before the horn sounded, and a review determined the puck entered the goal.
Giordano had been whistled for holding and then took a two-minute minor for unsportsmanlike conduct.
"It's individual errors right now. That was me tonight," Giordano admitted. "I take responsibility for that one, that's a terrible penalty to take. Even if you don't agree with the ref, just go to the box. The next goal was my fault too. As a guy who has been around you've got to try to calm yourself and settle the team.
"That was disappointing tonight for me."
Berglund added to the Blues' lead with just under two minutes left in the second. Nail Yakupov danced into Flames zone and backhanded a pass over a sprawling Dennis Wideman to Berglund, who made no mistake and slammed home his first of the season.
Perron completed his hat-trick 6:50 into the final period when he beat Johnson with a backhand on a breakaway after he intercepted a neutral zone pass attempt from Dougie Hamilton and played give-and-go with Vladimir Tarasenko, who sent Perron in all alone.
Steen scored into an empty net to seal the game for the Blues.
"We're working hard we're just not in the end working smart," Versteeg said. "If you're going to be blatantly honest, it's a league where every team micro-manages every situation and they understand every situation so you've got to be smart and know who you're against and we're just going to have to be better next game.
"It's really about puck management for us. We're a growing team learning new things but we'll get better."
NOTES: Matthew Tkachuk, Brett Kulak and Nicklas Grossmann were scratched for Calgary. Ty Rattie, Robert Bortuzzo and Magnus Paajarvi were not dressed for St. Louis.
UP NEXT: The Flames travel to Chicago to take on the Blackhawks on Monday at 6:30 PM MT (SN, Fan960).