Vettel has taken his first win since the summer break after taking the lead from Bottas at the start. Hamilton made a good comeback from the pit lane to finish in 4th, narrowly missing out on a podium finish.
Leading the race from the first corner, Vettel kept the Mercedes of Bottas behind for the 71 laps of the race to take victory, his first since July. His teammate Raikkonen was unable to mount a challenge on Bottas but managed to hold Hamilton behind in the closing stages of the race to hold on to a podium finish.
Having started from the pitlane, Hamilton was benefited by a crash at the first corner, which brought out the safety car. The incident was caused by contact between Vandoorne and Magnussen, who both were out of the race after the crash. Ricciardo, starting 14th, was knocked into a spin by the incident but kept going with little damage.
Just as the safety car period began, Grosjean and Ocon collided – sending Ocon into retirement for the first time in his F1 career. Grosjean managed to keep going but was handed a ten-second penalty for causing a collision.
Once the safety car period ended, Hamilton continued his charge through the field and was up to sixth place on lap 20. When the leaders pitted, he found himself into the lead on lap 30 for a brief time. Eventually, he pitted on lap 43 which dropped him to 5th. But, on fresh supersofts, he was flying.
Verstappen, in fourth, was struggling with degradation on his soft tyres and lost the place to Hamilton with just over ten laps to go. He finished the race a distant 5th, after pitting for new tyres and setting the fastest lap of the race.
With 12 laps of the race remaining, a podium was in reach for Hamilton. With 5 seconds to make up to Raikkonen the task looked achievable and at one point, the win still seemed possible. But his tyres began to fade and then he had a couple of lock ups. Raikkonen kept up a strong fight and just managed to hold on to the third place.
Behind Hamilton, Raikkonen and Verstappen was Ricciardo who made a good recovery after the spin at the start. Just holding on to 7th from Alonso was home hero Felipe Massa in his final ever race in Brazil, they were ahead of Perez – finishing 9th in a poor race for the Force India team. Hulkenberg scored the final point with 10th place.