Skip to content
Next Indonesia: national election expected Feb 2029 Preview →

✶ Results · Pemilu 2024 · 14 February 2024

One round,
five counts.

The KPU declared the result on 20 March 2024: 164.227.475 valid votes for President, 151.793.293 for the DPR, counted by hand at 820.161 polling stations in Indonesia and recapitulated level by level. These are the official figures, after the Constitutional Court's rulings.

Live feed · checking…

Next national election: 2029 · not yet scheduled; the KPU fixes polling day by decree. No election-night countdown until it does.

President and Vice-President · PPWP

58,59%
in the first round.

The tick is 50%. A pair is elected in the first round with more than half the valid votes and at least 20% in more than half the provinces (UUD 1945 art. 6A(3)); Prabowo–Gibran had at least 20% in 38 of 38. Turnout 81,48% (168.401.599 of 204.422.181 electors, KPU decree 1043/2024). Invalid ballots are not in the decree's text and are not shown. Abroad: 671.366 valid votes.

Timor-LesteSingaporePhilippinesPapua New GuineaMalaysiaBruneiAustraliaAustralia Aceh Anies–Muhaimin 73,6% · Prabowo–Gibran 24,4% · Ganjar–Mahfud 2,0% 3.221.235 valid votes · turnout 87,0% Bali Prabowo–Gibran 54,3% · Ganjar–Mahfud 42,0% · Anies–Muhaimin 3,7% 2.681.007 valid votes · turnout 83,3% Banten Prabowo–Gibran 56,0% · Anies–Muhaimin 34,0% · Ganjar–Mahfud 10,0% 7.206.710 valid votes · turnout 83,1% Bengkulu Prabowo–Gibran 70,4% · Anies–Muhaimin 18,1% · Ganjar–Mahfud 11,5% 1.268.750 valid votes · turnout 85,9% Daerah Istimewa Yogyakarta Prabowo–Gibran 50,6% · Ganjar–Mahfud 29,6% · Anies–Muhaimin 19,8% 2.506.765 valid votes · turnout 88,9% DKI Jakarta Prabowo–Gibran 41,7% · Anies–Muhaimin 41,1% · Ganjar–Mahfud 17,3% 6.460.911 valid votes · turnout 78,8% Gorontalo Prabowo–Gibran 65,2% · Anies–Muhaimin 29,4% · Ganjar–Mahfud 5,4% 773.524 valid votes · turnout 88,3% Jambi Prabowo–Gibran 65,2% · Anies–Muhaimin 24,1% · Ganjar–Mahfud 10,6% 2.205.808 valid votes · turnout 83,0% Jawa Barat Prabowo–Gibran 58,5% · Anies–Muhaimin 31,7% · Ganjar–Mahfud 9,8% 28.726.523 valid votes · turnout 81,7% Jawa Tengah Prabowo–Gibran 53,1% · Ganjar–Mahfud 34,3% · Anies–Muhaimin 12,6% 22.790.162 valid votes · turnout 82,6% Jawa Timur Prabowo–Gibran 65,2% · Anies–Muhaimin 17,5% · Ganjar–Mahfud 17,3% 25.644.060 valid votes · turnout 84,1% Kalimantan Barat Prabowo–Gibran 61,1% · Anies–Muhaimin 22,3% · Ganjar–Mahfud 16,6% 3.217.274 valid votes · turnout 82,0% Kalimantan Selatan Prabowo–Gibran 58,2% · Anies–Muhaimin 35,2% · Ganjar–Mahfud 6,6% 2.417.582 valid votes · turnout 83,0% Kalimantan Tengah Prabowo–Gibran 72,5% · Anies–Muhaimin 17,0% · Ganjar–Mahfud 10,5% 1.512.669 valid votes · turnout 78,6% Kalimantan Timur Prabowo–Gibran 69,1% · Anies–Muhaimin 20,1% · Ganjar–Mahfud 10,8% 2.230.535 valid votes · turnout 79,8% Kalimantan Utara Prabowo–Gibran 69,7% · Anies–Muhaimin 17,7% · Ganjar–Mahfud 12,6% 407.725 valid votes · turnout 79,5% Kepulauan Bangka Belitung Prabowo–Gibran 59,9% · Anies–Muhaimin 23,1% · Ganjar–Mahfud 17,1% 885.340 valid votes · turnout 84,8% Kepulauan Riau Prabowo–Gibran 55,6% · Anies–Muhaimin 32,2% · Ganjar–Mahfud 12,2% 1.152.792 valid votes · turnout 76,3% Lampung Prabowo–Gibran 69,5% · Anies–Muhaimin 15,5% · Ganjar–Mahfud 15,0% 5.110.688 valid votes · turnout 78,8% Maluku Prabowo–Gibran 61,6% · Anies–Muhaimin 21,2% · Ganjar–Mahfud 17,3% 1.080.323 valid votes · turnout 79,8% Maluku Utara Prabowo–Gibran 60,9% · Anies–Muhaimin 26,8% · Ganjar–Mahfud 12,2% 746.695 valid votes · turnout 77,5% Nusa Tenggara Barat Prabowo–Gibran 66,4% · Anies–Muhaimin 26,2% · Ganjar–Mahfud 7,4% 3.246.488 valid votes · turnout 83,6% Nusa Tenggara Timur Prabowo–Gibran 61,8% · Ganjar–Mahfud 32,9% · Anies–Muhaimin 5,3% 2.910.704 valid votes · turnout 72,7% Riau Prabowo–Gibran 52,4% · Anies–Muhaimin 38,0% · Ganjar–Mahfud 9,7% 3.688.504 valid votes · turnout 77,6% Sulawesi Barat Prabowo–Gibran 65,1% · Anies–Muhaimin 27,2% · Ganjar–Mahfud 7,6% 819.424 valid votes · turnout 80,7% Sulawesi Selatan Prabowo–Gibran 57,0% · Anies–Muhaimin 37,9% · Ganjar–Mahfud 5,0% 5.279.755 valid votes · turnout 79,5% Sulawesi Tengah Prabowo–Gibran 69,6% · Anies–Muhaimin 21,5% · Ganjar–Mahfud 8,9% 1.798.650 valid votes · turnout 80,1% Sulawesi Tenggara Prabowo–Gibran 71,1% · Anies–Muhaimin 23,1% · Ganjar–Mahfud 5,8% 1.565.656 valid votes · turnout 83,8% Sulawesi Utara Prabowo–Gibran 75,3% · Ganjar–Mahfud 17,4% · Anies–Muhaimin 7,3% 1.631.968 valid votes · turnout 82,7% Sumatera Barat Anies–Muhaimin 56,5% · Prabowo–Gibran 39,5% · Ganjar–Mahfud 4,0% 3.085.400 valid votes · turnout 75,7% Sumatera Selatan Prabowo–Gibran 69,5% · Anies–Muhaimin 19,0% · Ganjar–Mahfud 11,5% 5.253.631 valid votes · turnout 84,8% Sumatera Utara Prabowo–Gibran 58,3% · Anies–Muhaimin 29,2% · Ganjar–Mahfud 12,5% 7.999.556 valid votes · turnout 74,0% Papua Selatan Prabowo–Gibran 51,7% · Ganjar–Mahfud 34,9% · Anies–Muhaimin 13,3% 314.761 valid votes · turnout 84,6% Papua Prabowo–Gibran 60,6% · Ganjar–Mahfud 28,6% · Anies–Muhaimin 10,8% 625.034 valid votes · turnout 91,3% Papua Tengah Prabowo–Gibran 57,9% · Ganjar–Mahfud 30,4% · Anies–Muhaimin 11,7% 1.102.282 valid votes · turnout 100,0% Papua Barat Prabowo–Gibran 52,3% · Ganjar–Mahfud 36,4% · Anies–Muhaimin 11,3% 330.989 valid votes · turnout 84,5% Papua Pegunungan Prabowo–Gibran 64,6% · Anies–Muhaimin 21,9% · Ganjar–Mahfud 13,6% 1.298.522 valid votes · turnout 100,0% Papua Barat Daya Prabowo–Gibran 58,5% · Ganjar–Mahfud 27,9% · Anies–Muhaimin 13,5% 357.707 valid votes · turnout 81,4% DKI Jakarta Prabowo–Gibran 41,7% · Anies–Muhaimin 41,1% · Ganjar–Mahfud 17,3% 6.460.911 valid votes · turnout 78,8% Daerah Istimewa Yogyakarta Prabowo–Gibran 50,6% · Ganjar–Mahfud 29,6% · Anies–Muhaimin 19,8% 2.506.765 valid votes · turnout 88,9% Bali Prabowo–Gibran 54,3% · Ganjar–Mahfud 42,0% · Anies–Muhaimin 3,7% 2.681.007 valid votes · turnout 83,3% Kepulauan Bangka Belitung Prabowo–Gibran 59,9% · Anies–Muhaimin 23,1% · Ganjar–Mahfud 17,1% 885.340 valid votes · turnout 84,8% Kepulauan Riau Prabowo–Gibran 55,6% · Anies–Muhaimin 32,2% · Ganjar–Mahfud 12,2% 1.152.792 valid votes · turnout 76,3%
  • Anies–Muhaimin (2)
  • Prabowo–Gibran (36)
  • Ganjar–Mahfud (0)

