How to calculate payroll in Pakistan: the actual formula

“Calculate payroll” sounds like one step. In practice, it's at least five separate calculations stacked on top of each other, gross salary, income tax withholding, EOBI, provident fund, and whatever allowances or deductions apply to that specific employee that month. Get any one of them slightly wrong, and the final number an employee sees on payday is wrong too.
This isn't meant as a substitute for a qualified accountant or the latest FBR notifications, tax slabs and contribution rates change, sometimes annually, so always verify current rates before finalizing a real payroll run. What this covers is the actual structure of the calculation, so the process itself makes sense regardless of which year's rates apply.
Step 1: Establish gross salary
Gross salary is the starting point, basic salary plus every allowance the employee is entitled to that month: house rent allowance, medical allowance, conveyance, and any other fixed component defined in their salary structure. This figure should come directly from the employee's contracted salary structure, not be recalculated by hand each month, since that's exactly where transcription errors creep in.
Variable additions, overtime, bonuses, incentives, get added on top of the fixed gross for that specific cycle. Overtime in particular should be calculated directly from attendance records, not estimated, since it's one of the most common sources of payroll disputes when done manually.
Step 2: Calculate income tax withholding
Pakistan uses a progressive income tax structure under FBR rules, salaried individuals are taxed at increasing rates as annual income crosses defined slab thresholds. The withholding calculation applies the relevant slab rate to the employee's annualized taxable income, then divides the annual tax liability back down to a monthly withholding figure.
Because slab thresholds and rates are revised in the federal budget and can change from year to year, this is the single most common place a manual payroll spreadsheet goes stale, a formula that was correct last year quietly becomes wrong the moment new slabs take effect, and nobody notices until an employee's annual tax reconciliation doesn't match what was withheld.

Step 3: Apply EOBI contributions
The Employees' Old-Age Benefits Institution requires both employer and employee contributions for eligible employees, calculated as a percentage of a defined minimum wage figure rather than the employee's full salary, a detail that trips up companies calculating it manually, since it's easy to mistakenly apply the percentage to gross salary instead of the correct EOBI wage base. The current contribution rates and wage base should always be confirmed against the latest EOBI notification before processing.
Step 4: Provident fund and other statutory deductions
Where a company operates a provident fund, both employer and employee contributions are calculated as a percentage of basic salary, typically matched contributions, though the exact structure depends on the company's fund rules. Social security contributions, where applicable by province and industry, follow a similar percentage-of-wage structure and need their own separate calculation.
Step 5: Net pay, the number that actually matters to the employee
Net pay is gross salary, minus income tax withholding, minus the employee's share of EOBI and provident fund, minus any other deductions, loan installments, salary advances, late or absence penalties, specific to that employee for that cycle. This is the only number an employee actually looks at, which is exactly why every calculation feeding into it needs to be right; a single upstream error in step 2 or 3 shows up here as a wrong number on payday, with no way for the employee to tell which calculation actually went wrong.
A simplified worked example
Take an illustrative employee with a gross monthly salary of PKR 150,000. Income tax withholding is calculated by annualizing that figure, applying the current FBR slab rate, and dividing back to a monthly amount, the exact figure depends entirely on which slab applies in the current tax year. EOBI is calculated on the defined EOBI wage base, not the full PKR 150,000. If the company runs a provident fund at, say, a matched contribution structure, that percentage is deducted from basic salary specifically, not gross. Net pay is what remains after all of these are subtracted, and every one of those inputs needs to reference the current, correct rate to land on the right final number.
Common mistakes in manual payroll calculation
The most frequent error isn't a wrong formula, it's a correct formula applied to a stale input. Tax slabs that weren't updated after a budget change, an EOBI wage base that hasn't been revised in years, or a provident fund percentage that's still set to an old company policy all produce a calculation that looks legitimate but is quietly wrong every single month until someone audits it line by line.
The second most common mistake is inconsistency between employees processed by different people. When payroll is split across two or three people manually updating spreadsheets, subtle differences creep in, one person rounds differently, another applies a deduction slightly differently, and the same policy ends up producing different results depending on who processed a particular employee's payroll that month.
Documentation employees are entitled to
Beyond the calculation itself, employees are entitled to a clear, itemized payslip showing exactly how gross became net, the tax withheld, EOBI and provident fund deductions, and any other item that reduced their pay that cycle. A payslip that just shows a final number, with no breakdown, invites disputes and makes it impossible for an employee to verify their own deduction was calculated correctly. This transparency matters just as much as getting the underlying math right.
Why this breaks down at scale
This is a manageable calculation for one employee, done carefully, once. It stops being manageable at fifty employees with different salary structures, tax situations, loan balances, and attendance patterns, recalculated every single month. A spreadsheet formula that was correct in January can be silently wrong by June if a tax slab changed and nobody updated every row, and nobody discovers the error until an employee questions their payslip or an audit flags a pattern.
This is precisely the calculation a payroll engine is built to run consistently, the same formula, applied identically to every employee, updated once when a rate changes rather than manually re-entered into every row of a spreadsheet. The calculation itself doesn't get simpler with software; what changes is that it happens correctly, the same way, every single time.
Stop recalculating payroll by hand every month
See how StreamHCM automates tax, EOBI, and provident fund calculations, start your 14-day free trial today.
