Most small Canadian teams start by tracking time off in a spreadsheet, and it works right up until it does not. One tab per employee, a running balance, a formula someone copied down. Then you hire mid-year, an employee crosses a tenure threshold, a manager approves a day in a chat that never makes it into the sheet, and the numbers quietly stop matching reality. This guide is about the moment a spreadsheet stops being enough: how vacation and time off actually accrue in Canada, what carryover rules allow, and what to look for when you move to a tool that keeps its own balance.
Why a spreadsheet breaks down for time off
A spreadsheet is a snapshot kept by hand, while a time-off balance is live: it changes with every pay period, every request, and every anniversary. That gap is where errors live, and the failure modes are always the same. A request approved by email or chat never gets logged, so the balance drifts. A mid-year hire needs their entitlement prorated and someone eyeballs it. An employee hits a service milestone and their rate should step up, but the formula never does. Two provinces mean two different rules that one sheet cannot hold cleanly. And nobody except the person who built the sheet can actually read a balance, so employees ask HR every time. None of these are exotic. They are the normal shape of a growing team, and each one is a place a manual sheet gets a number wrong.
The two ways time off accrues
Before you can track a balance you have to decide how it is earned, and in Canada there are broadly two models. Knowing which one you use is the first thing any tool has to get right.
- Annual grant, up front. The full entitlement (say two weeks) lands in the employee’s bank at the start of the vacation year or on their anniversary, and they draw it down as they book time. Simple to explain, but it can hand out time that has not been earned yet if someone leaves early.
- Accrue as you go. The balance builds a little every pay period, so on any given day an employee has earned only what they have worked toward. This tracks how vacation pay is actually owed, but it is almost impossible to keep correct by hand across a full team.
Note that vacation time and vacation pay are two related but separate things. In most provinces vacation pay is a percentage of eligible earnings (commonly at least 4%, rising with years of service) that accrues on every paycheque, even when the time itself was granted up front. A tool that tracks days off but ignores the pay percentage is doing only half the job. We break down the provincial minimums for both in a separate guide.
Carryover: what Canada actually allows
Carryover is where "we will figure it out in December" gets expensive. The rules are provincial and more specific than most employers assume. Two principles hold almost everywhere and are worth building your policy around:
- Vacation usually has to be taken, not banked forever. Many provinces require that vacation time be taken within a set window after it is earned, often within 10 to 12 months of the end of the year it accrued in, and let the employer schedule it if the employee does not. That is the legal basis for a carryover cap.
- Earned vacation pay generally cannot simply be erased. Because vacation pay is earned wages, a blunt "use it or lose it" rule that wipes out pay an employee already earned tends not to hold up. You can require time to be scheduled; you usually cannot make owed pay disappear.
The practical takeaway is that "use it or lose it" is a policy question with legal edges, not a free choice, and it differs by province. Whatever cap you set, confirm it against your own province’s employment standards, put it in writing, and then make sure your tracking actually enforces it instead of leaving it to memory in December.
A short checklist for moving off the spreadsheet
When a spreadsheet stops keeping up, you do not need an enterprise HCM to replace it. You need a system that holds the policy, does the math, and lets employees see their own balance. Look for these:
- Provincial policies built in, so entitlements and vacation-pay percentages are right by default and you are not encoding employment standards by hand.
- Automatic accrual, so the balance updates every period without anyone touching a formula.
- Carryover handled with a cap you set, applied automatically at year end instead of by memory.
- Proration for mid-year hires and tenure step-ups, so a new hire and a five-year employee both land on the right number.
- Employee self-service, so people can see their balance and request time off without emailing HR, and every approved request adjusts the balance automatically.
- Multi-location and multi-province scoping, so one team can run a more generous policy without rewriting it for everyone.
How Workleaf handles this
Workleaf is built for exactly this problem. Canadian provincial vacation minimums ship as ready-made time-off policies, so you choose a policy rather than encoding employment standards in a spreadsheet. Employees request time off from a self-service view and every approved request adjusts their balance, so the number people see is the number the system keeps. Balances accrue automatically each period, and carryover is calculated by the system at the turn of the vacation year rather than reconstructed by hand in December. Because scoping is multi-division, multi-location and multi-department, one location can run a more generous policy without changing everyone else’s. And it works the same in English and French, on both the admin and the employee side.
To be straight about where we are: Workleaf is early-access and pre-launch, and it is a system of record for your people data, not a payroll provider. It tracks entitlements, balances and requests and sits alongside the payroll you already run to actually pay out vacation pay. If you need something we do not do yet, we will tell you plainly.
If you are still comparing tools, our guide on what to look for in a Canadian HRIS walks through the rest of the checklist, from bilingual support to data ownership.
Pricing is simple and public. Basic is $15 CAD per month for up to 10 employees, then $1.50 CAD per additional employee. Advanced is $30 CAD per month for up to 10 employees, then $3 CAD per additional employee. No quotes, no surprises.