From a Headcount Plan to a Payroll Budget That Matches Reality
Payroll is usually the largest budget line and the one most often built from a number somebody remembered rather than from the payroll register.
Build the payroll budget from the payroll register. Not from last year’s general ledger total, not from the prior budget with a percentage on it, and not from a headcount number somebody wrote on a whiteboard.
The register is the only document in the building that knows who is actually employed, at what, on what pay cycle. Everything else is a total, and a total cannot be tested. When the first month’s variance arrives and somebody asks why budgeted payroll was out by a meaningful amount, a budget built from a total has no answer available except a shrug, because there is nothing inside it to look at.
The general ledger figure is worse than merely coarse. It is a different measurement. Last year’s payroll expense contains the reversal of the prior year’s bonus accrual, the vacation liability movement, any severance, any wage subsidy or rebate netted against it, contractor payments that somebody coded to salaries in March, and labour capitalised out to a project or an asset. None of those are what you pay the people who work here now. Take that number, add a percentage for next year, and you have carefully forecast a quantity that does not correspond to anything.
So: register first, plan second, arithmetic third, reconciliation last. The reconciliation is the part that makes it defensible and it is the part usually left out.
The case
The company below is illustrative and composite, and every figure in it is invented to show the arithmetic rather than drawn from any engagement. A services company, one legal entity, 38 people on a biweekly cycle, fiscal year ending in December, going into its second budget. Sales are on base plus commission. Delivery staff are salaried. There are two hourly people in the warehouse. The hiring plan approved by the owner has five roles on it.
That plan is a page with five rows: a role, a department, a target start month, and a number the owner and the department head agreed on. It is a good input and it is not a budget. Turning it into one takes six steps.
Step 1: pull the register, by person, by element
Take the most recent completed pay run and the year to date register from the payroll provider. Extract to a working sheet with one row per employee and these columns: employee, department, pay basis (salary, hourly, or base plus variable), the current rate, the pay cycle, the hours if hourly, the variable arrangement if any, and the start date.
Two things happen when you do this, and both are the reason the step exists.
The first is that you find people. Every company at this size has at least one person on the register whom nobody in the budget conversation mentioned: a part-time administrator, someone on leave, a person whose role changed but whose department code did not, a contractor who was converted to an employee mid-year and is still budgeted as a contractor in the department’s cost submission. They are real cost. They are usually missing from the plan because the plan is about hiring and they are not being hired.
The second is that you find the elements. Payroll is not one line. On a register it is base pay, overtime, statutory holiday pay, commission, bonus, shift differential, retroactive adjustments, taxable benefits, and reimbursements that are running through payroll because it was convenient. Each behaves differently over a year, and lumping them together is how a budget ends up flat in a business that is not.
Step 2: turn the register into a run rate that is actually annual
This is where the most expensive arithmetic error in payroll budgeting happens, and it is not subtle once named.
A biweekly cycle does not divide into twelve. It pays 26 times in most years and 27 in some, and which years those are depends on your own pay dates rather than on the calendar generally. A semi-monthly cycle pays 24 times and lines up neatly with months, which is why it feels easier and why people wrongly assume everyone is on it. If you annualise a monthly payroll figure by multiplying by twelve, on a biweekly cycle, in a year that carries an extra run, you have under-budgeted your largest line by a full pay period and you will not find out until the month it lands.
So build the run rate off pay periods, not months, and then phase it into months by the actual pay dates. Three periods land in some months and two in others. That phasing is not a refinement. It is the difference between a variance report that means something and one that oscillates all year.
While you are here, deal with the elements that do not run flat:
- Overtime and statutory holiday pay follow the operating calendar. Budget them in the months they occur.
- Commission follows the arrangement, which is usually the month after the revenue, sometimes the month after collection. Read the plan document rather than assuming.
- Bonus goes in the months it is earned if you accrue it, and separately you track the month it is paid, because those are two different lines and the cash view needs the second one.
- Vacation is an accrual movement, not a payment, until somebody leaves or takes a payout. Keep it separate so that the payroll line reads as pay and the liability reads as liability.
Step 3: overlay the plan, with leavers in it
Now the hiring plan. Build a grid, one row per person and per planned role, one column per month, showing whether that row is employed in that month and at what proportion.
| Row | Type | Jan to Mar | Apr | May onward | Note |
|---|---|---|---|---|---|
| Existing 38 | Actual | In | In | In | From the register, at current rates |
| Delivery hire 1 | Planned | Out | Half month | In | Plan said April, budgeted from mid April |
| Delivery hire 2 | Planned | Out | Out | In from June | Second of a pair, deliberately staggered |
| Salesperson | Planned | Out | Out | In from May, commission from August | Ramp, see below |
| Controller | Planned | Out | Out | In from July | Longest search of the five |
| Warehouse, seasonal | Planned | Out | Out | In from August to November only | Not a permanent role and should not be budgeted as one |
| Known leaver | Actual | In to February | Out | Out | Resignation already received |
| Backfill of leaver | Planned | Out | Out | In from May | Two months of gap, deliberately |
Two rules govern this grid and both of them will make somebody unhappy.
Every plan has starts and almost none have leavers. Put in the leavers you already know about, because you do know about at least one, and a payroll budget that assumes nobody leaves is a budget that is wrong in a direction nobody checks. Do not attempt to forecast unknown departures by applying a general rate to your headcount. That is inventing a number. Budget the ones you know, note that the rest is unbudgeted, and let the reforecast catch them.
A start date on a hiring plan is a wish, so budget the month after. The role is approved in the plan, then it has to be written, posted, screened, interviewed twice, offered, negotiated, and then the person has to give notice somewhere else. Every step is normal and every step takes longer than the person who wrote the plan assumed. Budgeting the optimistic month means overstating cost early, which sounds prudent and is not: it hands the year a favourable variance in the first quarter that makes the hiring look ahead of plan when it is behind, and by the time that unwinds, somebody has spent the phantom saving.
The seasonal warehouse row exists to make a point. A role that is not permanent should never be budgeted as twelve months at a rate, because next year somebody builds off this year and it silently becomes permanent.
Step 4: the employer cost layer
Gross pay is not cost. Sitting on top of it there is a layer of employer obligations, and this is the layer people leave out of a hiring plan because the number they agreed with the candidate was the salary.
The categories, generically, are these: employer contributions to the federal payroll programmes, workplace insurance premiums, any provincial payroll levy your company is subject to, the employer share of the benefit plan, any employer match on a retirement or savings plan, and vacation accrual where it is a liability rather than paid time.
I am not going to publish rates or ceilings here, because they are set annually by several different bodies and a rate printed on a web page is a rate that becomes wrong and then gets copied. Get the current parameters from your payroll provider or the administering authority each year, at the point you build the budget. What matters for the model is the behaviour, and the behaviour has three features that a flat percentage on gross pay gets wrong:
Some contributions stop. Several employer obligations are calculated on earnings up to an annual maximum per employee. For anyone paid above that maximum, the employer cost stops partway through the year, which means your payroll cost is front-loaded and your flat percentage overstates the back half of the year. In a company with a handful of higher-paid people, this is visible in the monthly numbers.
They reset annually, not on your fiscal year. These maximums restart on the calendar year. If your fiscal year does not end in December, the reset lands in the middle of your budget and the front-loading appears in your seventh month rather than your first.
Not every element is in the base. Different obligations are calculated on different definitions of earnings, and some categories of payment sit outside some of them. Your payroll provider applies these rules correctly on the actual run. The budget model is where they get approximated badly, so approximate them deliberately: calculate the layer per employee against that employee’s own earnings pattern, not as one percentage against the company total.
Then add the costs that follow a person but do not run through payroll at all: the benefit plan enrolment that starts after a waiting period, the equipment and software licence that appears in the month someone starts, the recruiting fee if you are using an agency, and the training or certification the role requires. These belong in the department’s cost lines rather than in payroll, but they belong in the same conversation, because a hiring decision that is approved on the salary alone is approved on part of its cost.
Step 5: ramp, which is a cost timing question and not a performance one
Two ramps matter and they run in opposite directions.
The cost ramp is short. A person who starts mid-month costs a part month, gets the benefit plan after the waiting period, and hits the full loaded rate quickly. Model it and move on.
The variable pay ramp is longer and it is the one that gets modelled wrong. A salesperson hired in May does not generate commission in May. There is a pipeline to build, a sales cycle to run, and often a guarantee or draw arrangement in the first months that is a real cost with no revenue against it. Budget the guarantee in the months it applies, budget commission from the month the arrangement says it can first be earned, and do not put revenue in the plan for that person any earlier than that either. A revenue plan and a payroll plan that disagree about when a new salesperson becomes productive is one of the most common internal contradictions in a first budget, and the two halves are usually built by different people who never compare them.
The delivery equivalent: a person hired into billable work is not billable at target utilisation in their first weeks. That belongs in the revenue build. Say so out loud when you hand the payroll numbers over, because otherwise the revenue side quietly assumes it.
Step 6: the reconciliation that proves it
This is the step that makes the whole thing defensible, it takes twenty minutes, and it is skipped almost every time.
Take the opening month of your budget. Take the current payroll register. They should agree, and every difference between them should be a thing you can name.
| Line | Amount | Explanation |
|---|---|---|
| Current run rate per the register, phased to the opening month | Illustrative | Two pay periods, per the pay calendar |
| Rate changes effective at the year start | Illustrative | Three named people, per the approved changes |
| Known leaver | Illustrative, negative | Departing in February, so still in the opening month |
| Planned hires starting in the opening month | Nil | None planned before April |
| Employer cost layer | Illustrative | Calculated per employee, front-loaded per the reset |
| Budgeted opening month | Illustrative | Ties to the phased budget |
If you cannot produce this list, you do not have a payroll budget for your company. You have one for a company of roughly your size, which is a different thing and will behave differently every month for twelve months.
That reconciliation is also the thing that makes the payroll line usable in the monthly reporting pack, because a variance on the largest line in the business has to be explainable in one sentence and it only ever is when the budget was built by person.
Run the same reconciliation in reverse at the first close: budgeted opening month against actual opening month, with the difference explained by named people and named elements rather than by a percentage. If the two reconciliations use the same categories, the variance answers itself.
What this exercise is not
It is not a compensation review. Nothing above says what anybody should be paid, and I do not advise on pay levels, market rates or pay structure. Those are decisions for the owner, with whatever advice they choose to take on them, and the fractional finance lead work starts once the decision exists: cost it correctly, phase it correctly, and show what it does to cash.
The distinction matters at the point of the draft one meeting, because a costed hiring plan puts a total in front of an owner and the total invites the question “can we afford all of this”. That question gets answered by the cash view, not by somebody quietly trimming individual salaries in the model overnight. The month-by-month payroll grid feeds straight into the disbursement rows of a thirteen week cash forecast, and the two should be built off the same pay calendar so that a payroll week and a supplier run week are never confused for each other.
This is also not a substitute for the parameters your payroll provider applies on the actual run. The model approximates them for planning, and the register stays the authority. Where the register cannot be produced from your provider in a usable format, that is the first problem to fix rather than a reason to fall back on the general ledger total.
And it does not include a leaver assumption you have not made. If you want a provision for unbudgeted turnover, that is your decision, it goes in the assumption register with your name against it, and it is not a number anybody outside your company should be supplying.
Cost what was decided. If the answer is unaffordable, the decision that changes is which roles and when, and the model should be built so that pulling a role out is one grid cell rather than a rebuild.