Every March (or just before Diwali, depending on how your company times it), somewhere in an Indian HR team’s shared drive there’s a spreadsheet called something like “Bonus_Calc_FY26_FINAL_v3.xlsx.” It usually has a few tabs, a couple of VLOOKUPs that broke the last time someone added a row, and at least one column where a number was typed in by hand because the HRMS export didn’t quite match headcount. If you’ve built one of these, you already know why so many HR managers end up searching for a bonus calculator right around the time annual accounts close.
The frustrating part is that the math behind statutory bonus isn’t actually complicated. What makes it messy is that most bonus calculators you’ll find online either flatten it into a single percentage of salary, or wrap the real rules in enough compliance jargon that you still don’t know what number to put in the payroll register. So let’s walk through it the way you’d explain it to a new HR executive on their first bonus cycle.
What the law is actually asking you to calculate
The Payment of Bonus Act (now folded into the Code on Wages) applies to any establishment with 20 or more employees, and to smaller ones that choose to adopt it voluntarily. Two numbers matter more than anything else in a salary bonus calculator, and mixing them up is where most errors start:
- Eligibility ceiling: employees earning up to ₹21,000 a month in basic plus DA (not gross CTC) are statutorily eligible for bonus, as long as they’ve worked at least 30 days in the accounting year.
- Calculation ceiling: if an eligible employee’s actual salary is above ₹7,000 a month — or the state’s notified minimum wage for that category of work, whichever is higher — the bonus is still calculated as if they earned ₹7,000 (or that minimum wage figure). You don’t run the bonus calculation on their real ₹18,000 salary; you run it on the capped number.
That second rule is the one most back-of-envelope calculators get wrong, and it’s also the one that saves companies the most money when it’s applied correctly.
The actual bonus calculation formula
Once you have the calculation salary (actual salary, or ₹7,000/minimum wage, whichever is lower), statutory bonus works out as:
Bonus = Calculation salary × Bonus percentage × (months worked ÷ 12)
The bonus percentage sits between 8.33% — the statutory minimum, payable even if the company made no profit that year — and 20%, the statutory maximum. Where you land inside that band depends on your “allocable surplus,” a calculation tied to gross profits, depreciation and a few other adjustments laid out in the Act’s schedules. Most SMBs that aren’t running the full allocable-surplus exercise simply pay the 8.33% floor, and that’s entirely compliant. It’s not a shortcut — it’s the minimum the law sets.
Here’s a worked example. Take an eligible employee with basic + DA of ₹15,000/month who worked the entire year. Their calculation salary is capped at ₹7,000, not ₹15,000. At the statutory minimum of 8.33%, that’s ₹7,000 × 8.33% × 12 months, which comes to roughly ₹6,997 for the year.
Now take a colleague who joined the same company but resigned after 7 months. Same ₹7,000 calculation salary, same 8.33% rate, but prorated: ₹7,000 × 8.33% × 7/12, which lands around ₹4,081. Same role, same salary band, very different final figure — and this is exactly the kind of case that gets fudged when someone’s copying a formula down a spreadsheet column at 11pm before a payout deadline.
Where bonus calculation quietly goes wrong
Three mistakes show up again and again when this is still done manually:
- Teams calculate bonus on gross salary instead of basic + DA, which inflates the payout and creates a number that finance will eventually question because it doesn’t match what the Act actually requires.
- Mid-year joiners and leavers get a flat, un-prorated bonus because the days-worked logic wasn’t checked against actual date of joining or exit.
- HR forgets to apply the ₹7,000 (or minimum wage) cap, so an employee on ₹25,000 basic gets bonus calculated on the full amount — overpaying a statutory liability that the law never asked the company to pay at that size, repeated across every employee in that salary band.
That third one is the expensive one, and it’s almost always a copy-paste error, not a judgment call.
Why this is a data problem more than a formula problem
None of the above is hard once you know the rules. What’s hard is getting accurate basic+DA figures, exact working days, and mid-year salary revisions to line up for every employee, every single cycle, without someone manually reconciling three different exports from three different systems. That’s the real difference between a statutory bonus calculator built into an HRMS and a one-off spreadsheet: the HRMS version pulls calculation salary and attendance straight from the system that’s already running payroll, so the figure in the bonus register matches what was actually true that day — not a snapshot that drifted after the next salary revision got processed two weeks later.
If you’re still running bonus calculation by hand, the fastest sanity check before your next cycle is to pull a list of everyone sitting close to the ₹21,000 eligibility line and the ₹7,000 calculation line, and manually re-verify both numbers just for those edge cases. That’s usually where the bulk of bonus errors live — not in the people who obviously qualify or obviously don’t, but in the handful sitting right on the boundary.
A quick note on timing
The Act gives employers up to 8 months from the end of the accounting year to pay bonus, though most Indian companies tie the payout to Diwali or financial year-end for practical reasons. Whichever date you choose, the calculation itself doesn’t change — what changes is how much runway your payroll team has to catch the edge cases above before the number is locked and communicated to employees.
Get the calculation salary and the proration right, and statutory bonus is just arithmetic. Get either one wrong, and you’re either underpaying a legal obligation or quietly overpaying one — and neither is the kind of thing you want to discover during an audit, or explain to an employee who’s done the math on their own.
