★ Sources, method & data quality Updated 2026-10-31 200 official documents

How every number gets to the page

An archive that cannot lose a document, figures that must reconcile to the printed total, and a log of everything the documents get wrong.

Three rules govern the database: every figure carries a document and a page, the archive is append-only, and nothing publishes until it reconciles to the source's own printed totals.

The document archive

200 DOCUMENTS

Every document Liberia Ledger holds, with two ways to check it: the issuing body's own link, and an independent archived copy held by the Internet Archive's Wayback Machine. The checksum identifies the exact file our figures were read from. Files are never edited or deleted.

How to cross-check a figure. Follow the page reference on any chart to the original or the archived copy and read the printed table. To confirm you are looking at the same file we did, compute its SHA-256 (certutil -hashfile file.pdf SHA256 on Windows, shasum -a 256 file.pdf on a Mac) and compare it with the checksum shown here. Where a document has no public archive snapshot, the checksum is the only independent identifier, and we say so.

The Special National Budget 2021 is mirrored from SIPRI rather than the ministry: when the archive was built in August 2026, mfdp.gov.lr had been rebuilt on a new platform and served the volume under no resolvable path, and the Wayback Machine had never archived it. The ministry's site listed the volume again in September 2026; the archived copy remains the SIPRI mirror. That episode is the reason the archive rule exists.

Since September 2026 the archive also holds sources that are not PDFs: the API responses behind the OECD/ATAF, IMF and World Bank series (archived byte for byte as served, with the request URL) and the LRA press releases the revenue figures were read from (raw HTML). They carry the same checksum discipline as the documents.

Errors found inside official documents

22 ENTRIES · ONE RETRACTED

Internal inconsistencies found inside official documents, each confirmed by recomputing from the source's own printed figures. Liberia Ledger records what the source prints and notes the discrepancy here — we never silently correct a government document. The log is a finding about reporting quality in its own right.

Annual Consolidated Budget Performance Report FY2025 (MFDP)

  • D1
    Tax revenue variance overstated by US$404k.

    Table 5 prints 54,008; recomputing from the same table gives 53,604, which Table 6 prints correctly. The stated growth rate (8.5%) belongs to the wrong figure.Table 5, p.26 · Table 6, p.28

  • D2
    Non-tax revenue variance understated by US$781k.

    Printed 6,841 and 4.7%; recomputed 7,622 and 5.2%. Table 6 has it right.Table 5, p.26

  • D3
    External-resources variance wrong by exactly the World Food Programme line.

    Printed (37,051); recomputed (37,988), which Table 4 prints. The US$937k gap equals the WFP inflow, so the variance was computed with WFP excluded.Table 7, p.29

  • D4
    The EU variance absorbs the same WFP amount.

    Printed 5,547; recomputed 4,610. The difference is again exactly 937, confirming D3: the WFP line was folded into the EU row.Table 7, p.29

  • D5
    Narrative contradicts the tables.

    The text states external resources "amounted to US$38.47 million"; every table gives 38.047 — a digit transposition. The same paragraph repeats D3's incorrect variance.p.28

  • D6
    Two breakdowns of the same total.

    Table 1 and Table 9 give the FY2025 approved budget by economic class differently: US$50,001 more in goods and services and US$50,000 less in subsidies, offsetting to the dollar. Liberia Ledger stores Table 9, which is consistent with Table 10 and with the PSIP reconciliation.Table 1, p.16 · Table 9, p.31

  • D7
    Sub-million rounding, recorded but not material.

    Tax components sum to one thousand above the printed total; domestic revenue approved differs by one thousand between Tables 4 and 5; recurrent components sum to one dollar under the printed total; PSIP disbursement is given three ways (99.84, 99.85, 99,849,381).Tables 4, 5, 6, 10, 11 and text pp.30–33

  • D10
    Two sectors differ by one dollar between tables.

    Table 2 and Appendix 3 disagree on Public Administration (340,770,126 vs 340,770,127) and Energy and Environment (24,102,191 vs 24,102,190), offsetting. Appendix 3 is corroborated twice by section 5.5, so Table 2 is the outlier.Table 2, p.17 · Appendix 3, p.74

  • D11
    Five sector totals do not equal their own component lines in the disbursement column, by one or two dollars each.

    The residuals do not propagate: the eleven printed sector totals sum exactly to the grand total in Tables 8, 9 and 10.Appendix 3, pp.74–75

