Employee Records Register
Keep one reliable people register: contracts, hours, pay, probation ends and document expiries, with headcount, full-time equivalent and annualised cost worked out for you. Runs entirely in your browser — nothing is uploaded.
Version 1.0.0 · Updated Aug 6, 2026
Overview
Frequently asked questions
Is the Employee Records Register really free?
Yes. The Employee Records Register is a free download with every feature included — no trial period, no locked features and no account required.
Does my data stay private when I use the Employee Records Register?
Yes. The tool is a single HTML file that runs entirely on your computer and makes no network requests, so nothing you enter is ever uploaded or shared.
Does the Employee Records Register work offline?
Yes. Once downloaded it runs completely offline in any modern browser — no internet connection, installation or plugins needed.
Do I need Excel or any other software to use the Employee Records Register?
No. It replaces the spreadsheet template entirely: open the file in your browser (Chrome, Edge, Firefox or Safari) on Windows, Mac, Linux or a tablet, and start working.
How to use Employee Records Register
The complete in-tool guidance, reproduced here so you can read it before you download.
What this tool does
CM8-25 is the people register most small employers keep badly in a spreadsheet: one row per person, with the contract facts that matter and the dates that catch you out. From that it works out headcount, full-time equivalent, annualised pay cost, length of service, and what is coming up — probation ends, right-to-work document expiries, fixed-term contract ends and reviews.
Everything runs inside this single file. There is no account, no upload and no network request of any kind, so names, salaries and document dates never leave the computer you are using. That matters more here than in almost any other tool in the suite, because everything in this register is personal data about identifiable people.
What to record
Keep one row per person for as long as you are required to keep their record — including leavers. Deleting a leaver destroys your service history, your turnover figures and the evidence that you employed them at all. Enter their end date instead: they drop out of headcount, cost and FTE immediately, but stay in the register.
- Employee reference — whatever your payroll uses. It is what lets you match this register to a payslip without passing names around.
- Start date — the first day of continuous service, not the offer date and not the day the contract was signed. Service, status and the monthly chart all hang off it.
- Contracted hours per week — what the contract says, not what the person actually worked last week. Overtime does not belong here; it would inflate FTE and the cost figures.
- Salary or rate with the matching pay basis. Get the pair right or every cost figure in the tool is wrong by a factor of twelve.
- Note — working pattern, cover arrangements, anything the next person to open the file needs. Keep health, disciplinary detail and anything sensitive out of it; see Personal data below.
Employment types
The six types cover how someone is engaged rather than what they do. They overlap in one place on purpose: a part-time person is usually also permanent. Use part time where you want reduced hours called out in the breakdown, and rely on FTE — which comes from the hours, not the type — for anything numerical. The type never changes a calculation.
Agency and contractor deserve care. People in those categories are usually not your employees, are often paid by somebody else, and may not belong in a figure you describe as headcount or payroll. They occupy work and cost money, so the tool counts them; filter them out before you quote employee numbers to an accountant, an insurer or a funder. Whether an engagement genuinely is a contract for services is a question of substance, not of what the paperwork is called, and it is decided differently in different countries.
Headcount, status and service
Status is worked out from the dates, never typed in. Somebody with a start date in the future is a future start; somebody whose end date has passed has left; somebody employed whose probation end date has not yet arrived is in probation; everyone else is employed. Only people with the status employed or probation count towards headcount, FTE and cost.
Length of service (years) = (end date, or today if still employed − start date) ÷ 365.25
The 365.25 accounts for leap years, so ten years of service reads as 10.0 rather than 10.03. Service is frozen at the end date for leavers, which is what you want in a service band chart. It is a simple elapsed calculation: it does not know about unpaid breaks in service, TUPE-style transfers of previous employment, or any national rule about what counts as continuous. Where continuity matters legally, work it out properly.
Full-time equivalent
Headcount counts people. FTE counts contracted hours, which is what you need for cost per head, ratios and most funding or grant returns.
FTE = contracted hours per week ÷ standard full-time week (Settings)
Set the standard week to whatever full time means in your contracts. Thirty-five, 37.5 and 40 are all common and the choice changes every FTE figure in the tool, so state it whenever you publish one. Somebody contracted above the standard week produces an FTE above 1.00; the tool does not cap it, because capping would quietly hide a contract that needs looking at.
Anyone with no contracted hours recorded has no FTE and is left out of the FTE total rather than being assumed to be full time. The headline tile tells you how many people that applies to. If that count is not zero, the FTE figure understates your workforce and you should fix the gaps before quoting it.
Annualising pay
To compare a salary with an hourly rate you have to turn both into an annual figure, and that cannot be done without assumptions. This tool makes them explicit and puts them on the Settings tab rather than burying them in the code:
Annual salary → as entered Monthly salary → monthly × 12 Hourly rate → rate × contracted hours per week × paid weeks per year Daily rate → rate × (contracted hours per week ÷ standard day) × paid weeks per year where standard day = standard full-time week ÷ standard working days per week
Paid weeks per year defaults to 52. Use 52 where holiday is paid, which is the normal case for salaried and most hourly staff — the person is paid across the whole year. Reduce it, to 46 or 48, only for casual work paid strictly for weeks actually worked. A year is 52.18 weeks, so 52 understates by about 0.3 per cent; that is smaller than any other error in this calculation and is not worth chasing.
Standard working days per week exists only to convert a daily rate. Dividing the standard week by it gives the length of a standard day, and the person's contracted hours divided by that gives how many days a week they actually work — so a three-day-a-week person on a daily rate is not costed as though they worked five.
An hourly or daily rate cannot be annualised without contracted hours. The tool refuses to guess. It shows a dash for that person and leaves them out of the payroll total, and the headline tile tells you how many people were excluded. A monthly or annual salary needs no hours at all — a part-timer's monthly salary already reflects their reduced hours, so it must never be pro-rated a second time.
What comes out is contractual pay cost and nothing more. It excludes employer taxes and social charges, pension contributions, benefits, insurance, overtime, commission, bonuses, agency margins and the cost of recruiting anybody. Depending on the country, the real cost of employing somebody is commonly a fifth to a third above the figure shown here. Treat it as a floor.
Probation, documents and reviews
Four dates feed the Dates to watch table: probation end, right-to-work document expiry, fixed-term contract end and next review. Anything already past its date is marked Overdue; anything falling inside the warning window set in Settings is Due soon.
Probation ends are only listed while they are in the future or have passed within the warning window — otherwise every long-serving employee would appear as permanently overdue. Document expiries are always listed, however long ago they passed, because an expired document is not something that stops mattering.
The right-to-work field records the expiry of the document you hold. It records nothing else. This tool does not check, verify or validate anybody's right to work; it will not tell you which documents are acceptable, when a check must be repeated, or what a valid check consists of, because that is set nationally and changes. Do the check properly, keep the evidence, and use this only as the reminder that a date is coming.
The contract checkbox is a simple yes or no. An unsigned contract on somebody who has already started is one of the most common and most expensive gaps in a small employer's records, so the headline tile counts them across everyone employed or due to start.
Starters, leavers and turnover
Starters and leavers are counted over a trailing window you set in days — 365 by default. A starter is anybody whose start date falls in the window and has already arrived; a leaver is anybody whose end date falls in it. Future starts are deliberately not counted as starters until they start.
The leavers tile also shows leavers as a percentage of current headcount. That is a rough proxy for turnover and not the real thing: a proper turnover rate divides leavers by average headcount over the period, which needs a headcount history this register does not hold. In a growing business the proxy understates turnover; in a shrinking one it overstates it. Quote it with its basis attached or not at all.
In an organisation of ten or twenty people, one leaver moves the percentage by five or ten points. Read the monthly chart and the direction of travel over years, not the number in any single month.
Cost by department
The department table shows headcount, FTE, annualised cost, cost per FTE and each department's share of total cost, sorted by cost. Cost per FTE is shown only where every currently employed person in that department has both a pay figure and contracted hours; otherwise it shows a dash, because dividing a partial cost by a partial FTE produces a confident number that is simply wrong.
Cost per FTE is useful for spotting a department carrying more senior cost than its size suggests. It is not a productivity measure and it says nothing about whether the pay is right, fair or competitive.
The date filter
The from and to filter applies to the start date. That makes it a cohort filter — everyone who joined in a given period — and not a headcount-as-at-a-date filter. Setting it to the last 30 days leaves you with the people who started in the last 30 days, and every tile then describes only them.
For a true picture of the whole workforce, clear the date filter before reading the tiles, printing a report or quoting a payroll figure. The scope line under the report title always states the filter in force, so check it on anything you circulate. The department and employment-type filters are safe to use at any time: they narrow who is included without changing what the dates mean.
Personal data
Everything in this register is personal data about identifiable people. Some of what employers keep alongside a people register — health and sickness detail, union membership, ethnicity, religion, biometric and criminal-record information — is special category data almost everywhere, with stricter conditions on holding it at all. This tool has no field for any of it, and the note field is not the place to put it.
Keeping the record here is not a lawful basis for holding it. You need your own basis, your own retention period and your own way of telling people what you hold. Keep records only as long as you are required or genuinely need to, and delete the rest. Retention periods for employment records differ by country and by record type, and are often several years after someone leaves.
Practical steps that cost nothing: use initials and an employee reference rather than full names if the file will be opened in front of others; store exports somewhere access-controlled and encrypted rather than a shared drive everybody can read; and remember that a browser profile on a shared machine is readable by everyone who uses that profile.
Printing and sharing
Print Report produces a report from whatever the current filter shows: header, the six headline figures, all four charts, the department cost table, the dates to watch, the full register and your closing notes. Print to PDF to circulate it — and think before you do, because the register carries names and salaries. A department-filtered report, or one built from a register keyed by reference rather than name, is usually the safer thing to hand round.
Saving your work
People, settings and the report header are written to this browser's local storage as you type, and the toolbar shows the time of the last save. That storage belongs to one browser on one computer: another browser, a private window, a second machine or a clean-up tool that clears site data will not have it.
Treat Export .json as the real save — one file containing everything, which Import .json restores anywhere. Export CSV gives you the register for spreadsheet work, including every derived figure and every filtered record, not only the rows drawn on screen. Reset asks twice, then erases everything this tool has stored. There is no undo.
Accuracy & disclaimer
This tool records what you enter and calculates from it. It cannot tell whether a start date is right, whether somebody is genuinely a contractor, whether the document you hold is acceptable, or whether the pay basis matches the contract — and the headline figures depend on all four.
Employment status tests, minimum wage and working time rules, probation and notice periods, right-to-work checking duties, record-retention periods and data protection law all differ by country and often by sector. This is an internal record-keeping and calculation aid. It is not employment advice, not a payroll system, not a compliance check, and not a substitute for a signed contract or professional advice on any of the above.
Related tools
Track every candidate through every vacancy, see where the pipeline is stuck, and work out your real time to hire, offer acceptance rate and cost per hire. Runs entirely in your browser — nothing is uploaded.
Track annual leave, sickness and every other absence in one register: entitlement and balance per person, Bradford Factor, cover clashes and a printable report. Runs entirely in your browser — nothing is uploaded.
Track who is trained on what, work out when each certificate runs out, and see your compliance rate on the training that is actually required. Runs entirely in your browser — nothing is uploaded.