Staal cut it to 2-1 when he one-touched a Jordan Martinook saucer pass at 13:55 of the second period.
"Just hounding pucks and playing in their end and wearing teams down is what we're trying to do out there, and it's nice to be rewarded with some offense as well," Staal said. "We're going to try to keep building on that.
"Down one going into the third [period], obviously, yeah, we had an opportunity there to kind of push the first two periods behind us and just go and try to win a game, and clearly we didn't pull that off. A couple mistakes, and obviously their top players can make you pay quick, and that was the story tonight."
MacKinnon made it 3-1 at 4:17 of the third period, scoring off a dot-to-dot pass on a 2-on-1 with Rantanen.
"He's an incredible player, and obviously he brings it every single night," Makar said of MacKinnon. "He's obviously making a lot of plays, and he put it through the five-hole, straight through, tonight."
Rantanen scored an empty-net goal at 17:50 for the 4-1 final.
NOTES:Avalanche defenseman Kurtis MacDermid left in the first period with a lower-body injury. There was no update after the game. … Makar scored his 50th NHL goal in his 191st game, the fourth-fewest needed to reach the mark among defensemen in League history, behind Phil Housley (148 games), Ray Bourque (170 games) and Denis Potvin (185 games). It was also his 50th multipoint game, passing John-Michael Liles for the third-most among defensemen in Avalanche history. Sandis Ozolinsh is first with 63, and Tyson Barrie is second with 57. … MacKinnon has 13 points (one goal, 12 assists) during a five-game point streak. … Colorado defenseman Devon Toews had an assist to extend his point streak to five games (one goal, six assists).