Across documents

  • D8
    FY2024: identical grand total, different split.

    The FY2024 budget book and the FY2025 report both give FY2024 as exactly US$738,859,827, then distribute it differently: about US$20M leaves Public Administration across the sectors, and on the economic dimension US$37M leaves capital for domestic debt service (+US$25M) and goods and services (+US$13M). Sector figures for FY2024 are not comparable across the two documents. Liberia Ledger stores both, tagged by stage and source.FY2024 book pp.26, 30–33 · FY2025 report Table 1 p.16, Table 2 p.17

  • D9
    The FY2024 book has a twelfth, unlabelled sector.

    Its sector summary lists UNSPECIFIED ahead of the eleven named sectors, holding US$5,000 (FY2022) and US$5,280 (FY2023) attributed to the Ministry of State — so the book's own grand total is US$5,000 higher than the sum of its eleven named sectors.FY2024 book, 1.7 Sector Summary p.26 · pp.30–33

  • D12
    Retracted: the "US$190M transition-period gap".

    An earlier entry reported two outturns for the six-month transition period, US$190M apart, and a 62.4% execution rate. The figure came from a mislabelled column (see D13). Corrected position: appropriated US$347,907,700, actual US$323,290,120, execution 92.9%. The retraction is kept on the record.superseded by D13

  • D14
    FY2025 domestic revenue: US$818M, 830M, 847M or 848M.

    The LRA announced "approximately US$818 million as of December 29, 2025"; eight months later it stated a final US$848 million. The ministry's outturn is US$847.054 million; the IMF's staff estimate, made before the books closed, US$830 million. Once final, the LRA and the ministry agree to within US$1M — a year-end press figure is never the outturn.LRA press releases 29 Dec 2025 and 20 Aug 2026 · FY2025 report Table 5 · IMF CR 26/98 Table 4a

  • D15
    FY2024: three targets, four collections.

    The LRA printed its 2024 target as US$696.4M (pre-recast), US$694.4M (recast envelope) and US$690M, and its collection as "over US$692 million", "US$700 million", US$699M and US$698.66M; the OECD/ATAF compilation from LRA returns gives US$690.9M and the IMF US$693M. Six counts, a 1.3% spread.LRA press releases Oct 2024–Aug 2026 · Revenue Statistics in Africa 2025 · IMF CR 26/98

  • D16
    The investment commission's FDI figure is 58% above the balance-of-payments series.

    nic.gov.lr states 2024 FDI inflows of "approximately $746.79 millions" with no source; the IMF balance-of-payments series reported by the Central Bank (World Bank WDI) gives US$471.5M. The site's report and act pages are template text, one dated "2026-02-31"; nothing from it enters the database until a document is named.nic.gov.lr, read 16 Sep 2026 · WDI BX.KLT.DINV.CD.WD

  • D17
    Where the maritime money sits in the revenue lines is not stable.

    In the OECD/ATAF compilation of LRA returns, "Ship registration" is zero for 2014–2018, US$9–10M for 2021–2023 and zero again in 2024, and "Tonnage tax" is zero from 2018, while the registry remits far more every year through property income. Sector totals built from named lines understate maritime.Revenue Statistics in Africa 2025, Liberia table, lines L_1472 and L_2170

  • D18
    The LRA's FY2025 report gives its customs figures two ways.

    Table 4 prints other import duties of US$7,164k and a heading of 122,743 that its own three lines do not reach (they sum to 112,044); Table 45 prints 17,811 and 122,659, and adds up. International trade is 259,051 in one table and 258,898 in the other. The consistent table is the one used.LRA Annual Report FY2025, Table 4 p.22 · Table 45 p.70

  • D19
    The LRA's summary tables disagree with their own detail.

    FY2024: Table 1 prints income taxes of 256,111 and goods-and-services taxes of 69,130; the detail tables print 255,860 and 68,905. FY2023: customs non-tax revenue is printed as 618 where its two components sum to 1,048, the figure the next year's report uses. The Natural Resource Tax Section's year is printed twice with different totals.LRA Annual Report FY2024, Tables 1–3 pp.16–18 · FY2023, Tables 29, 30 and 37 pp.48, 55

  • D20
    Same approved envelope, two classifications.

    The LRA's Table 1 and the ministry's Tables 4–7 agree on every FY2025 outturn line to the thousand, but for the approved budget the LRA books the US$18.8M of contingent revenue inside goods-and-services taxes and property income and shows the US$16.0M financing gap outside external resources. Domestic revenue and the total envelope agree; the lines between them do not, by construction.LRA Annual Report FY2025, Table 1 p.17 · MFDP FY2025 report, Tables 4–7 pp.25–29

  • D21
    Where the ECOWAS trade levy hides.

    In the FY2023 report the import-duty sub-lines fall short of their heading by 7,160 (2023) and 6,007 (2022); the OECD/ATAF compilation of the same LRA data carries an ECOWAS community levy of 7,170 and 6,005. Explained, not an error — the FY2025 report lists the levy under other import duties instead.LRA Annual Report FY2023, Tables 37–38 p.55 · Revenue Statistics in Africa 2025, Liberia table

  • D41
    The revenue authority's own long series restates two of its years.

    Table 6 of the FY2023 report prints a seven-year Domestic Tax Department series. For its two oldest periods it does not match what those years' own reports printed at the time: FY2016/17 is US$265.6M against the US$266.7M that year's report printed, and FY2017/18 US$229.9M against US$230.8M. The division split moved several times further than the totals — the Large Tax Division by US$3.6M, the sector-ministries line by US$3.8M. Both contemporaneous figures reconcile to their own tables. Liberia Ledger holds each year from its own report and keeps the later series alongside it, under its own source.LRA FY2023 report, Table 6 p.36 · FY2016/17 report, Table 17 p.37 · FY2017/18 report, Table 7 p.26

  • D13
    The same three columns appear in three budget books, relabelled forward each time.

    The FY2020/21 book, the Special National Budget 2021 and the FY2022 draft book print an identical block of historical figures (540,152,772 · 518,005,273 · 513,043,563) under year headings that advance by one year per volume, at every grain. The decisive test: the Special Budget labels 518,005,273 as the FY2020/21 budget, but that year was appropriated at 570,111,173 — the figure the ministry itself printed a year earlier. So the FY2020/21 book's labels are right, the Special Budget is shifted one year and the FY2022 book two. All three volumes add up perfectly, so the error is invisible from inside any one of them. Liberia Ledger uses only each book's own-year column.FY2020/21 book p.33 · Special Budget 2021 p.31 · FY2022 book p.31

