Skip to the argument
RevenueComplianceTradeEnforcement

A decade inside Uganda’s revenue system, built entirely on URA’s own published data. No invented figures. Every number is traceable.

0%Revenue CAGR
0Registered taxpayers
0%Tax-to-GDP FY24/25
0%Target achievement
Scroll

A Short History

of Seeing.

Chapter 00 · Scroll to begin

A Short History of Seeing
A Short History of Seeing. Before spreadsheets and dashboards… …states had ledgers. To tax a population, a state first has to know who exists. Who is here? A person. A business. And what they do: a transaction. What they earn: a wage. What they own: a property. What crosses the border: an import. What they sell: a sale. Anything the law can tax: a taxable event. To count them: a census. To name them: a registry. To number them: a taxpayer number. To follow what they do: a receipt. To hold it all: a database. To see it as it happens: an electronic invoice. Ink became data. Data became a network. The technologies change. The problem does not. MAKE ECONOMIC LIFE VISIBLE. But no tax system sees everything. Some people are registered. Some transactions are recorded. The rest remains outside the system. WHAT EXISTS WHAT IS SEEN Taxation has always depended on one thing. SEEING And now… we turn to Uganda. How much of its economy does the tax system see? Not with a theory. With records from the URA Data Books FY2015/16 to FY2024/25.

The argument

Three speeds · FY2015/16 = 100

100300500700900FY15/16FY20/21FY24/252.8×Revenue5.8×Taxpayer register8.9×ArrearsFY2024/25: UGX 4.5 trillion → UGX 11.4 trillion
The numbers behind this chart
Index values, FY2015/16 = 100
YearRevenueRegisterArrears
FY2015/16100100100
FY2016/17113114157
FY2017/18129146209
FY2018/19148165284
FY2019/20149176234
FY2020/21172198328
FY2021/22193290367
FY2022/23224388333
FY2023/24243501355
FY2024/25282582891

The argument

In ten years URA nearly tripled what it collects. The money now comes from the payroll instead of the border, from a taxpayer register that grew about twice as fast as revenue, and with the arrears on URA's books growing faster than either.

Scroll: the chart draws itself

First: revenue

Collections nearly tripled.

2.8×net URA collections, UGX 11.2 trillion to UGX 31.6 trillion

A steady 12.2% a year, for nine years.

Second: the register

The register grew faster.

5.8×registered taxpayers, 0.9 million to 5.3 million

21.6% a year, against 12.2% for revenue. More names, thinner on average.

Third: arrears

Arrears grew fastest, and mostly in one year.

8.9×arrears on URA's books, UGX 1.3 trillion to UGX 11.4 trillion

The stock rose 2.5× in FY2024/25 alone.

What follows

Eight chapters follow the money.

From the border to the payroll, down the tax river, across the sectors, through a crowd of taxpayers, into the arrears, and out to the digital machine. Every figure is read from URA's own Annual Data Books.

01The Decade

Collections nearly tripled: UGX 11.2 trillion to UGX 31.6 trillion.

Net URA collections grew 12.2% a year, compounded, from FY2015/16 to FY2024/25: 2.8× where they began.

10T20T30TFY15/16FY16/17FY17/18FY18/19FY19/20FY20/21FY21/22FY22/23FY23/24FY24/25Net URAcollections
Target metTarget missedTick = that year’s net target

Bars run clockwise from FY2015/16. Net URA collections, UGX bn; the radius is an area scale (bar area is proportional to collections), and the dotted rings are UGX 10, 20 and 30 trillion.

02The Shift

The money moved from the border to the payroll.

In FY2015/16 the largest single tax head was VAT on Imports. Today it is PAYE. Domestic taxes grew from 57.4% to 65.7% of gross revenue, while taxes on international trade fell from 42.1% to 34.3%.

03The Tax River

The river widened, and the domestic stream widened fastest.

Every bridge is a fiscal year. The river's width is gross revenue, split into a domestic stream and a stream of taxes on international trade. From FY2015/16 to FY2024/25 the domestic stream's share moved from 57.4% to 65.7%.

FY2015/16 · step 1 of 3

Upstream

57.4%

domestic share of gross revenue

The river starts at UGX 11.5 trillion of gross revenue. 57.4% flows in the domestic stream; 42.1% comes from taxes on international trade.

FY2020/21 · step 2 of 3

Midstream

61.8%

domestic share of gross revenue

Halfway down, gross revenue is UGX 19.6 trillion. The domestic stream carries 61.8%, the trade stream 38.2%.

FY2024/25 · step 3 of 3

Downstream

65.7%

domestic share of gross revenue

