The German four time world champion struggled in earlier qualifying rounds but his Ferrari recorded a time of 1 min 39.491 seconds at the Marina Bay street circuit to finish ahead of Red Bull's Max Verstappen and Daniel Ricciardo.
Vettel's stablemate, Kimi Raikkonen, will start fourth and championship leader Lewis Hamilton will begin the race in fifth place.
"Friday was difficult. Saturday was difficult but then the car just came alive," said Vettel, who trails Hamilton by three points after 13 of the season's 20 races.
Qualifying has often been crucial in Singapore, where seven of the nine races have been won by the driver who started from pole. "I knew we had it in us," Vettel added. "It was a bit of a struggle to get there but I'm happy."
Hamilton admitted he was surprised at Vettel's pace. "We knew it would be tough but I didn't anticipate Ferrari would be as strong as they were," said the Mercedes driver. "I thought Red Bull would be as quick as they were."
Hamilton, who is seeking a fourth world title, added: "The team remains hopeful. I got everything I could out of the car. I gave it everything and more. I threw the sink at it and squeezed every bit of it."