For years, a particular salary structure was standard practice in India: keep basic small, make special allowance large. Provident fund and gratuity are computed on basic, so a small basic meant a smaller statutory liability. Everyone did it. Nobody pretended otherwise.
The Code on Wages, 2019 addresses that directly.
What the Code actually says
The Code consolidates four Acts — Payment of Wages, Minimum Wages, Payment of Bonus and Equal Remuneration — into one statute with a single definition of wages.
The provision that matters most in practice: specified excluded allowances may not exceed half of total remuneration. Where they do, the excess is deemed to be wages.
Read that last part again, because it is what makes the rule bite. The structure does not merely become non-compliant in a way you can fix going forward. The statutory base is recomputed as though wages had been higher all along.
What it does to a real structure
Take a monthly remuneration of ₹40,000 built the old way — basic ₹12,000, HRA ₹4,800, and a special allowance of ₹23,200 carrying most of the weight.
Wages here are well under half of total remuneration. Under the Code, enough of that special allowance is deemed to be wages to bring the wage component up to ₹20,000.
Everything downstream moves with it:
- Provident fund is computed on a materially higher base, on both sides
- Gratuity accrues faster, because it runs on basic plus DA
- Bonus and leave encashment are computed on the higher figure
- Minimum wage comparison is tested against the higher wage component
The employee's retirement corpus goes up. The employer's cost goes up. Neither of those is an accident — it is the point of the provision.
Why a one-off restructure is not enough
The common response is to run a restructuring exercise once, get every employee compliant, and consider the matter closed.
That holds for about one increment cycle.
A structure that complies on the day it is written drifts out of compliance the moment someone gets a raise that lands in allowances rather than in basic. Which is exactly how most increments are processed, because raising basic raises PF and gratuity and therefore costs more.
So the test needs to run per employee, on every payroll cycle, as a flag — not as an annual project.
Where this meets minimum wages
The two tests reinforce each other, and both catch the same structure.
Minimum wage is compared against the prescribed components — generally basic plus dearness allowance — not against gross. A structure that clears the state floor only by counting conveyance, HRA and special allowance does not comply, however comfortable the gross looks.
A small-basic structure therefore fails twice: once on the 50% test, and once against a minimum wage notification that was revised while nobody was watching.
What to do
Treat it as a payroll flag, not a project. Every cycle, every employee: are wages at least half of total remuneration?
Decide the increment policy deliberately. If raises always go into allowances, the flag will keep firing. That is a choice with a cost attached, and it should be made knowingly rather than by default.
Model the cost before restructuring. Moving to a compliant structure raises PF, gratuity accrual and bonus simultaneously. Work out the number before you commit to a date, not afterwards.