Both Hamilton and Bottas went faster than the rest of the times by almost a second as Hamilton took the top spot with ten minutes to go.
Mercedes again topped Q2, as the two Renaults of Daniel Ricciardo and Esteban Ocon showed more promising form in fourth and fifth, as Ricciardo reported a brake-by-wire issue on his return to the pit lane.
Ricciardo eventually qualified in fourth with Alexander Albon finishing the session in fifth. Esteban Ocon qualified in sixth, with Carlos Sainz behind in seventh.
For the first time in 53 F1 races at Spa, Ferrari failed to reach the top ten, with Leclerc and Vettel qualifying thirteenth and fourteenth, ahead of the Williams of George Russell but behind both of the Alpha Tauri drivers.
Ricciardo managed to return in Q3 and went provisional third ahead of both Red Bulls. Bottas had a poor first run in the session, ending up over half a second down on Hamilton after an error going through La Source.
Bottas could not better his time on the second run and Hamilton took his 93rd pole position, while Ricciardo qualified in fourth for Renault, just behind former Red Bull teammate Verstappen.
The two Racing Points of Perez and Stroll will start eighth and ninth, as Lando Norris qualified in tenth for tomorrow's race.
Bahrain International Circuit - Winter testing