Leading pair by province · deeper colour = bigger share · tap or hover a province

Boundaries: geoBoundaries (OCHA ROAP / BPS, CC BY 3.0 IGO); Papua's 2022 provinces drawn from their regencies. Neighbours: Natural Earth. Indonesia's internationally recognised borders; neighbours in grey.

Presidential result by province; select a column heading to sort
Jawa BaratJava 31,7%58,5%9,8% 28.726.523 81,7%
Jawa TimurJava 17,5%65,2%17,3% 25.644.060 84,1%
Jawa TengahJava 12,6%53,1%34,3% 22.790.162 82,6%
Sumatera UtaraSumatra 29,2%58,3%12,5% 7.999.556 74,0%
BantenJava 34,0%56,0%10,0% 7.206.710 83,1%
DKI JakartaJava 41,1%41,7%17,3% 6.460.911 78,8%
Sulawesi SelatanSulawesi 37,9%57,0%5,0% 5.279.755 79,5%
Sumatera SelatanSumatra 19,0%69,5%11,5% 5.253.631 84,8%
LampungSumatra 15,5%69,5%15,0% 5.110.688 78,8%
RiauSumatra 38,0%52,4%9,7% 3.688.504 77,6%
Nusa Tenggara BaratLesser Sunda Islands 26,2%66,4%7,4% 3.246.488 83,6%
AcehSumatra 73,6%24,4%2,0% 3.221.235 87,0%
Kalimantan BaratKalimantan 22,3%61,1%16,6% 3.217.274 82,0%
Sumatera BaratSumatra 56,5%39,5%4,0% 3.085.400 75,7%
Nusa Tenggara TimurLesser Sunda Islands 5,3%61,8%32,9% 2.910.704 72,7%
BaliLesser Sunda Islands 3,7%54,3%42,0% 2.681.007 83,3%
Daerah Istimewa YogyakartaJava 19,8%50,6%29,6% 2.506.765 88,9%
Kalimantan SelatanKalimantan 35,2%58,2%6,6% 2.417.582 83,0%
Kalimantan TimurKalimantan 20,1%69,1%10,8% 2.230.535 79,8%
JambiSumatra 24,1%65,2%10,6% 2.205.808 83,0%
Sulawesi TengahSulawesi 21,5%69,6%8,9% 1.798.650 80,1%
Sulawesi UtaraSulawesi 7,3%75,3%17,4% 1.631.968 82,7%
Sulawesi TenggaraSulawesi 23,1%71,1%5,8% 1.565.656 83,8%
Kalimantan TengahKalimantan 17,0%72,5%10,5% 1.512.669 78,6%
Papua PegununganPapua 21,9%64,6%13,6% 1.298.522 100,0%
BengkuluSumatra 18,1%70,4%11,5% 1.268.750 85,9%
Kepulauan RiauSumatra 32,2%55,6%12,2% 1.152.792 76,3%
Papua TengahPapua 11,7%57,9%30,4% 1.102.282 100,0%
MalukuMaluku 21,2%61,6%17,3% 1.080.323 79,8%
Kepulauan Bangka BelitungSumatra 23,1%59,9%17,1% 885.340 84,8%
Sulawesi BaratSulawesi 27,2%65,1%7,6% 819.424 80,7%
GorontaloSulawesi 29,4%65,2%5,4% 773.524 88,3%
Maluku UtaraMaluku 26,8%60,9%12,2% 746.695 77,5%
Abroad 18,6%63,7%17,6% 671.366 43,8%
PapuaPapua 10,8%60,6%28,6% 625.034 91,3%
Kalimantan UtaraKalimantan 17,7%69,7%12,6% 407.725 79,5%
Papua Barat DayaPapua 13,5%58,5%27,9% 357.707 81,4%
Papua BaratPapua 11,3%52,3%36,4% 330.989 84,5%
Papua SelatanPapua 13,3%51,7%34,9% 314.761 84,6%

