Max Verstappen dominated the Mexico City Grand Prix to extend his lead in the Drivers' Championship over Lewis Hamilton, who had to settle for second.
Sergio Perez finished third on home soil, failing to mount a serious challenge to Hamilton in the closing stages of the race.
We have rated all 20 drivers based on their qualifying and race performances. Team errors such as a slow pit-stop or a sub-optimal strategy do not affect our ratings as they are no fault of the drivers.
Our ratings solely look at how well the drivers got on throughout the Mexican GP weekend.
Max Verstappen 9/10
Started: 3rd - Finished: 1st
Qualifying didn't go to plan for Verstappen as he failed to adapt to the increasing temperatures, whilst suffering some misfortune when he came across Perez and Yuki Tsunoda on his second Q3 run.
However, he more than made up for it in the first 10 seconds of the race. Verstappen's late-braking move into Turn 1 was brave, bold and decisive. It was a risk, but it paid off and gave him the perfect opportunity to control the race.
That's exactly what he did and his ninth win of the season never looked under threat. He even tried to compromise Valtteri Bottas' attempt at stealing the extra point for the fastest lap of the race.
Lewis Hamilton 8.5/10
Started: 2nd - Finished: 2nd
Hamilton's failure to take pole position put him on the dirty side of the grid, but he still had a very good start and didn't put a foot wrong on Sunday.
The Red Bull was clearly faster and Hamilton managed his tyres well to keep Perez at bay during the latter stages of the race.
Whilst Hamilton maximised his result, he will be disappointed to see the pace deficit to Verstappen and Red Bull.
Sergio Perez 7.5/10
Started: 4th - Finished: 3rd
Perez soaked up the home pressure to deliver what Red Bull wanted with a hat-trick of podiums.
He avoided the mayhem at the start and went long in the first stint to try and challenge Hamilton in the final 10 laps, but overtaking was very difficult and Perez could not quite get close enough to mount an attack.
It would have been easy for Perez to make some mistakes or have a scrappy weekend on home soil. He was close to having some incidents but just came through unscathed.
Pierre Gasly 9/10
Started: 5th - Finished: 4th
Pierre Gasly was outstanding once again, taking the 'best of the rest' spot in qualifying and the race.
Similarly to Lando Norris earlier in the season, Gasly has turned his excellent form into the norm and has learned how to manage the Pirelli rubber perfectly.
For a midfield driver, having a quiet race that goes to plan might not be the most exciting drive, but it's something that won't go unnoticed by the teams.
Charles Leclerc 7.5/10
Started: 8th - Finished: 5th
It wasn't vintage Charles Leclerc at the weekend, but it was still enough to just about be the best Ferrari at the chequered flag.
A scruffy Q3 saw Leclerc out-qualified by Carlos Sainz but the Monegasque driver was one of the big beneficiaries of the Turn 1 mayhem.
The Ferrari drivers appeared to have equal pace, and were simply on different strategies. Leclerc pitted early but admittedly struggled on the Hard tyre compound compared to the Medium.
Carlos Sainz 7.5/10
Started: 6th - Finished: 6th
Sainz was back on the pace of Leclerc, following two races where he slightly trailed his Ferrari teammate.
The Spaniard made the most of his fresher Hard rubber to catch Leclerc, demonstrating his credentials over a long run. He swapped places with Leclerc to try to attack fourth-placed Gasly, but could not get close enough and returned the position before the flag.
Ferrari's fifth and sixth is a big result in their fight with McLaren and they are now heavy favourites to win that battle.
Sebastian Vettel 7.5/10
Started: 9th - Finished: 7th
Sebastian Vettel quietly went about his business to make the most of the opening lap incident and the grid penalties to finish seventh.
It's Vettel's best result since the shortened Belgian GP, which shows how much he and Aston Martin have struggled in recent events.
Qualifying suggested Aston Martin are still lacking raw pace, but Vettel showed an upturn in form in Mexico.
Kimi Raikkonen 8.5/10
Started: 10th - Finished: 8th
Kimi Raikkonen had a brilliant race, running the same lap times as cars which were faster than the Alfa Romeo.
Raikkonen's tyre management has been excellent all year and he showed his true colours once again to follow the pattern of Vettel's race.
The Finn also out-qualified teammate Antonio Giovinazzi, underling his pace at the Autodomo Hermanos Rodriguez.
Fernando Alonso 7/10
Started: 12th - Finished: 9th
Fernando Alonso somehow managed to pick up two points despite another terrible weekend in terms of pace for Alpine.
The two-time F1 World Champion was hindered slightly by the Turn 1 collisions, but came through unscathed and was able to display strong enough pace to run long and hold on to ninth.
Alonso will be eager for a better showing in Brazil, because Alpine could have a tricky end to their 2021 campaign.
Lando Norris 7.5/10
Started: 18th - Finished: 10th
Just like the drivers ahead of him, Lando Norris maximised his result with a decent recovery from 18th on the grid after changes to his power unit.
He went very long in the first stint, before consolidating the final points-paying position with a comfortable drive.
Norris has been very close to teammate Daniel Ricciardo on pace recently, more likely because the latter has improved rather than a drop of performance from Norris.
Antonio Giovinazzi 5.5/10
Started: 11th - Finished: 11th
Giovinazzi was one of the big winners on Lap 1, moving up to sixth place. Alfa Romeo pitted him early, which didn't pay off, but Giovinazzi's pace was considerably slower than Raikkonen on the Hard tyres.
The difference in race pace between the Alfa Romeo drivers remains quite significant, and Giovinazzi was frustrated with his strategy.
Daniel Ricciardo 7/10
Started: 19th - Finished: 12th
Ricciardo's rapid one-lap pace seems to be returning as he qualified in seventh with a strong lap in Q3.
He went for a gap down the inside on the run down to Turn 1 and could have got by Gasly, which would have been a pivotal move.
It looked like Ricciardo saw Bottas was going to come across his car, so he tried to back out but couldn't do anything to avoid the contact.
The stewards called it a racing incident and you would have to agree, given that it was the opening lap and Ricciardo couldn't have done anything else given the position he was in.
Esteban Ocon 5/10
Started: 19th - Finished: 13th
Esteban Ocon had yet another weekend to forget as he limped home to 13th place in his likely wounded Alpine.
Ocon was hit hard by Tsunoda and Mick Schumacher, as both drivers climbed over his front tyres, which led to their retirements.
It's hard to judge Ocon's true pace because his car would not have been at 100 percent following the impacts on the opening lap.
Lance Stroll 3.5/10
Started: 20th - Finished: 14th
Lance Stroll was set for a tough weekend because of his grid penalty for excessive power unit elements usage, but it was compounded by some clumsy mistakes.
In qualifying, he lost the car very late out of the final corner which put him into the wall to end his afternoon early.
On Sunday, he nearly hit the back of Norris on the race restart at Turn 4 and had an off-track battle with Ricciardo in the middle sector.
It was a very messy 24 hours for Stroll in Mexico City.
Valtteri Bottas 6/10
Started: 1st - Finished: 15th
It's tricky to rate Bottas because his pole position lap was outstanding. However, he threw it all away in the first 10 seconds of the race.
Why he didn't cover off Verstappen is puzzling. Bottas simply had to stay on the racing line, which would have boxed Verstappen in.
After being turned around at the start, Bottas' usual struggles of following and overtaking faster cars were highlighted.
He spent lap after lap behind Ricciardo, failing to make a fully committed move, so was unable to get anywhere near the points. It was frustrating to see.
Bottas had a golden opportunity on Sunday, and he didn't take it.
George Russell 6.5/10
Started: 16th - Finished: 16th
George Russell was another driver to benefit from the Turn 1 chaos, but he simply didn't have the car to fend off his midfield rivals.
The Williams machine particularly struggled with the altitude in Mexico City, so Russell was unable to put up a fight.
Nicholas Latifi 5.5/10
Started: 13th - Finished: 17th
It's a similar story for Nicholas Latifi, except the Canadian was some way off the pace of Russell in qualifying.
In the race, his pace was closer but he still trailed by the similar three-tenths margin he's faced all year.
Nikita Mazepin 4/10
Started: 15th - Finished: 18th
It's difficult to judge Nikita Mazepin's race because teammate Schumacher retired on the opening lap.
In qualifying, he was half a second slower and no clear comparisons can be made for his drive on Sunday.
Yuki Tsunoda 5/10
Started: 17th - Finished: DNF
Tsunoda was in the headlines post-qualifying for all of the wrong reasons, but the blame has to be predominantly on his engineer.
Nevertheless, it was still a mistake from Tsunoda to wander off the track at such a slow speed, though Red Bull's criticism was very harsh.
Tsunoda's race lasted just two corners as he tripped over Ocon. Looking at Gasly's pace, AlphaTauri could have had a double points finish at the Autodromo Hermanos Rodriguez.
Mick Schumacher 5.5/10
Started: 14th - Finished: DNF
Similarly to Tsunoda, it's impossible to say how much of an impact Schumacher could have had on Sunday.
Schumacher had some flying getaways in his F2 career, but a tardy start saw him get pinched on the inside by some cars, as he found himself with no room to go in between the stationary Bottas and the sandwiched Ocon.