Research · Fiscal Intelligence and Reform Lab · Project 3
The shortfallthat isn't
Uganda's tax has seasons. Its monthly targets don't.
Three months into the year, the monthly figures read like a drought: every month below its target. A weather station would not panic in the dry season. This one reads the same figures with its instruments, and tells you which shortfalls are the season and which deserve a second look.
MoFPED monthly figures · tax · UGX bn
JUL 2026target 2,731in 2,530−7.3%
AUG 2026target 2,976in 2,663−10.5%
SEP 2026target 2,884in 2,665−7.6%
Shortfall?
Read on: all three fell inside the ranges the station forecast in July.
Sky: “Timelapse of Storm Clouds Forming”, Felipe David, Pexels
The station's bulletin
- Seasons12.3% · 11.6%of the year's tax arrives in June and in December; July brings the least
- Targets44 of 65months had a target above what came in: the targets ignore the seasons
- Forecast6.4%typical miss a month ahead, against 12.0% for "the same month last year"
- Horizon±3.5%how close the year's total is known by the end of December
- TodaySeasonJuly to September 2026: 3 of 3 months inside the forecast range
Instrument 01The rain clock
The year has a wet season, and the law wrote it
Each wedge is a month's share of the fiscal year's collections, FY2015/16 to FY2024/25 averaged. July is at the top; the year runs clockwise.
Most taxes arrive evenly: PAYE and VAT are paid every month, so their wedges are nearly round. Corporate income tax is different. On average 42% of it arrives in December and 38% in June: four-fifths of a year's corporate tax in two months. That is not a habit. It is the law.
“on or before the last day of the sixth and twelfth months of the year of income”
Provisional tax is paid in two instalments. For a company whose year of income runs July to June, the sixth and twelfth months are December and June. The return is due “not later than six months after the end of that year” (s. 118(1)), so a June year-end's final settling-up also lands in December.
ULII Income Tax Act, 2024 consolidation, PDF p. 73
Be the company
31 DecemberUGX 100 m
30 JuneUGX 100 m
Each instalment is half the estimated tax, less tax withheld. Multiply by every company in Uganda and you have the wet season.
The sky for corporate tax: two storms in a year of sun
Instrument 02The gauges
Each month, a glass. Each target, a pencil mark.
The water is what came in, as first published; the pencil mark is the month's target. In FY2025/26 the glass stopped short of its mark in 10 of 12 months. Then June overflowed.
Current vintage of the portal (June figures after revision). Why June is growing is not shown here: provisional tax payments, a bigger year-end corporate settlement and timing all fit.
Point at a month to read every year. The bold line is FY2025/26; the coral line is this year.
This is what matters: collections to date against the target to date. Every year sinks through the dry months and climbs back in June, inside the same band, and this year's three months sit inside it too. In FY2025/26 the year ended −0.2% against its target as first published (+0.7% after June's revision).
The sky for PAYE: a steady drizzle, every month
Instrument 03The forecast board
A forecast you can check, with the error it has earned
Point at any month. Data to Jun 2026; UGX billion.
The recipe, in five lines
// next month, the simplest honest way
same_month_last_year = 2,239
growth = last_12 / previous_12 = 1.158
forecast = same_month × growth
= 2,592
// UGX bn, July 2026- Published model
- Holt-Winters
- Typical miss, a month ahead
- 6.4% against 12.0% for the same month last year
- Months inside the 80% range
- 77%
The published model refines the recipe; both are tested on months they never saw.
The sky for VAT: grey and even, a little wetter in June
Instrument 04The barometer
How early can we know the year?
At any point in the year, the station adds what has come in to its forecast for the months left. Move through the year and watch the needle settle: the shaded band is how far off that forecast has been in eight years out of ten.
typical error of the year's total, by months known (all years, FY2015/16 to FY2025/26)
Instrument 05The forecast machine
This year, month by month. Feed it the next figure.
Here is the station's forecast for FY2026/27, for every tax it tracks: the months already in, and a forecast with its range for each month to come. When MoFPED publishes the next month, type it in: the station tells you whether it is the season or worth a check, and the year's total narrows.
Total tax · FY2026/27 · forecast for the year
38,664 UGX bn
Typical miss at this point
±5.2%
36,654 to 40,675
Against FY2025/26
+11.8%
last year 34,582
Months in
3 of 12
Tested, a month ahead
6.4% miss
vs 12.0% for “same month last year” · 80% ranges held 77%
Total tax: monthly collections and the forecast fan, UGX billion
- Collected
- Central forecast
- 50% range
- 80% range
- Forecast at the start of the year
- Monthly target
A fan chart, as central banks draw them: the darker band holds half the outcomes the model expects, the lighter one eight in ten. Point at any month for its figures.
The record this year: 3 of 3 months inside the range · average miss 2.8%
| Month | Forecast | Came in | Miss | In range | Target |
|---|---|---|---|---|---|
| July 2026 | 2,587 | 2,530 | -57 (−2.2%) | yes | 2,731 |
| August 2026 | 2,772 | 2,663 | -109 (−3.9%) | yes | 2,976 |
| September 2026 | 2,724 | 2,665 | -58 (−2.1%) | yes | 2,884 |
Each month is judged against the range forecast at the start of the fiscal year; the months still to come use the latest refit, redone each month when MoFPED publishes. The range on the year's total is the typical miss at the same point in past years, FY2015/16 to FY2025/26.
Instrument 06Today's reading
So, is FY2026/27 in trouble?
By September, collections stood −8.5% against the target to date. In July, before any of these months had happened, the station forecast each one with an 80% range. All 3 landed inside it.
Adding the forecast for the nine months left, the year is heading for about UGX 38.7 trillion, give or take 7.7%: +11.8% on FY2025/26. Ask again in December, when the range will be narrower.
A season, not a storm
shaded band: the July forecast's 80% range · coral line: the month's target · water: what came in, first published
Instrument 07The station log
What the station flags, revises, and cannot see
The flag tape · 31 of 132 months outside the range
2026-06: came in 6,099 against a forecast of 4,298 (range 4,072 to 4,974).
With an 80% range, about one month in five falls outside by chance. A flag is a prompt to check, in this order:
- A data error or reclassification
- Timing: deadlines, holidays, one-off payments
- Refunds and offsets
- A change in policy
- A shift in the economy
- A change in administration
Never evidence of evasion.
The June refill
2026's June was first published at 5,566 and now stands at 6,099: +9.6%. Of 65 months, 44 were never revised; the big ones are Junes. Wait for the refill before reading the year.
This bulletin does not cover
- why any month moved: the station sees patterns, not causes;
- individual taxpayers or offices: these are national totals;
- shocks: in COVID the errors were two to three times larger;
- URA's own totals, which run a few per cent higher.
Calibration certificate
| Tax | Miss, 1 month | Same month last year | In range |
|---|---|---|---|
| Total tax | 6.4% | 12.0% | 77% |
| Direct domestic taxes | 7.2% | 13.1% | 79% |
| Indirect domestic taxes | 7.7% | 13.0% | 77% |
| Taxes on international trade | 7.2% | 11.7% | 74% |
| PAYE | 5.6% | 11.2% | 75% |
| Corporate income tax | 26.3% | 36.4% | 76% |
| VAT (net of refunds) | 7.3% | 11.5% | 77% |
| Petroleum duty | 11.3% | 14.8% | 75% |
Tested on 132 months the models never saw. Certified by the backtest, not by us.
How the station works
Readings
Monthly tax by head from MoFPED's Uganda Macro Data Portal (read with the official ugatsdb package; vintage 2026-10-29). Monthly targets and first-published figures from MoFPED's monthly Performance of the Economy reports, 80 of them, 2017 to 2026. The portal's “Taxes” run 1.5% to 5.9% below URA's net collections, so this is not the series used in The Road to a 20% Tax-to-GDP Ratio.
Forecasts
Every forecast uses only the months before it. Two benchmarks (the same month last year, and that times the last year's growth) and two models (Holt-Winters smoothing and a seasonal ARIMA), refitted at every month and scored on 132 months from July 2015 to June 2026. A model is shown only where it beats “the same month last year”. Ranges are 80%, from the last 36 errors known at the time.
Limits
Forecasts show patterns, not causes. A flag is a prompt to check, never evidence of evasion. Errors were two to three times larger during COVID. The phasing of MoFPED's monthly targets is not public; the “re-phased” targets here are an illustration.
Code and data: scripts/fiscal-lab/p3_*, data/fiscal-lab/p3/; tests in lib/fiscalLab/backtest.test.ts and forecastStory.test.ts. Fiscal Intelligence and Reform Lab, Project 3. Built 2026-10-29.