Source: KPU decree 360/2024, annex I ↗; turnout: decree 1043/2024 ↗.

House of Representatives · DPR RI · 580 seats

Eighteen parties,
eight over 4%.

No. Party Votes Share Bar Seats
3 PDI-PPartai Demokrasi Indonesia Perjuangan 25.384.673 16,72% 110
4 GolkarPartai Golongan Karya 23.208.488 15,29% 102
2 GerindraPartai Gerakan Indonesia Raya 20.071.345 13,22% 86
1 PKBPartai Kebangkitan Bangsa 16.115.358 10,62% 68
5 NasDemPartai NasDem 14.660.328 9,66% 69
8 PKSPartai Keadilan Sejahtera 12.781.241 8,42% 53
14 DemokratPartai Demokrat 11.283.053 7,43% 44
12 PANPartai Amanat Nasional 10.984.639 7,24% 48
17 PPPPartai Persatuan Pembangunan 5.878.708 3,87% —
15 PSIPartai Solidaritas Indonesia 4.260.108 2,81% —
16 PerindoPartai Persatuan Indonesia 1.955.131 1,29% —
7 GeloraPartai Gelombang Rakyat Indonesia 1.282.000 0,84% —
10 HanuraPartai Hati Nurani Rakyat 1.094.599 0,72% —
6 BuruhPartai Buruh 972.898 0,64% —
24 UmmatPartai Ummat 642.550 0,42% —
13 PBBPartai Bulan Bintang 484.487 0,32% —
11 GarudaPartai Garda Republik Indonesia 406.884 0,27% —
9 PKNPartai Kebangkitan Nusantara 326.803 0,22% —
PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 PDI-P · 110 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Golkar · 102 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 Gerindra · 86 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 NasDem · 69 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKB · 68 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PKS · 53 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 PAN · 48 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44 Demokrat · 44
291 of 580 for a majority

