Alvaro Morata’s late goal helped Spain qualify for the 2022 World Cup and consigned Sweden to the play-offs.
The result means Spain have qualified for a 12th consecutive World Cup finals and have never lost a World Cup qualifying match at home.
Sweden goalkeeper Robin Olsen tipped Dani Olmo’s shot on to the crossbar with Morata on hand to tap the ball in after 86 minutes.
Luis Enrique’s side needed just a point to top Group B while Sweden needed to win to finish above their opponents.
Sweden will have another chance to reach Qatar in the European play-offs in March.
Spain started the brighter with winger Pablo Sarabia curling an effort narrowly wide from 20 yards in the opening exchanges.
The visitors grew into the match and had a number of chances in the first half with forward Emil Forsberg twice going close to breaking the deadlock.
And Alexander Isak should have put Janne Andersson’s side in front when through on goal midway through the second period, but the forward snatched at his chance after capitalising on some lapsed defending.
Spain held on after taking a late lead and keep up their run of reaching every World Cup since 1974.