Your annual leave spreadsheet, and when to leave it
Almost every small company tracks holidays in a spreadsheet, and that is a reasonable thing to have done. It is free, it is familiar, and it is right until the day it is not. This page is about the four specific ways an annual leave spreadsheet goes wrong, how to tell whether yours has reached that point, and how to move a part-finished leave year out of one without re-typing it.
What the spreadsheet is actually good at
It deserves the credit. A sheet with names down the side and dates across the top is a genuinely good design — it is the paper wall planner, and the wall planner worked for decades.
It costs nothing. It needs no decision, no procurement, no account for anybody. It can be reshaped in a minute when the business changes. And anybody can read it, which is more than can be said for a lot of software.
The problem is never the grid. It is everything that has to happen around the grid.
The four places it goes wrong
Only one person can see it. It is on a laptop, or in a folder somebody has to be sent a link to. So people ask instead of looking, and the asking lands on whoever maintains the sheet. Everyone who wanted to check a date before requesting it simply does not.
The arithmetic drifts. Days have to be counted by hand, around weekends, around bank holidays, around the fact that one person works three days a week. One mis-counted range in February, and every balance after it is wrong — and nobody notices until somebody is told they have two days left when they have five.
Nothing is pending. A sheet records decisions. A holiday that has been asked for but not yet agreed has nowhere to live, so it lives in an email, and the second person to ask for that week does not know the first one did.
It does not leave the sheet. The dates are in the file and nowhere else, so they are not in anybody's calendar. The week somebody booked in March is a surprise to the person scheduling the meeting in June.
How to tell you have crossed the line
Three fairly reliable signals.
Somebody has asked "how many days do I have left?" and the honest answer took more than a minute. Two people have asked for overlapping dates and nobody spotted it until afterwards. Or: you have started keeping a second place — an email folder, a chat thread, a note — where requests wait until they can be entered into the sheet.
That second place is the real tell. The moment the spreadsheet needs a staging area, it has stopped being the record and become a report.
Moving a part-finished year without re-typing it
This is the bit that stops people, and it is a ten-minute job.
Export your sheet as CSV. If it has a column of names and a column of allowances, that is the team — include a carry-over column if you track one, and a column saying which weekdays each person works if anybody is part-time.
If you also have a list of holidays already booked — a name, a start date, an end date — export that as a second CSV. It loads as leave already in place, matched to people by name, and anybody who appears there and not on the team sheet is added rather than dropped.
Then set the leave year's start date and the country, and the public holidays fill themselves in. From that point the counting stops being yours. And if you ever want the sheet back, both halves export as CSV again, which is a reasonable thing to check before trusting anything with a leave year.
Frequently asked questions
What columns should my CSV have?
For the team: a name column and an allowance column, optionally a carry-over column and a column listing the weekdays somebody works. For leave already booked: a name, a start date and an end date in YYYY-MM-DD, optionally a status and a note. Headers can be in any order.
Will it handle somebody who works three days a week?
Yes. Tick the days they actually work and the chart stops charging them for the days they do not. It will also suggest a pro-rated allowance based on that pattern, which you can overwrite — what their contract says is the number that counts.
Can I keep using the spreadsheet as a backup?
Yes, and it is not a bad habit. Export the team and the leave as CSV whenever you like; both are plain files you can keep wherever you keep everything else.
Do I have to start at the beginning of the leave year?
No. Set the leave year start date to whatever yours is — 1 January for most companies, 1 April for many in the UK — and import what has already been taken. The balances pick up from there.
More guides
Other things we made
Also in English, made by the same people.
Also in English, made by the same people.
Also in English, made by the same people.
Also in English, made by the same people.