The tick in each bar is the threshold: 4% of the national valid vote, 6.071.732 votes (UU 7/2017 art. 414). Below it a party wins no DPR seat anywhere, though its candidates can still win provincial and local assembly seats, which have no threshold (art. 414(2)). 17.304.168 votes (11,4%) were lost this way, PPP's 5.878.708 closest to the line. Seats are then shared in each of the 84 districts by Sainte-Laguë (divisors 1, 3, 5 …) and go to the candidates with the most personal votes on each party's list. Rerun it in the seat lab →

Votes: KPU decree 1204/2024 ↗; seats: decree 1205/2024 ↗. Parties under the threshold are as in decree 360/2024. Turnout 81,14%.

Regional Representative Council · DPD RI · 152 seats

Four per province,
no parties.

Each province elects four senators, whatever its size. Candidates stand as individuals — party officials may not — and every voter punches one name; the four with the most votes win (UU 7/2017 art. 196). In 2024, 669 ran for the 152 seats.

The strongest personal vote: Sudirman Haji Uma in Aceh, with 36,1% of the province's valid votes. Turnout 81,50%; voters abroad have no DPD ballot.

DKI Jakarta · 25 candidates · 5.613.949 valid votes

  1. 1 Fahira IdrisNo. 9 · elected 13,3%
  2. 2 Happy DjarotNo. 10 · elected 11,7%
  3. 3 Dailami FirdausNo. 6 · elected 10,9%
  4. 4 Achmad AzranNo. 1 · elected 8,1%
  5. 5 Sylviana MurniNo. 22 · reserve 1 7,8%
  6. 6 Madani B. H. MadaliNo. 12 · reserve 2 5,6%

