© Getty Images
The Vikings looked to reply instantly but after their drive stalled, they had to settle for a Blair Walsh field goal to cut the deficit to four points.
However, Detroit would extend their lead with another touchdown pass from Stafford, who this time passed to his tight end Eric Ebron for a seven-yard connection to make it 14-3 in the first quarter.
The two sides then traded field goals as Walsh hit his longest kick of the season so far from 53 yards before Matt Prater nailed a 52-yard attempt.
Minnesota finally got their first touchdown of the day in the second quarter as quarterback Teddy Bridgewater connected with Kyle Rudolph for a one-yard score, although Walsh would fail to convert the extra point.
© Getty Images
Walsh hit another long field goal just before the break to make the scores 17-15 to the Detroit Lions at half time.
The Vikings took the lead early in the second half as Bridgewater found Stefon Diggs for a 36-yard touchdown before running back Adrian Peterson broke out a 76-yard run. They could not find the endzone, but Walsh put the ball between the uprights yet again.
Another strong Minnesota drive was stopped just inside the redzone and Walsh was required to hit his fifth field goal of the day and the kicker easily made the chip shot.
The Lions had the chance to pull themselves back into the game late but Stafford's pass was dropped by Theo Riddick to ensure the Vikings victory, despite them allowing a late safety.
Minnesota head to 4-2 on the season while Detroit drop to 1-6 and look likely to miss out on the post-season.