lesleymaore.

PROJECT 05 / KENYAN PUBLIC DATA · CIVIC UNDERSTANDING

Kenya in Context

A vote. A budget. A bill.
What do the numbers actually tell us?

2022 presidential electionFY 2023/24 public recordsHistorical snapshot · Reviewed 11 October 2026

One headline can hide several different questions. Follow the vote, the budget and the bill counts back to their definitions.

2022 election · FY 2023/24 records · Separate periods

NO POLITICAL BACKGROUND REQUIRED

The headline is only
the beginning.

You hear that turnout was 64.77%, counties spent billions, or Parliament processed 128 bills. Before deciding what any of that means, ask: who was counted, out of what total, and at which stage?

I use public records to explain participation, spending and parliamentary activity, keeping each measure’s denominator and scope visible.

The analytical question

How does the meaning of a public headline change when we reveal its denominator, scope and stage?

This is a deliberately fixed historical study, not a live tracker or a statement of current office-holders’ performance. Election and financial-year records describe different periods and are not treated as a causal chain.

01 / THE VOTE · 2022

Turnout counts registered voters.
It does not count all Kenyans.

64.77%

Declared valid votes plus rejected presidential ballots, divided by the declared national registered electorate.

14,326,751 ballots / 22,120,458 registered voters. The difference is 7,793,707 registered voters not recorded voting in these totals. It is not a measure of why people did not vote.

Three numbers to keep separate

Population: includes people who are not eligible or registered to vote. It is not this denominator.

Registered electorate: the people listed in the election register.

Ballots recorded: valid votes plus rejected ballots for this particular election.

A county’s turnout does not establish how its young people, women or any ethnic group voted. These are aggregate records.

Source: IEBC declaration dated 15 August 2022, reproduced in Carter Center Appendix A, PDF pages 50–52. Diaspora is included in the national total and kept separate from the 47-county explorer. Published arithmetic differences are disclosed below.

And representation is a different question again.

Kenya’s National Assembly has 290 constituency seats, 47 county women’s seats and 12 nominated seats, plus the Speaker. The Senate has 47 elected county seats and 20 nominated seats, plus the Speaker. These are different routes to representation; presidential turnout does not tell us who holds those seats.

Structure explained by Parliament of Kenya. Seat categories are not a count of currently occupied seats or a party-strength estimate.

LOOK CLOSER / YOUR COUNTY, WITH CONTEXT

Choose a county.
Keep the questions separate.

The filled portion shows ballots recorded or budget spent. The pale remainder shows the rest of that denominator. Both charts run from 0 to 100%. The two periods are shown together for convenience, not to imply turnout caused budget outcomes.

02 / THE MONEY · JULY 2023 TO JUNE 2024

Money approved.
Money spent.
Services delivered?

The first two are in the financial table. The third needs additional evidence.

57.5%

Of the development budget was spent.

KES 109.23 billion spent against KES 189.93 billion approved across the 47 county governments.

24.4%

Of all county spending was development spending.

The same KES 109.23 billion, now divided by KES 446.76 billion in total expenditure. Same numerator. Different question.

What to ask next

Which projects were delivered, to what standard, and for whom? Check implementation records, completion evidence and audit findings before making a service-delivery claim.

“Absorption” means spending as a proportion of the approved budget. A larger rate alone does not demonstrate better services. A budget-to-spending gap is not, by itself, evidence of missing money. Funding availability, timing, procurement and implementation require separate investigation.

Source: Controller of Budget, FY 2023/24, Table 2.3, printed pages 6–7, accessed through an Isiolo Municipality-hosted copy. Calculations use the table’s KES million values. This is reported expenditure, not an independent audit by this project.

03 / THE WORK · FY 2023/24

Processed is a stage.
Not a result.

The National Assembly reported 128 bills processed. The report describes bills introduced and considered at various stages. Calling that “128 laws passed” would change the claim.

Reported parliamentary activity, FY 2023/24. Counts, not completion rates.
ActivityNational AssemblySenate
Bills processed12860
Questions processed525173
Public petitions processed4421

Do not add the Houses’ counts to claim unique bills or petitions. The same item can move between Houses. Different mandates and processing definitions also prevent these counts from serving as a productivity league table.

What to ask next

For a named bill, trace its stage and any assent record. For a question or petition, find the response, committee report or recorded resolution. Activity counts alone cannot show whose concerns were resolved.

Source: Parliamentary Service Commission annual report FY 2023/24, Tables 5.2 and 5.10, printed pages 69 and 77 (PDF pages 81 and 89). Senate sitting totals conflict within the report and are excluded.

A REPORTING STANDARD

Make the next question
better than the last.

The recommendation is a reporting standard: every public statistic should show its period, unit, denominator or processing stage, source, and limit. That is a practical requirement a civic-information team could test.

  1. Clarify the measure. A reader can identify who and what is counted without opening a spreadsheet.
  2. Keep the evidence reachable. Every headline links to a source table and the calculation can be reproduced.
  3. Make uncertainty visible. Source discrepancies stay in a quality log; no silent corrections.
  4. Check understanding. In a proposed usability session, ask readers to explain one statistic and one thing it cannot prove. No user testing has been conducted yet.

