Brazilians are voting in a knife-edge presidential runoff between incumbent Luiz Inácio Lula da Silva and right-wing Senator Flávio Bolsonaro.

The poll pits the 80-year-old leftist leader against the 45-year-old son of imprisoned former President Jair Bolsonaro, who is serving a 27-year sentence for plotting a coup. Flávio Bolsonaro led the first round on 4 October with 47% of the vote to Lula’s 45%, but no candidate has ever overturned a first-round deficit in Brazil’s runoff history. Polls now show the two neck and neck, with each holding around 50% support.

Both candidates held massive rallies on the final day of campaigning. Tens of thousands of Lula supporters filled Copacabana beach in Rio de Janeiro, while Bolsonaro’s backers gathered in Belo Horizonte, a state critical to any presidential victory. Bolsonaro has campaigned on a tough-on-crime platform, pledging to designate major gangs as narcoterrorist organizations and build prisons for 500,000 inmates. He has also promised to seek amnesty for his father if elected.

Lula, seeking a fourth non-consecutive term, has framed the election as a battle for democracy, pointing to Jair Bolsonaro’s coup conviction as evidence of a threat to Brazil’s institutions. His government recently approved a six-day workweek and debt relief for small businesses, while promising free weekend public transport. Both candidates face corruption allegations: Bolsonaro is under investigation for accepting $12 million from a disgraced banker, while Lula’s past convictions were later annulled.

The runoff will determine whether Brazil, Latin America’s largest economy, remains under left-wing leadership or shifts rightward, aligning more closely with U.S. President Donald Trump. Bolsonaro has positioned himself as an ally of Trump, while Lula has criticized U.S. interference, stating Brazil “does not fit into anyone’s backyard.” Over 33 million voters abstained in the first round, leaving the outcome uncertain.