The Electoral Commission of Kenya (ECK) announced at 2am local time (2300GMT) that Odinga had 1,884,096 votes in 80 of the country’s 210 constituencies.
This compares with 1,516,259 votes for Mwai Kibaki, the incumbent president.
Kenya Television Network, a private channel, reported that with nearly half the results counted, Odinga had accumulated 50 per cent of the vote, bettering Kibaki’s 42 per cent.
Kenya, east Africa’s largest economy, has more than 14 million registered voters.
Kihara Muttu, the ECK vice-chairman, said: “The turnout per constituency has been ranging between 60 and 70 per cent and even 80 per cent in some cases. The average will be within that range.”
Muttu said that he could not provide an accurate turnout figure.
Andrew Simmons, Al Jazeera’s correspondent in Kenya, said: “It’s very close. Kibaki could gain in his heartland results that are literally trickling through.
“The majority of Kenyans are glued to television sets and their radio sets, monitoring the results as they come in.
“There has been isolated violent incidents [and] allegations of vote fixing by both the main opposition party the ODM and also from the ruling party the PNU.
“But it does not appear that there has been widespread rigging. Observers are saying on the whole the election was free and fair. But it is not over yet.”
Analysts had said that voting along tribal lines could mean results differing from early predictions.
Delays to vote counting had raised suspicions of fraud and civil society groups complained that the ECK was “moving at a snails pace”. A winner had been expected to be announced on Friday.
The ECK denied any wrongdoing, saying the hold ups were due to the high turnout, which it said was likely to be the highest in Kenya’s history, and minor logistical problems.