By FY2024/25 the river is 2.8× where it began, at UGX 32.4 trillion. 65.7% of it is domestic taxes and 34.3% is taxes on international trade.

Domestic taxes (stream width ∝ revenue)International trade taxes (stream width ∝ revenue)
The same river as a chart (2D)
Domestic taxesInternational trade taxesUGX 10TFY15/16FY17/18FY19/20FY21/22FY23/24FY24/25

The stream’s thickness in any year is that year’s domestic plus international-trade revenue (UGX bn, gross); it is stacked around a moving centre line, so read the thickness and the size of each band — not how high the stream sits. The bar at the left is a fixed UGX 10 trillion.

04The Sectors

Wholesale & retail trade and manufacturing carry 48% of gross revenue.

Gross revenue in FY2024/25 splits across 21 sectors. The fastest growers by compound annual rate (arts, entertainment, 28.7%; mining & quarrying, 28.1%; agriculture, forestry & fishing, 26.2%) are each below 2.2% of gross revenue, so their growth starts from a small base.

GWholesale & Retail Trade; Motor Vehicle Repair25.6%CManufacturing22.2%KFinancial & Insurance Activit…11.6%JInformation & Co…7.0%Unsectorised5.4%OPublic Admin…4.1%LReal Estate …2.5%DElectricity, …2.4%FConstruction2.3%BMining & Quar…2.2%S2.1%Q1.9%M1.9%PEducation1.7%AAgricultu…1.6%H1.4%RN
Primary (ISIC A–B)Industry & construction (C–F)Services (G–U)Unsectorised

Each tile’s area is that sector’s share of FY2024/25 gross revenue (UGX 32,357bn in all). Sections A–U and the unsectorised remainder partition the total.

05The Crowd

The register grew 5.8×. Revenue grew 2.8×.

Registered taxpayers rose from 0.9 million to 5.3 million: 21.6% a year against 12.2% for revenue. Revenue per registered taxpayer fell from UGX 12.4 million to UGX 6.0 million.

06The Reckoning

Arrears grew faster than revenue or the register, and most of it in one year.

URA won more of its court cases (72.9% to 89.76%) as judgments grew from 70 to 420. Over the same years the arrears on its books grew 8.9×, from UGX 1.3 trillion to UGX 11.4 trillion.

Court success rate, FY2015/1672.9%
Court success rate, FY2024/2589.8%
Court judgments0100200300400URA court success rate020406080100Arrears stock, UGX bn02,0004,0006,0008,00010,00012,000FY15/16FY18/19FY21/22FY24/25
FY15/16FY24/25— one line per fiscal year

Each line is one fiscal year, crossing three axes with their own scales. Arrears stock (domestic + customs, at year-end) is the balance URA carries on its books — a stock, not a tax gap.

Definition matters: this is a stock — the balance URA carries on its books at year-end — not an independent estimate of unpaid tax owed across the whole economy, and not a “tax gap.” Arrears-recoveries detail only exists from a later year onward, so a full stock-vs-recovery-rate story cannot yet be told for the earliest years.

07The Digital Machine

Digital tax stamps grew 7.8×. E-invoicing cannot be counted yet.

Taxpayers registered for Digital Tax Stamps rose from 6,001 to 46,611. The e-invoicing (EFRIS) series jumps to 677,914 in FY2020/21 and then falls, which looks like a change in what "registered" means, so the story does not build a conclusion on it.

Economic Activity
Transaction
Taxpayer
Tax Obligation
Assessment
Payment
Revenue
FY15/16FY16/17FY17/18FY18/19FY19/20FY20/21FY21/22FY22/23FY23/24FY24/25FY25/26Digital Tax Stampsregistered taxpayers6.0k8.0k6.6k6.2k7.3k10k12k16k25k47k43kEFRISregistered taxpayers6.2k678k127k85k61k25k15k

Each row is shaded on its own scale (the two systems count different things), so compare years within a row. The hatched EFRIS cell is the FY2020/21 jump: it is flagged, unverified and under review, so it is printed but not shaded.