The fiscal-year change, handled in the open

JULY–JUNE → SIX MONTHS → CALENDAR

Liberia budgeted July–June through FY2020/21, ran a special six-month budget for July–December 2021, and has budgeted on calendar years since FY2022. Nothing about a row of data warns you that the transition period is half the length of its neighbours, so the site says so wherever it appears.

  • Every period is shown as the document printed it. The transition period holds US$323.3M because that is what the FY2023 book prints. It is six months long and is never placed beside a full year as if it were one.
  • Annualised figures are labelled as assumptions. Where the six months are doubled for comparison, the chart says so; even spending across the period is an assumption, not an observation.
  • Growth rates never cross the break silently. A July–June year and a calendar year are different things; comparisons across the change are flagged wherever they are made.
  • The break is marked twice. A chart whose axis crosses the change carries the mark inside the plot — a tinted column, a dotted rule and a bracket reading fiscal year changed — and the card under it repeats the same remark in words, linking back to this page. A chart that does not cross it carries neither, so the mark keeps meaning something.

The six-month period

Three bases, and the word “actual”

BUDGET · CASH · GFS

Revenue and spending each exist on up to three bases, and they are counts of different things — two of them published by the same ministry, from the same ledgers, in the same year. An outturn is an outturn on one basis only, so no figure here is set beside a figure from another without saying so.

FY2025 is the only year counted all three ways, and the three answers are US$211M apart. None of them is the true one and none is wrong: the budget department reports against what the legislature appropriated, the Comptroller reports the cash that crossed the Consolidated Fund, and the IMF counts a wider government that includes grants and project loans the national budget never sees. On the lines the first two share they agree exactly — FY2025 domestic revenue is US$847,054,000 in both, to the dollar.

