While the economy has stabilised, many people are suffering as a result of austerity measures backed by the IMF.
Sri Lankans have begun voting in their first election since the collapse of the economy triggered mass protests that prompted then-President Gotabaya Rajapaksa to flee the country.
Polling stations opened at 7am (01:30 GMT) on Saturday in a poll widely seen as a referendum on his successor Ranil Wickremesinghe, who has restored some stability through austerity policies backed by the International Monetary Fund (IMF).
The measures, including tax hikes, have left millions struggling to make ends meet and are unpopular with many voters.
Wickremesinghe, who is expected to lose to one of his two rivals, was unrepentant as he addressed his final campaign rally in Colombo.
“We must continue with reforms to end bankruptcy,” 75-year-old Wickremesinghe, a veteran politician who has been prime minister multiple times, told his final rally in Colombo this week.
“Decide if you want to go back to the period of terror, or progress.”
The economic crisis has boosted support for Anura Kumara Dissanayake, the leader of the Janatha Vimukthi Peramuna (JVP), despite his party’s violent past. The 55-year-old has promised to change the island’s “corrupt” political culture.
Fellow opposition leader Sajith Premadasa, the son of a former president assassinated in 1993 during the country’s decades-long civil war, is also expected to make a strong showing.
“There is a significant number of voters trying to send a strong message … that they are very disappointed with the way this country has been governed,” Murtaza Jafferjee of think tank Advocata told the AFP news agency.
About 17 million Sri Lankans are eligible to vote and will rank three candidates in order of preference on the ballot paper. A record 38 candidates are vying for the presidency.
Thousands of police have been deployed to polling stations in a country that has a history of political violence.
Polls close at at 4pm (10:30 GMT) with counting expected to start about three and half hours later.
A result is expected on Sunday.