In the hotly contested seat of Bukit Selambau, PKR's S. Manikumar, 55, defeated BN's S. Ganesan, with a 2,396-vote majority. He polled 12,632 votes against Ganesan's 10,229.
The Bukit Selambau by-election created a record for having the most number of candidates – 15 altogther, 13 of them independents.
All the independent candidates - including Major (Rtd) Anuar Abd Hamid who secured the highest votes (528) among them - lost their deposits.
In Bukit Gantang, Pakatan retained the parliamentary seat when Pas's Nizar Jamaluddin, defeated BN candidate Ismail Saffian with a 2,789-majority.
The 52-year-old former Menteri Besar, who was unceremoniously and controversially "kicked out" of office, garnered 21,860 votes while Ismail obtained 19,071 votes. The third candidate Kamarul Ramizu only managed to secure 62 votes and lost his deposit.
Pas mproved its vote count by 1,845 votes compared with the 20,015 votes it garnered in 2008.
In Batang Ai, th BN retained the state seat after its candidate, Malcolm Mussen Lamoh, won with a 1,854-vote majority.
Newcomer Mussen, a former engineer with the Sarawak Agriculture Department, garnered 3,907 votes to defeat veteran politician Jawah Gerang, the former five-term Lubok Antu Member of Parliament, who obtained 2,053 votes, in a straight fight.
Malaysiakini live report
Counting of votes for the the Bukit Gantang, Bukit Selambau and Batang Ai by-elections began at 5.30pm and results are expected after 10pm. However, counting for some ballot boxes in Batang Ai started at 3pm.
9.20pm Bukit Gantang OFFICIAL RESULTS
Mohd Jamaluddin Nizar (PAS) 21,860
Ismail Saffian (BN-Umno) 19,071
Kamarul Ramizu Idris (Ind) 62
Majority - 2,789 (In 2008, the majority was 1,566)8.58pm Manikumar wins Bukit Selambau
With all 22 polling boxes counted, Manikumar retained the seat for PKR by winning with a 2,396-vote majority, a slightly higher margin than in the 2008 general elections.
8.50pm UNOFFICIAL PKR retains Bukit Selambau - PKR's Manikumar wins the seat to retain the status quo in the state assembly.
With only one more polling box to be counted, Manikumar is leading with a 2,092-vote majority. He has been leading in this race from the time the first box was counted.
8.50pm UNOFFICIAL PAS wins Bukit Gantang PAS 20,021, BN 17,076, Independent 56. Majority 2,945.
PAS Mohd Nizar Jamaluddin leaves the party’s operation centre in Air Kuning in an open hatch SUV, and waves to supporters as if he has just won the US presidential race.
8.37pm Bukit Gantang Unofficial results PAS 18,881, BN 15,859, Independent 51. Majority 3,022.
PAS appeared to have an almost unassailable lead with 83.46% of the votes counted and is likely to win this by-election with an increased majority.8.15pm Bukit Gantang Unofficial results PAS 16,316, BN 14,061, Independent 40. Majority 2,255.
So far, 64 percent of the votes cast have been tallied.
8.10pm Bukit Selambau Unofficial Results PKR's Manikumar is headed for a big victory. With 17 polling stations counted, he has 2,311 votes. There are only five more centres to go.
In the last general election, V Arumugam got 2,362-vote majority.
Meanwhile, the MIC operations centre in Sungai Petani is deserted with all party supporters gone.
7.50pm Batang Ai OFFICIAL RESULTS
BN's Malcolm Mussem Lamoh (3,907 votes) has beaten PKR's Jawah Gerang (1,854). The majority is 2,053.
7.40pm Bukit Gantang Unofficial results PAS 14,720, BN 12,142, Independent 32. Majority 2,577.
More than half of the votes cast have been tallied.
PAS deputy president Nasharuddin Mat Isa said, "As for now, we're heading towards a landslide victory."
The Islamic party has won Kuala Sepetang, the fishing village which is 97 per cent Chinese. This is the area where BN stirred a controversy over a team of go-go girls performing at its campaign dinner.7.39pm Bukit Selambau Unofficial Results PKR is leading by 1,080 votes after 10 polling stations have been counted. There are 12 more polling stations left.
7.39pm Batang Air Unofficial results - the final unofficial tally:BN 3,450, PKR 1,790. Majority 1,660
7.27pm Bukit Selambau Unofficial Results With eight polling stations counted, PKR is leading by 1,225 votes. These eight polling areas consist largely of Indian and Chinese voters. There are 14 more polling stations to be counted.
7.25pm Bukit Gantang Unofficial results PAS 11,375, BN 8,998, Independent 29. Majority 2,377.
7.20pm Bukit Gantang Unofficial results PAS 9,423, BN 6,997, Independent 25. Majority 2,426.
About 40 percent of the 41,000 votes have so far been counted.
PAS candidate Mohd Nizar Jamaluddin and wife, Perak speaker V Sivakumar and Bukit Bendera MP Liew Chin Tong, Gopeng MP and PKR VP Lee Boon Chai are at the PAS operation centre.
7.13pm Bukit Selambau Unofficial results After counting five out of 22 polling centres, PKR's Manikumar is leading by 937 votes.
7.10pm Bukit Gantang Unofficial results PAS 8,932, BN 6,584, Independent 24. Majority 2,348.7.01pm Bukit Selambau Unofficial results After counting four streams of out 64, PKR's S Manikumar is leading by 578 votes.
7pm Bukit Gantang Unofficial results PAS' Mohd Nizar Jamaluddin has increased his lead over BN-Umno's Ismail Saffain. PAS 7,294, BN 4,670, Independent 17. Majority 2,624.
PAS 7,294, BN 4,670, Independent 17. Majority 2,624.
There is an electric atmosphere in PAS operations centre when the party won big in Changkat Ibol voting district - a PAS stronghold.
6.50pm Bukit Selambau It is a tight race here, admits a MIC leader.6.44pm Bukit Gantang Unofficial results PAS 4,929, BN 3,161, Independent 9. Majority 1,768.
6.25pm Batang Ai UNOFFICIAL: BN wins Batang Ai. It is leading with an unassailable majority of 1,600 after 21 of 24 boxes have been counted.
5pm POLLING CLOSES in Bukit Gantang, Bukit Selambau and Batang Ai. Counting of votes for the two Bukits is expected to commence at 5.30pm. For Batang Ai, counting started at 3pm.