STORY: With million of votes counted so far in Iran's snap presidential election, two candidates have emerged neck and neck - the sole moderate candidate, and a hardline conservative.

Electoral officials opened ballot boxes early Saturday, after polling ended midnight.

Preliminary results show moderate candidate Massoud Pezeshkian and his hardline challenger, former nuclear negotiator Saeed Jalili in the lead.

Pezeshkian, faithful to Iran's theocratic rule, has publicly criticized authorities over the death of Mahsa Amini.

She's an Iranian Kurdish woman who died in custody for allegedly violating Islamic dress code, and her death sparked mass unrest in Iran in 2022.

Jalili is a protege of Ayatollah Ali Khamenei, Iran's 85-year-old supreme leader.

A staunch anti-Westerner, analysts say him winning could signal an even more antagonistic turn in the Islamic Republic's foreign and domestic policy.

The election was sparked after the death of Ebrahim Raisi in a helicopter crash last month.

It comes as tensions spike in the Middle East due to the war in Gaza, and Iranians face a struggling economy and U.S. sanctions.

The end result of the vote is unlikely to alter Iran's backing for militant groups and its relations with the West.

But it could alter domestic policies, and may shape succession to Khamenei, who's been in power since 1989.

Public discontent, especially among Iran's youth, has kept voters away in recent elections.

Some insiders said the turnout was around 40%, lower than expected by Iran's clerical rulers.

In the past few weeks, Iranians have made wide use of the hashtag #ElectionCircus on X.

Some activists at home and abroad called for a boycott, saying a high turnout would only serve to legitimize the Islamic Republic.