The case connects requirements thinking, data reconciliation and clear communication. Its proposed reporting standard is ready for a reader-comprehension test.

EVIDENCE / METHODS / LIMITS

Open the workings.

The charts have a paper trail. Here’s the analysis, the data and the source record behind this case.

A PAGE FROM THE ANALYSIS

Same measure.
Different counties.

Development budget spent · FY 2023/24

Baringo64.4%
Bomet76.2%
Bungoma58.9%

Three-county extract · 0–100% scale
Controller of Budget, Table 2.3

01
Analysis notebook

Follow the calculations, checks and interpretation.

READ ONLINE
A LOOK INSIDE THE DATA

Numbers you
can trace.

Development budget · KES million
CountyApprovedSpent
Baringo3,286.702,115.95
Bomet2,386.791,819.86
Bungoma5,284.313,113.59

First three records from the included county-budget CSV. Full file includes 47 counties and the published total.

02

Data & definitions

Open the extracts used in this case.

THE SOURCE RECORD

Who said it.
What it means.

  • 01
    Election declarationIEBC · 2022
  • 02
    County budget reportController of Budget · FY 2023/24
  • 03
    Parliamentary activityParliamentary Service Commission · FY 2023/24

Different records, periods and denominators. The methods explain the boundaries.

03
Sources & methods

Check provenance, definitions and known discrepancies.

Project files & credits
What did the quality checks find?

The reproduced election declaration’s geographic registered-voter rows sum to 22,119,458, while its national row states 22,120,458, a difference of 1,000. National turnout uses the stated national row; county charts use their own stated rows. I preserve the difference rather than allocating it to a county.

In Kilifi and West Pokot, published valid-vote totals exceed the sum of the four candidate columns by 10 and 100 respectively. The explorer preserves published valid totals, flags the affected counties and does not use this discrepancy to infer intent, fraud or electoral impact.

The budget narrative reports overall absorption as 79.5%, while Table 2.3 gives 79.4%. Recalculation from that table rounds to 79.4%. Budget entries also contain ordinary rounding differences. The Senate sitting narrative implies 124 sittings while its table gives 120, so sittings are not used.

What makes this different from other work?

The reviewed work includes ELOG’s election comparisons, IBP Kenya’s budget transparency survey and Samy Migwi’s voter dashboard repository. Their questions include election patterns, document transparency and geographic vote contribution.

This case connects those reading skills: follow a headline through its denominator, administrative stage and evidence limits.

Attribution, scope and assistance

Election CSV totals are credited to Paul-Oti’s Kenya Election Data, pinned to the commit in the source manifest. Its MIT licence is retained. Registered counts were transcribed from the IEBC declaration reproduced by the Carter Center, rather than mixed with the pre-election county register.

Budget figures were extracted from Controller of Budget Table 2.3. Parliamentary figures were transcribed from the PSC report. Original PDFs are linked, not republished. Source files were retrieved on 11 October 2026. The study deliberately uses historical periods and makes no claim to use the latest available data.

All 47 counties: accessible data table

Presidential turnout uses valid plus rejected ballots divided by the county’s declared registered voters. Development absorption uses spending divided by approved development budget. Different periods; no causal comparison.

County2022 presidential turnoutFY 2023/24 development absorption
Mombasa43.76%43.4%
Kwale54.94%48.3%
Kilifi49.03%55.8%
Tana River67.02%57.8%
Lamu62.55%52.2%
Taita Taveta61.77%46.9%
Garissa54.86%44.8%
Wajir64.69%83.4%
Mandera62.85%82.6%
Marsabit69.12%68.3%
Isiolo66.47%55.5%
Meru66.18%79.3%
Tharaka-Nithi70.08%54.5%
Embu66.61%60.3%
Kitui62.38%71.3%
Machakos60.20%58.6%
Makueni61.05%62.2%
Nyandarua67.06%45.9%
Nyeri68.29%72.4%
Kirinyaga69.85%53.5%
Murang'a68.10%65.6%
Kiambu65.15%49.5%
Turkana60.63%63.1%
West Pokot79.51%67.3%
Samburu70.65%60.8%
Trans Nzoia63.37%59.8%
Uasin Gishu69.51%48.9%
Elgeyo-Marakwet77.96%49.3%
Nandi76.05%49.8%
Baringo77.59%64.4%
Laikipia64.73%48.7%
Nakuru65.53%46.0%
Narok77.73%90.3%
Kajiado66.96%57.5%
Kericho78.56%61.7%
Bomet79.88%76.2%
Kakamega60.29%57.3%
Vihiga60.13%50.9%
Bungoma63.51%58.9%
Busia67.08%59.6%
Siaya70.89%64.6%
Kisumu71.37%37.0%
Homa Bay73.70%86.3%
Migori74.49%47.3%
Kisii63.92%29.2%
Nyamira65.16%61.2%
Nairobi City55.98%38.7%

THE TAKEAWAY

Understand the number.
Then ask what comes next.

A useful political analysis gives you the context to question a claim, and the evidence to check the answer.