Canada's ruling Liberals will form the country's next government, the Canadian Broadcasting Corp projects, but says it is too early to say whether Prime Minister Justin Trudeau has won a majority.
The centre-left Liberals, who entered the race with a big lead in opinion polls, were ahead in 139 of the 338 seats in Canada's House of Commons, the country's elected chamber of parliament.
Many votes remained still to be counted.
Trudeau heads a minority government that relies on the support of other parties to pass legislation. He called an election two years early in hopes of securing a parliamentary majority.
But as the public's unhappiness about the early call grew, the 49-year-old prime minister saw his lead evaporate. Liberal strategists now concede it will be hard for the party to win a majority of the House of Commons' 338 seats.
Polls closed at 9.30pm EDT in all other provinces and territories except British Columbia and Yukon. The two most-populous provinces, Ontario and Quebec, have 199 seats, or more than half of the national total.
A delay in counting mail-in votes could hold up results in tight races.
Elections Canada will not start counting roughly 800,000 mail-in ballots until Tuesday, after it is able to verify them against in-person votes. Those could help determine the outcome in at least two Atlantic districts and many more across Canada.
Trudeau, a charismatic progressive and son of former Liberal Prime Minister Pierre Trudeau, swept to power in 2015. But the Liberals dropped to a minority in 2019 after Trudeau was damaged in part by disclosures that he had worn blackface years ago.
Amid a fourth wave of Covid-19, Trudeau backs vaccine mandates, while O'Toole, 48, opposes them and prefers a combination of voluntary vaccinations and rapid testing to stop the virus' spread.
After voting in downtown Montreal, Jonathan Goldbloom and his 95-year-old mother, Sheila Goldbloom, said they supported Trudeau's handling of the pandemic.
"He showed great leadership on the file and he's the one who said that everyone needs to get vaccinated. I don't feel that the Tories have been consistent in that message," Jonathan Goldbloom said, using another term for Conservatives.
Wayne Boone, who was walking over to vote in Ottawa, said he supports O'Toole's Conservatives for their fiscal restraint.
"And I'm not very happy with Pierre Jr. - as I call him - Justin Trudeau, because he tends to just spend money that we will never have," Boone said.