HR Utilities
← All tools

Tenure Calculator

Length of service for a whole roster at once, as at whatever date you need, in years and months and days.

Reads .xlsx and .csv inside your browser. Your file never leaves your computer.

The spreadsheet

Drop a spreadsheet here

An employee list with a hire date column.

The four things that make this harder than subtraction

Month ends. Somebody hired on 31 January has no anniversary on 31 February. The anniversary is clamped to the last day the month actually has, which is what payroll systems do. So 31 January to 28 February is a whole month in an ordinary year and twenty-eight days in a leap year, because in a leap year the anniversary is the 29th and it has not arrived yet.

Leap days. Hired on 29 February 2020 and measured on 28 February 2021 is a full year, not three hundred and sixty-four days.

People who have left. This is the one that quietly ruins a spreadsheet. Without an end date column, everybody who has already gone keeps accruing service, and every average in the file drifts upward. Choose the end date column if your file has one.

People who have not started. A hire date in the future is not negative service. Those rows are counted separately and kept out of the averages rather than dragging them down.

Where the decimal comes from

Decimal years are total days divided by 365.25, which is the usual convention and accounts for leap years. Years, months and days are counted separately by calendar, so the two will not always agree to the second decimal place. Use the calendar figure for service awards and the decimal for averages.