Names as in KPU decree 1207/2024 ↗, without academic titles. Reserves (calon pengganti) fill a seat that falls vacant.

Quick counts · hitung cepat

Nothing before
15.00 WIB.

Polls close at 13.00 local time — first in Papua (WIT), last in Sumatra, Java and western Kalimantan (WIB). Quick counts may be published only from two hours after the last stations close in western Indonesia: 15.00 WIB, which is 16.00 WITA and 17.00 WIT.

The rule is UU 7/2017 art. 449(5), with a prison term for breaking it (art. 540(2)); the Constitutional Court upheld it in 2019. No survey results at all may be published in the three-day quiet period before polling day (art. 449(2)). This site applies both in code: on a polling day, until 15.00 WIB, this page and /api/id/live carry only the last official result.

Try the rule on any date →
  1. 07.00Polls open at 07.00 local time: in Papua that is 05.00 WIB, in Sumatra two hours later.
  2. 13.00 WITPapua and Maluku close (11.00 WIB).
  3. 13.00 WITABali, Nusa Tenggara, Sulawesi and eastern Kalimantan close (12.00 WIB).
  4. 13.00 WIBThe last stations close, in Sumatra, Java and western Kalimantan. Counting begins.
  5. 15.00 WIBQuick counts may be published.

How the count works · rekapitulasi berjenjang

By hand, in public,
level by level.

  1. 1 TPS · KPPS · 7 members

    Count at the polling station

    From 13.00 local time each ballot is opened, shown to the witnesses and read out; the KPPS tallies all five on large plano sheets (C.Hasil) the same day, and witnesses get copies (C.Salinan).

  2. 2 Sirekap · KPPS → KPU

    Photo of the sheet, online

    The KPPS photographs each C.Hasil sheet into KPU's Sirekap app, which publishes the image and the numbers read from it. A transparency tool, not the result: misread digits in 2024 had to be corrected by hand.

  3. 3 PPK · Panitia Pemilihan Kecamatan

    District recapitulation

    The sub-district committee (kecamatan) adds up its stations' sheets in a public meeting, with witnesses and Bawaslu present.

  4. 4 Kab/Kota · KPU Kabupaten/Kota

    Regency or city

    The regency/city KPU adds up its districts, and fixes the result of its own DPRD election.

  5. 5 Provinsi · KPU Provinsi

    Province

    The provincial KPU adds up its regencies and cities; DPD and provincial-assembly results are settled here.

  6. 6 Nasional · KPU RI

    National result

    The KPU in Jakarta adds up the provinces and the votes abroad. It declared the 2024 result on 20 March 2024, 35 days after polling day; disputes then go to the Constitutional Court.

Forms and levels as in PKPU 25/2023 (counting at the TPS, art. 52–53) and UU 7/2017. Sirekap's numbers are machine-read from photos and were never the legal result. How a ballot is judged valid →