Back to Insights
Payroll Compliance3 min read

Uganda Payroll, Explained: NSSF, PAYE and the Local Service Tax Instalment

The three deductions on a Ugandan payslip, what each is charged on, and the one that catches almost everyone out.

By StepUp HR Experts

Uganda Payroll, Explained

A Ugandan payslip has fewer moving parts than a Kenyan one, which makes the mistakes easier to spot and, oddly, easier to make. There are three deductions to get right. Two are straightforward. The third is the one that catches almost everyone.

NSSF: Five and Ten

The National Social Security Fund takes 5% from the employee and 10% from the employer, both calculated on gross pay. The employer's 10% is a cost of employment, not a deduction — it never reduces the employee's net pay, and showing it as though it does is one of the more common presentation errors.

On a gross of UGX 700,000 that is 35,000 from the employee and 70,000 from the employer. Nothing is capped and nothing is tiered, which is a genuine simplification compared with the Kenyan arrangement.

PAYE: Charged on the Gross

This is where systems built for a neighbouring market go wrong. In Kenya, PAYE is charged on pay after allowable deductions. In Uganda it is not. The employee's NSSF contribution is not deductible against PAYE, so the chargeable amount is the gross.

URA's published monthly schedule for a resident individual runs:

  • Not exceeding 235,000 — nil
  • 235,000 to 335,000 — 10% of the amount over 235,000
  • 335,000 to 410,000 — 10,000 plus 20% of the amount over 335,000
  • Exceeding 410,000 — 25,000 plus 30% of the amount over 410,000

With a further 10% charged on chargeable income above 10,000,000 a month.

On a gross of 700,000, that is 25,000 plus 30% of 290,000 — 112,000. Run the same figure through a system that quietly deducts NSSF before applying the bands and you will get 101,500 instead, and you will get it wrong every month without anything appearing to break.

Local Service Tax: The Instalment Trap

LST is the one that catches people, and it catches them in a specific way.

It is an annual charge, set by band according to monthly gross income, and it is collected in four equal instalments between July and October — not spread across twelve months.

An employee grossing 700,000 a month falls in the 600,001 to 700,000 band, which carries an annual charge of 60,000. The payslip line in each of those four months is therefore 15,000, and in the remaining eight months it is nothing at all.

Divide by twelve instead of four and you will deduct 5,000 a month. The annual total is the same, which is exactly why the error survives an annual reconciliation. What it produces is twelve wrong payslips and a remittance schedule that does not match the collection period.

Putting It Together

At a gross of UGX 700,000, in a month when LST is being collected:

  • Employee NSSF: 35,000
  • PAYE: 112,000
  • LST: 15,000
  • Employer NSSF: 70,000

The employee's deductions total 162,000, leaving 538,000 net. The employee costs the business 770,000 — the gross plus the employer's contribution.

In the eight months outside the LST collection window, the same employee nets 553,000. That variation is normal and expected, and it is worth telling staff about in advance. A payslip that changes by 15,000 without explanation generates a query from every affected employee in the same week.

Before You Rely on Any of This

Rates and bands change, and they change without a great deal of notice. Everything above reflects the published position at the time of writing, and it is the right starting point rather than the final word. Confirm the current figures against URA's own schedule before a live run, particularly after a budget.

The general principle holds regardless of the specific numbers: a payroll error does not announce itself. It produces a plausible figure, confidently, every month, until somebody checks.

You can work a Ugandan payslip through our payroll calculator, which applies the published bands and the LST instalment schedule, and shows the employer's contribution alongside the employee's.

Keep reading

WhatsApp icon