Employees' State Insurance looks like the easiest statutory deduction to implement. Two rates, one ceiling, one register. In practice it produces more payroll corrections than provident fund does, and almost all of them come from three places: what counts as wages, what happens when someone crosses the ceiling partway through the year, and a rounding rule that behaves differently from every other calculation on the payslip.
This is a working guide to those edges. It assumes you already know that ESI provides medical and cash benefits to covered employees and their dependants, and that it is administered by ESIC under the ESI Act, 1948.
The three numbers
- Employee contribution: 0.75% of wages.
- Employer contribution: 3.25% of wages.
- Wage ceiling: ₹21,000 per month (₹25,000 for employees with disabilities).
Above the ceiling, the employee is out of coverage entirely — ESI is not levied on the first ₹21,000 the way provident fund is levied on the first ₹15,000. It is an eligibility threshold, not a contribution cap. This is the single most common misunderstanding, and it is worth stating plainly: an employee earning ₹22,000 contributes nothing, and neither does the employer on their behalf.
An establishment is generally covered once it employs ten or more people, though several states apply the threshold at twenty for certain categories. Coverage attaches to the establishment; the ceiling then determines which of its employees are contributing members.
Rule 51: ESI rounds up, and only up
Almost every other figure on an Indian payslip is rounded to the nearest rupee. ESI is not. Under Rule 51 of the ESI (Central) Rules, contributions are rounded up to the next higher rupee — both the employee share and the employer share, independently.
On a gross of ₹18,450:
- Employee: 0.75% = ₹138.375 → ₹139 (not ₹138)
- Employer: 3.25% = ₹599.625 → ₹600
The individual difference is under a rupee. Across a few hundred employees for twelve months it is a reconciliation that never closes, and it is the reason a payroll register and an ESIC challan disagree by amounts too small to investigate and too persistent to ignore. If you are writing or evaluating a payroll calculation, this is a specific thing to test: feed it a gross that produces a fractional contribution and check the direction of the rounding. AttendancePay applies the ceiling function to both shares, which is why our ESI calculator will sometimes give you a rupee more than a spreadsheet using ROUND().
What counts as wages
"Wages" under the ESI Act is broader than basic salary and broader than what many companies assume. It generally includes basic, dearness allowance, house rent allowance, city compensatory allowance, overtime, and most regular allowances paid as part of the monthly wage.
Two exclusions matter in practice:
- Overtime counts as wages for contribution, but not for determining eligibility. This is subtle and it catches people out. An employee whose regular wage is ₹20,000 and who earns ₹2,000 of overtime does not exit coverage because the total crossed ₹21,000 — eligibility is tested on the regular wage. But the contribution for that month is computed on the full ₹22,000. Getting this backwards produces both under-contribution and a coverage error in the same month.
- Annual or occasional payments — an annual bonus, gratuity, an ex-gratia paid once a year — are generally outside the wage definition. Payments made at intervals of two months or less are generally inside it.
The contribution period rule
This is the mechanic that surprises people most, and it exists to protect employees rather than to complicate payroll.
ESI runs on two fixed contribution periods each year: 1 April to 30 September, and 1 October to 31 March. If an employee is covered at the start of a contribution period and their wage rises above ₹21,000 partway through it, they remain covered, and contributions continue, until the end of that period. They exit coverage only from the start of the next one.
The reason is benefit continuity: an employee should not lose medical cover mid-treatment because they got a raise in July. The consequence for payroll is that "gross > 21,000, therefore no ESI" is wrong as a standing rule. It is only correct at a period boundary.
A worked sequence:
- April: gross ₹19,500 — covered, contributing.
- July: raise to ₹24,000 — still covered, and contributions continue on the full ₹24,000 through September.
- 1 October: new contribution period begins, wage is above the ceiling — coverage ceases.
Note the second line carefully: during the run-out, contribution is computed on actual wages, not capped at ₹21,000. Systems that cap it produce a shortfall that only surfaces at the half-yearly return.
The reverse case is simpler. An employee who joins above the ceiling, or whose wage drops below it mid-period, generally enters coverage from the start of the next contribution period rather than immediately.
Where ESI meets attendance
Because ESI is levied on wages actually earned, an employee with unpaid absence has a lower ESI wage that month, and a low-paid employee near the boundary can move in and out of the contributing band based on attendance alone. This is legitimate — but it means your ESI figure is only as good as your attendance-to-payroll pipeline. If payable days are computed loosely, the error propagates into a statutory return rather than staying an internal disagreement. That pipeline is worth getting right on its own merits; we have written separately about why payable days so often fail to match.
Filing and the ESIC portal
Contributions are deposited monthly, generally by the 15th of the following month, through a challan generated on the ESIC portal after uploading a monthly contribution file. Returns are filed half-yearly, aligned to the two contribution periods.
Two operational points that cause avoidable pain:
- Insurance Number allocation. A new employee needs an IP number before contributions can be filed against them. Registration is the employer's job and it is frequently done late, which forces a correction cycle.
- The upload file must reconcile to the payroll register exactly. Given Rule 51 rounding, a register that rounds to nearest will never tie out. Fix it in the payroll calculation, not by adjusting the challan.
A practical checklist
- Confirm rounding is up for both shares, computed independently.
- Test eligibility on regular wages; compute contribution on wages including overtime.
- Implement the contribution-period run-out, with contribution on actual wages during it.
- Apply the ₹25,000 ceiling for employees with disabilities where applicable.
- Register new joiners for IP numbers before the first contribution month closes.
- Reconcile the register to the challan every month, not every half-year.
ESI is genuinely simple once the contribution-period rule is implemented properly — but that rule is the difference between a payroll system that is nearly right and one that is right. If you want to check a specific case, the ESI calculator applies the rates, ceiling and Rule 51 rounding, and the PF calculator covers the deduction that usually sits directly above it on the payslip.

