The federal budget for 2026–27 has brought the salaried class something it has rarely seen in recent years: a tax cut.
In his budget speech, the finance minister has announced reduced income tax rates for salaried individuals earning between Rs2.2 million and Rs7 million a year, restructured the slabs from six to eight, and abolished the surcharge that currently applies to annual incomes above Rs10m.
But what those changes mean for you depends entirely on where your salary falls.
Most relief has been given to the middle and upper slabs. The rate on income between Rs2.2m and Rs3.2m a year has dropped from 23 per cent to 20pc (3pc), while the old top rate of 35pc, which previously applied to annual income above Rs4.1m, now applies only to income above Rs7m. There are new 25pc, 29pc and 32pc bands in between.
Those earning up to roughly Rs183,000 a month, however, will see no change at all: the bottom three slabs, including the Rs600,000 tax-free threshold, have been kept unchanged.
You can use Dawn’s income tax calculator below to see how the proposed income tax measures will change your take-home salary.
Budget 2026–27 · Interactive
What the budget means for your salary
Enter your monthly gross salary to see your income tax and take-home pay under the new slabs — and how it compares with the outgoing year.
Your monthly saving under the new budget
Rs 0
Swipe sideways to see all columns →
(function () { 'use strict'; // ---- Tax schedules (annual taxable income, salaried individuals) ---- // Each slab: [lower bound (exclusive), upper bound (inclusive), fixed amount, marginal rate] var SLABS_FY26 = [ [0, 600000, 0, 0 ], [600000, 1200000, 0, 0.01], [1200000, 2200000, 6000, 0.11], [2200000, 3200000, 116000, 0.23], [3200000, 4100000, 346000, 0.30], [4100000, Infinity, 616000, 0.35] ]; var SLABS_FY27 = [ [0, 600000, 0, 0 ], [600000, 1200000, 0, 0.01], [1200000, 2200000, 6000, 0.11], [2200000, 3200000, 116000, 0.20], [3200000, 4100000, 316000, 0.25], [4100000, 5600000, 541000, 0.29], [5600000, 7000000, 976000, 0.32], [7000000, Infinity, 1424000, 0.35] ]; function slabTax(income, slabs) { for (var i = 0; i < slabs.length; i++) { var s = slabs[i]; if (income > s[0] && income Rs 10m function annualTaxFY26(income) { var t = slabTax(income, SLABS_FY26); if (income > 10000000) t = t * 1.09; return t; } // FY 2026-27: surcharge proposed to be abolished function annualTaxFY27(income) { return slabTax(income, SLABS_FY27); } // Expose for testing window.__dawnTax = { annualTaxFY26: annualTaxFY26, annualTaxFY27: annualTaxFY27 }; // ---- Formatting ---- function fmt(n) { var rounded = Math.round(n); return 'Rs ' + rounded.toLocaleString('en-PK'); } function fmtSigned(n) { var rounded = Math.round(n); if (rounded === 0) return 'Rs 0'; var sign = rounded > 0 ? '+' : 'u2212'; return sign + 'Rs ' + Math.abs(rounded).toLocaleString('en-PK'); } // ---- DOM ---- var $ = function (id) { return document.getElementById(id); }; var input = $('dtc-salary'); function setDiffCell(el, value, positiveIsGood) { el.textContent = fmtSigned(value); el.className = ''; if (Math.round(value) > 0) el.className = positiveIsGood ? 'diff-pos' : 'diff-neg'; if (Math.round(value) < 0) el.className = positiveIsGood ? 'diff-neg' : 'diff-pos'; } function describeSlab(income, slabs, yearLabel) { for (var i = 0; i < slabs.length; i++) { var s = slabs[i]; if (income > s[0] && income 0 ? ', plus a fixed ' + fmt(s[2]) : '') + '.'; } } return ''; } function calculate() { var raw = input.value.replace(/[^0-9]/g, ''); var verdict = $('dtc-verdict'), ledger = $('dtc-ledger'), rates = $('dtc-rates'); if (!raw || Number(raw) 0) { label.textContent = 'Your monthly saving under the new budget'; fig.textContent = fmt(saveM); note.textContent = 'That is ' + fmt(saveM * 12) + ' a year staying in your pocket compared with FY 2025u201326.'; } else if (Math.round(saveM) < 0) { label.textContent = 'Your monthly tax increase under the new budget'; fig.textContent = fmt(-saveM); fig.classList.add('negative'); note.textContent = 'You would pay ' + fmt(-saveM * 12) + ' more a year compared with FY 2025u201326.'; } else { label.textContent = 'Change in your monthly tax'; fig.textContent = 'No change'; fig.classList.add('neutral'); note.textContent = taxNewY === 0 ? 'Your income falls below the taxable threshold in both years.' : 'The announced changes do not affect your slab; your tax stays the same.'; } // Ledger $('m-tax-old').textContent = fmt(taxOldM); $('m-tax-new').textContent = fmt(taxNewM); setDiffCell($('m-tax-diff'), taxNewM - taxOldM, false); $('m-net-old').textContent = fmt(netOldM); $('m-net-new').textContent = fmt(netNewM); setDiffCell($('m-net-diff'), netNewM - netOldM, true); $('y-tax-old').textContent = fmt(taxOldY); $('y-tax-new').textContent = fmt(taxNewY); setDiffCell($('y-tax-diff'), taxNewY - taxOldY, false); $('y-net-old').textContent = fmt(netOldY); $('y-net-new').textContent = fmt(netNewY); setDiffCell($('y-net-diff'), netNewY - netOldY, true); // Rate context $('dtc-rate-old').innerHTML = describeSlab(annual, SLABS_FY26, 'FY 2025u201326'); $('dtc-rate-new').innerHTML = describeSlab(annual, SLABS_FY27, 'FY 2026u201327'); var sl = $('dtc-surcharge-line'); if (annual > 10000000) { sl.style.display = 'block'; sl.innerHTML = '
Surcharge: a 9% surcharge on tax payable applies to your income in FY 2025u201326; it is proposed to be abolished in FY 2026u201327.'; } else { sl.style.display = 'none'; } verdict.classList.add('show'); ledger.classList.add('show'); rates.classList.add('show'); } // Live comma formatting + recalc input.addEventListener('input', function () { var raw = input.value.replace(/[^0-9]/g, '').slice(0, 10); input.value = raw ? Number(raw).toLocaleString('en-PK') : ''; calculate(); }); var presets = document.querySelectorAll('.dtc-preset'); for (var i = 0; i < presets.length; i++) { presets[i].addEventListener('click', function () { input.value = Number(this.getAttribute('data-val')).toLocaleString('en-PK'); calculate(); input.focus(); }); } })();