Casey Mittelstadt held the puck on a 2-on-1 before shooting top corner from the left face-off dot to make it 2-0 at 1:39 of the second.
Tyson Jost extended Buffalo's lead to 3-0 at 8:16 when he one-timed a backhand pass from Alex Tuch from the high slot.
Rasmus Dahlin scored into an empty net at 16:52 of the third period for the 4-0 final.
"I think they played a solid game, but at the same time I just think at the moment right now, I don't know if we've just gotten complacent as a team," Avalanche defenseman Cale Makar said. "Obviously, you come off of six wins and everybody's gung-ho at you, and then you kind of get punched in the face in Pittsburgh a little bit with a 4-0 loss and same tonight.
"If anything, it's just a reality check, reset the boys. That's all you can do. We're at an early point in the season now where regardless of the power play or 5-on-5, we have to continue building that momentum. It just really never feels like we get that kind of foot in the door. … It feels like right now there's just kind of stuttering on that momentum. Lucky for us that's easy to find. It's just unfortunately it's happened two games in a row."
NOTES: It's the first time Colorado has been shut out in consecutive games since Dec. 20 and Dec. 22, 2016. … Dahlin extended his point streak to eight games (two goals, seven assists), tying Dylan Larkin, William Nylander and Artemi Panarin for the longest streak by an NHL player this season. He is the third defenseman in Sabres history with at least one eight-game point streak (Phil Housley, John Van Boxmeer). … Buffalo defenseman Jacob Bryson played 13:28 in his season debut. … Erik Johnson was plus-1 in 19:42 of ice time; it was his first game for Buffalo against Colorado, where he played 13 seasons, after signing as a free agent July 1.