Data under review: the EFRIS series spikes to 677,914 in the mandatory-rollout year (FY2020/21) then falls sharply — most likely a change in what “registered” counts (e.g. new registrations that year vs. cumulative active users), not a literal collapse in EFRIS adoption. Held out of any confident growth narrative until the source definition is confirmed (see STORY_DISCOVERY.md #14).

08Follow the Shilling

How much of Uganda’s economy becomes visible to the tax system?

Loading 3D…

Stage 1 of 5

Economy

Uganda's economy grew from UGX 108.1 trillion (FY2016/17) to UGX 226.3 trillion (FY2024/25).

The slice that is visible

Net URA collections as a share of GDP

FY24/25: GDP UGX 226,344bn, of which net URA collections were about 13.98%.

Each pie is one year’s GDP; the amber slice is net URA collections as reported in the tax-to-GDP ratio (Net URA ÷ GDP). Hover a year.

Stage 2 of 5

Transaction

Some of that activity becomes a taxable transaction — a sale, a wage, an import.

Which tax lands on which transaction

A wage, a sale, an import

A wageUGX 5,386bnA saleUGX 7,477bnAn importUGX 6,233bnPAYEUGX 5,386bnVATUGX 5,047bnExciseUGX 2,430bnImport dutyUGX 2,502bnVAT on importsUGX 3,731bn

Hover an arc to follow its ribbons.

A ribbon is a tax head levied on that kind of transaction; its width is the head’s FY2024/25 revenue. Only the heads named here are drawn.

Stage 3 of 5

Taxpayer

5.25 million taxpayers were on the register by FY2024/25 — but revenue per registered taxpayer fell as the register grew faster than revenue.

The register as a crowd

Many more taxpayers, each worth less revenue

FY2024/255,251,874 registeredIndividualsNon-individualsFY2015/16902,620 registeredIndividualsNon-individuals
5,005,075 of the 5,251,874 registered taxpayers are individuals

One figure is 5,000 registered taxpayers (each group is rounded to the nearest figure, so tiny groups can be off by up to half a figure). The bigger the crowd, the bigger the register.

Stage 4 of 5

URA

URA collected UGX 31,634bn in FY2024/25, against a target of UGX 31,369bn — 100.84% achievement, one of three years in the decade that met its net target (the highest was FY2018/19, at 101.58%).

How the ten years compare

Achievement against target, year by year

80%85%90%95%100%target metmedian 96.9FY18/19 · highest

Each dot is one fiscal year’s achievement against the net target. The box is the middle half of the years, the line its median; the highest dot is FY18/19, at 101.58%.

Stage 5 of 5

Treasury

Not every shilling assessed becomes a shilling collected. Arrears on URA's books grew 8.9× over the decade, most of it in the last year (2.5× in FY2024/25) — a stock, not a verdict on how much of the economy escapes the system entirely.

What the stock is made of

The arrears tree, year by year

Arrears stockUGX 11,367bn · 100%DomesticUGX 11,044bn · 97%CustomsUGX 323bn · 2.8%Non-governmentUGX 11,029bn · 97%GovernmentUGX 15.2bn · 0.1%
FY24/25

Stock at 30 June: UGX 11,367bn — about 36% of that year’s net collections.

The tree splits the arrears stock into domestic and customs, and domestic into non-government and government. Circle area and branch width use one scale for every year. Arrears are a balance on the books, not a measure of tax owed across the economy.

On the record

Behind every figure is someone paying it, collecting it, or clearing it.

What people at the counter, the border and the tax authority have said in public. Each is retold in our words, with the report it came from.

Traders

Argued that the harsh enforcement of e-invoicing, and a penalty of six million shillings per receipt, had put traders off adopting the system rather than winning them over.

Thadeus Musoke NagendaChairman, Kampala City Traders AssociationThe Independent (Uganda), 14 April 2024 — read the full report →

The tax authority

Defended the e-invoicing system as necessary to widen the tax base and lift the tax-to-GDP ratio, pointing out that neighbouring countries already use it.

John Musinguzi RujokiCommissioner General, Uganda Revenue AuthorityThe Independent (Uganda), 14 April 2024 — read the full report →

The border

Criticised the reinstatement of metallic electronic cargo seals at the border, saying a rule like that should not be rolled out from head office without first asking those working on the ground.

Peter SirekaChairperson, Uganda Clearing Industry and Forwarding AssociationNile Post, 14 July 2026 · David Ochieng — read the full report →

The border

Reported that the number of trucks cleared each day at the crossing had fallen from around 1,500 to 1,600 to about 750 while the seal rule caused delays.

Chrispinus OmuseKenya International Freight and Warehousing AssociationNile Post, 14 July 2026 · David Ochieng — read the full report →

The payroll and the taxpayer

Described Ugandan taxpayers as overtaxed and, at the same time, underserved: paying for public roads and security without feeling they get enough in return.

Julius MukundaExecutive Director, Civil Society Budget Advocacy GroupDaily Monitor, 12 June 2026 · Ismail Musa Ladu — read the full report →

Explore the Evidence

Every number in this story is open to check.

The story is one view of the data. The Tax Data Observatory is the whole of it: search every indicator, draw it in dozens of chart forms, read the data-quality notes, and cite any figure with its source.

Opens in a new window. Source: Uganda Revenue Authority Annual Data Books; Uganda Bureau of Statistics (GDP, trade).