Final result · Two-layer record

2023 Nigerian presidential election result

INEC declared Bola Ahmed Tinubu of the APC the winner with 8,794,726 votes. Atiku Abubakar's PDP placed second with 6,984,520; the declared margin between the leading parties was 1,810,206 votes. Mundx keeps that official national declaration separate from its polling-unit research rollup.

Election date
25 February 2023
Declared winner
Bola Ahmed Tinubu · APC
Declared valid votes
24,025,940
Source authority
A- · very high confidence

Official result: the EC8D(A) national declaration. Research layer: a four-party PU aggregation that is useful for inspection but cannot replace the declaration.

National reconciliation

Declared collation beside the PU rollup

The comparison covers APC, LP, PDP and NNPP. The declared four-party total is 23,377,466; Mundx's PU layer totals 20,758,471, or 88.8% of it.

Official national declaration compared with Mundx canonical polling-unit aggregation
Party / scopeDeclared collationPU rollupDeclared minus PUPU as % declared
APC8,794,7267,822,259+972,46788.9%
LP6,101,5335,522,336+579,19790.5%
PDP6,984,5205,886,693+1,097,82784.3%
NNPP1,496,6871,527,183-30,496102.0%
Four-party total23,377,46620,758,471+2,618,99588.8%
Read the delta as a diagnostic, not an error count. Official minus PU equals 2,618,995 across these four parties. The layers can differ because declarations incorporate the collation process, while the PU dataset is source-selected, four-party-only and incomplete in 437 inventory units.

Federal view

All 36 states and the FCT

Each row compares the reproduced EC8D state collation with the canonical PU aggregation. A change in leader between columns means the two data layers rank the four listed parties differently; it does not revise the declared outcome.

Declared and canonical four-party totals by state and FCT
JurisdictionDeclared leaderPU leaderDeclared four-partyPU four-partyDeclared minus PU
Abia
Open contest record
LPLP359,924565,779-205,855
Adamawa
Open contest record
PDPPDP714,146670,900+43,246
Akwa Ibom
Open contest record
PDPPDP515,111504,355+10,756
Anambra
Open contest record
LPLP600,735470,570+130,165
Bauchi
Open contest record
PDPPDP842,777790,024+52,753
Bayelsa
Open contest record
PDPPDP161,905164,752-2,847
Benue
Open contest record
APCAPC753,661663,926+89,735
Borno
Open contest record
APCAPC455,034418,582+36,452
Cross River
Open contest record
LPLP407,506398,692+8,814
Delta
Open contest record
LPLP596,771528,083+68,688
Ebonyi
Open contest record
LPLP317,304303,806+13,498
Edo
Open contest record
LPLP567,962542,877+25,085
Ekiti
Open contest record
APCAPC302,709285,098+17,611
Enugu
Open contest record
LPLP450,969436,607+14,362
FCT
Open contest record
LPLP451,330431,764+19,566
Gombe
Open contest record
PDPAPC502,780188,797+313,983
Imo
Open contest record
LPLP458,687381,497+77,190
Jigawa
Open contest record
APCAPC908,100730,360+177,740
Kaduna
Open contest record
PDPPDP1,341,1161,155,439+185,677
Kano
Open contest record
NNPPNNPP1,674,8491,260,390+414,459
Katsina
Open contest record
PDPAPC1,047,090940,043+107,047
Kebbi
Open contest record
PDPPDP548,983479,960+69,023
Kogi
Open contest record
APCAPC446,310404,340+41,970
Kwara
Open contest record
APCAPC434,788418,408+16,380
Lagos
Open contest record
LPLP1,239,2521,203,034+36,218
Nasarawa
Open contest record
LPLP524,091484,058+40,033
Niger
Open contest record
APCAPC762,369723,063+39,306
Ogun
Open contest record
APCAPC553,414497,796+55,618
Ondo
Open contest record
APCAPC533,667493,916+39,751
Osun
Open contest record
PDPPDP722,307648,612+73,695
Oyo
Open contest record
APCAPC736,066618,189+117,877
Plateau
Open contest record
LPLP1,026,144954,384+71,760
Rivers
Open contest record
APCLP496,452450,410+46,042
Sokoto
Open contest record
PDPAPC581,991495,073+86,918
Taraba
Open contest record
PDPPDP483,315395,527+87,788
Yobe
Open contest record
PDPPDP370,702316,971+53,731
Zamfara
Open contest record
APCAPC498,078342,389+155,689

How to interpret this record

The declaration remains the result of record

EC8D(A)

National declaration

INEC's national collation records 24,025,940 valid votes, including 648,474 for the other fourteen parties outside this four-party comparison. Adding 939,278 rejected ballots gives 24,965,218 votes cast.

PU layer

Evidence below collation

The canonical aggregation represents 176,409 of 176,846 inventory units. It helps readers examine local patterns and source coverage, but “canonical” describes Mundx's selection policy, not independent authentication by INEC.

Kano caveat

A retained transfer difference

Kano's state EC8D row records APC at 517,341, while the national EC8D(A) carries 506,412. Mundx retains both figures and the documented 10,929 difference instead of silently forcing the state rows to match.

Questions this page answers

National result notes

Who won the 2023 presidential election?

INEC declared Bola Ahmed Tinubu of the APC the winner. The four declared party totals shown here are APC 8,794,726, PDP 6,984,520, LP 6,101,533 and NNPP 1,496,687. They are a subset of the complete eighteen-party result.

Why is NNPP's PU sum higher?

The canonical NNPP aggregation is 1,527,183, 30,496 above the declared total. That illustrates why the PU layer is not a substitute declaration: public observations, selection, transcription and later collation decisions are different stages.

Can the tables be added together?

No. Do not combine declared and PU columns. They describe the same election at different evidence layers. Use the declared column for the result of record, and the PU column for coverage-aware research into the public records that Mundx selected.

Where should a claim be cited?

Cite this permanent contest URL for the national declaration and its comparison. Cite a state or LGA contest page when the claim is local, and include the layer name, election year and review date so readers can reproduce the interpretation.

Provenance

What is official, and what Mundx calculated

The declared layer comes from INEC's result collection and a contemporaneous reproduction of the collation table. It is a collation product, not a sum recreated by Mundx.

Mundx's second layer is a four-party aggregation of selected polling-unit observations. It applies policy all-complete-ccij-first-v1: complete CCIJ records take precedence, then complete Mark Essien records fill remaining units.

Canonical PU policy all-complete-ccij-first-v1 · CCIJ commit e38e3bc9a22a
Reuse boundary. Mundx Analytics confirms permission to publish and redistribute the source-derived records in this release. No standard open-data licence or third-party bulk-reuse terms are specified.

Published by Mundx Analytics · reviewed by Mundx Analytics Data Team on 22 September 2026 · official sources retrieved 2026-08-20.