
How Mexican Income Tax Is Calculated on a Payslip: ISR From Gross to Withholding
Mexican income tax, the ISR (Impuesto Sobre la Renta), is a progressive tax that the employer withholds from each payment and pays to the tax authority (SAT) by the 17th of the following month. On paper the calculation is a simple lookup: find the bracket, apply the marginal rate to the excess, add the fixed fee. Three things make the real calculation more involved: the bracket table depends on the pay period and is reissued every January, a tax credit for low earners (the subsidio al empleo) is applied after the tax, and several kinds of pay are partly or fully exempt before the tax is calculated. I will take the three in order.
How the ISR is calculated each pay period
Mexican ISR uses progressive brackets with marginal rates from 1.92% to 35%. The method is fixed: take the worker's taxable income for the period, find the bracket, subtract the bracket's lower limit (límite inferior), multiply the excess by the bracket's marginal rate, and add the bracket's fixed fee (cuota fija). The total is the ISR before any credit.
SAT publishes a different table for each pay-period frequency: daily, weekly, ten-day, bi-weekly (quincenal), and monthly. The tables are not interchangeable and are not simple multiples of one another; each frequency has its own limits and its own fixed fees, with SAT's own rounding. A bi-weekly payroll must use the quincenal table, not the monthly table halved. Using the monthly table for a bi-weekly payroll gives a figure that looks plausible but is wrong, and the difference is small enough each period to go unnoticed.
Every table is reissued each January with an inflation adjustment factor (factor de actualización); for 2026 the factor was 1.13213, applied to the 2025 limits. Using the previous year's table after January over-withholds every employee by a small amount. The tables are set out in Annex 8 of the RMF (Resolución Miscelánea Fiscal), published in the official gazette in late December for the year ahead.
The subsidio al empleo credit for low earners
After the ISR before credit is calculated, low earners receive a tax credit called the subsidio al empleo. For 2026 the credit is a fixed monthly amount of about MXN$535.65 (15.02% of the monthly UMA) for workers whose monthly taxable income does not exceed MXN$11,492.66. The credit is subtracted from the ISR: when the credit is larger than the tax, the withholding is zero, and any excess of the credit over the tax is forfeited rather than paid to the worker.
Two points about the credit need care. First, the credit is a hard cutoff, not a taper: a worker at MXN$11,492 receives the full credit and a worker at MXN$11,493 receives nothing, so the cutoff has to be applied exactly. Second, the credit's parameters depend on the UMA, and the UMA changes on 1 February, not 1 January, so January uses a transitional factor based on the prior year's UMA. Changing every parameter on 1 January therefore gets January wrong. At the bottom of the scale the credit is large: a worker on MXN$10,000 a month owes about MXN$729 of ISR before the credit and about MXN$193 after, an effective rate under 2%.
Above the cutoff there is no credit, and the effective rate increases with income: roughly 9.4% at MXN$15,000 a month, about 15% at MXN$30,000, and about 18% at MXN$50,000. A worker earning only the minimum wage has no ISR withheld at all.
Which pay is taxed and which is exempt
ISR applies broadly to employment income: base salary, overtime, bonuses, commissions, and most cash pay. A significant list of items is exempt up to a limit, and the limits are set in units of the UMA (Unidad de Medida y Actualización) rather than pesos. The unit is a point of law: since the 2016 constitutional reform, wherever the income tax law says "minimum wage" as a threshold, the threshold is read as UMA. Calculating these caps against the actual minimum wage overstates the exemptions.
The main exempt items, each capped, are the year-end bonus (aguinaldo) up to 30 UMA, the vacation premium (prima vacacional) up to 15 UMA, and profit sharing (PTU) up to 15 UMA. Overtime is 50% exempt for the first nine hours a week, subject to a weekly cap of five times the daily UMA, and fully taxable beyond nine hours. Severance and seniority payments are exempt up to 90 UMA per year of service. Grocery vouchers (vales de despensa) are exempt up to 40% of the monthly UMA, a meal subsidy up to one UMA per day, and documented travel reimbursements (viáticos) are fully exempt when supported by valid electronic receipts. In every case, the amount above the cap becomes taxable and is added to the base for that period.
Two details in the exemption arithmetic are worth spelling out. The vacation premium is 25% of vacation pay, not the vacation pay itself, so the cap is compared against the premium rather than the whole amount. And a minimum-wage worker's overtime exemption is treated differently from a higher earner's. Both distinctions change the taxable amount.
Personal deductions are claimed once a year, not on the payslip
Mexico has a set of personal deductions, the deducciones personales, that are not used in the monthly payroll calculation. Medical and dental expenses, funeral costs, mortgage interest, voluntary retirement contributions, school transport, insurance premiums, and donations are all deductible, but the individual claims them on the annual return, capped at the lesser of 15% of income or five annual UMA. None of these personal deductions affects the monthly withholding. So the only "deductions" that show up in the monthly payroll are really the exemptions on specific kinds of pay described above: an exemption reduces the amount of pay that is taxed each month, while a personal deduction is claimed by the employee on the annual return.
The year-end adjustment
Because each month's withholding is only a provisional payment, the income tax law (LISR Art. 97) requires the employer to run a year-end adjustment (ajuste anual) for most employees. The obligation is mandatory for an employee who worked the full calendar year and earned no more than MXN$400,000, unless that employee has told the employer in writing that they will file their own annual return, or also received salary from another employer. Employees who earn above MXN$400,000, or who started or left partway through the year, file their own annual return instead. The adjustment applies the annual bracket table to the year's cumulative taxable income and compares the result against the total ISR withheld during the year. When too much was withheld, the employer refunds the difference; when too little, the employer collects the shortfall. The annual table is used only for this reconciliation, never for the periodic withholding. A year of small monthly differences is therefore settled in one figure at year end.
The four inputs that change through the year
Four things about the Mexican calculation change through the year and have to be tracked. The bracket table has to match the actual pay period, and every table is reissued each January with an inflation factor. The subsidio applies only up to a fixed income cutoff, and the subsidio's parameters change with the UMA on 1 February, not 1 January. Each exemption cap is a multiple of the UMA, and because the UMA's peso value is revised every year, the peso amount of every cap changes with it. And the year-end adjustment measures the twelve months against the annual table.
For an employer, each month's figure is only a provisional payment: the year-end adjustment settles the real amount, so a month that uses the wrong table or a mis-capped exemption still produces a normal-looking payslip, and the difference is collected or refunded later in that single year-end figure. An ISR withholding depends on three things: using the table that matches the pay period, applying the subsidio only below its income cutoff, and calculating each exemption cap from the current year's UMA.
Mehmood Deshmukh
CTO & Co-Founder