Where the counts part company

  • US$20.0M that one document books twice and the other not at all. FY2025's five tax lines and its domestic revenue are identical in both. The totals are not: US$885.1M of revenue against US$905.1M, and US$879.6M of spending against US$899.6M. The difference is a single item — US$20M borrowed domestically and paid straight out as equity in a commercial bank, which the Comptroller books as both a receipt and a payment and the performance report carries on neither side.Consolidated Financial Report FY2025, Notes 6 and 11a, pp.33 and 36 · Budget Performance Report FY2025, Tables 5 and 9
  • US$70.4M that is not a disagreement. FY2024 closed at US$730,985,821 appropriated and US$660,570,350 in cash. Section 34(2) of the PFM Act lets a commitment made by 31 December be settled in a 90-day window after the year ends, and the cash accounts book it in the year it is paid: FY2024's window payments were US$75.1M and land in the FY2025 statements. Add them back and the two counts are within US$4.7M. Read a cash total as a year's spending and you understate it by that window, which has run between US$71.9M and US$75.1M.Annual Financial Statements FY2024, p.15 · Consolidated Financial Report FY2025, p.55 · National Budget FY2026, p.31
  • The same total, divided two ways. For FY2022, FY2023 and FY2024 alike the two documents agree on the year's total and not on how it was split between sectors. FY2022's approved budget is US$786.6M in both; inside it, Energy and Environment is US$35.6M in the budget book and US$69.8M in the statements, and Social Development US$24.5M against US$9.7M. Sector figures are never mixed across bases here. The same pattern inside the appropriation basis is logged as D8.Consolidated Financial Statement FY2022, p.17 · FY2023 budget book, p.21
  • So “actual” names a document, not a fact. The statements cover FY2022–FY2025. The budget department's own outturn report for FY2023 prints the Comptroller's cash payments, to the decimal, as the year's outturn against the revised appropriation: 106.8% of it, where the FY2024 budget book had estimated 96.7%. Every chart on this site is drawn on one basis for every period in it, and the receipt beneath it names the document each figure was read from. Nothing reconciles the two counts automatically and nothing should: the gap between them is the finding.Annual Fiscal Outturn Report FY2023, Table 4, p.32 · Consolidated Financial Statements FY2023, p.17 · FY2024 budget book, p.26

If you are reading the data rather than the pages. Every revenue and sector row in data/core.js carries its own basis field — budget, cash or gfs-cg — because for FY2022–FY2025 the same year, stage and code exist on more than one of them. Filter on it before adding anything up; two rows that look like duplicates are two counts of different things.

What the database holds, by period

COVERAGE

Stages run in the order a budget passes through them, from draft to actual. Each is a different figure, and the stage is part of every row. Agencies counts the spending entities with a figure in the period; a dash means the database holds no agency-level figures for it. The six-month period, in red, is never set beside a full year as printed. Year type is how the period itself is cut — July–June, calendar, or the special six-month bridge between them. It is not the accounting basis, which is how the money inside the period is counted: that is three bases, and the word "actual", above.

Licence, release policy and terms of use

READ BEFORE REUSING

Open layer

  • Everything on the pages is free to read, check and cite. Charts, the table under each chart, the source receipts, the free sample report and the discrepancy log carry no restriction beyond attribution.
  • The summary-grain tables are released under CC BY-NC 4.0, on request. Ask and they are sent to you; reuse them freely for journalism, research, teaching and advocacy, with attribution to Liberia Ledger and to the original government document named in each row. Commercial reuse — inside a paid report, a product or a client deliverable — requires the organisation licence.
  • Cite the page, not the site. The suggested form is: Liberia Ledger, from MFDP, Annual Consolidated Budget Performance Report FY2025, Table 9, p.31. Every row gives you the last three parts.
  • The archive stays readable even if this site does not. Every source receipt carries the issuing body's own link, an independent Wayback Machine snapshot where one exists, and the SHA-256 of the file the figures were read from — enough to reconstruct any chart here from the originals alone.

Licensed layer

  • Agency, county and line-item tables are licensed to organisations, annually, with each update and a named contact for questions about any figure. The explorer and the county map on this site draw on the same tables but show a summary of them: each agency's totals over time, its latest economic and county split, its three largest line items and the largest agencies in each county. The licence carries every year, every split and every line.
  • Release policy. When a new outturn report or budget book is published, Monitor subscribers receive the note and licensees the updated tables first. The public data pages follow after a fixed window, currently thirty days. Corrections are published to everyone at once.
  • Terms of use. Figures are reproduced as printed in the source and reconciled to its own totals; Liberia Ledger makes no warranty beyond that reconciliation. Discrepancies inside sources are logged, not corrected. Derived figures are labelled as derived. If you find an error, tell us at info@liberialedger.com: it goes into the log, with credit if you want it.

Tiers and how to request a licence