Counting hours looks like the easy part of the job, and it is the part that generates the most month-end arguments. Not because anyone is cheating, but because there are four or five points where it is perfectly normal to get it wrong, and everyone gets it wrong in the same way.
If you only need this week's number, the worked hours calculator does it in thirty seconds. If you want to understand where it breaks, read on.
The mistake nearly everyone makes: minutes are not decimals
This is the first and the costliest. A shift of 7 hours 45 minutes is not 7.45 hours, it is 7.75. Minutes run in base sixty, decimals in base ten, and across a month the gap turns into real money.
The conversion is a division by sixty:
- 15 minutes = 0.25
- 20 minutes = 0.33
- 30 minutes = 0.50
- 45 minutes = 0.75
- 50 minutes = 0.83
Adding times in 7:45 format is perfectly fine, as long as you add them as times all the way through. The mess starts when both formats live in the same column: some cells in 7:45, others in 7.75, and the total never agrees with anything.
The five-step method
1. End minus start. Per day, not per week. Weekly totals calculated directly are impossible to check when somebody disputes a single day.
2. If the end is earlier than the start, add twenty-four hours. That is the shift crossing midnight: 22:00 to 06:00 is eight hours, not minus sixteen. In Excel you solve it with MOD(end-start,1), by hand you count to midnight and start again.
3. Subtract unpaid breaks. Only the unpaid ones: where the contract treats the break as working time, it stays in. This is error source number two, and it varies from contract to contract. The picture is in rest breaks during a shift.
4. Convert to decimals once, at the end. Not day by day: intermediate rounding accumulates.
5. Compare against contracted hours. The number on its own says nothing. You need the difference, with its sign, and you need to know whether that difference is overtime, time off in lieu or an hour bank balance.
Rounding
The rule here is less technical than it sounds: a rounding policy has to be chosen, written down and applied identically to everyone. To the quarter hour, to five minutes, to the minute: all defensible choices.
What is not defensible is asymmetry: rounding late arrivals down and not rounding late finishes up. Systematised across a month that becomes unpaid work, and at that point it stops being a question of method.
Two practical points:
- rounding applies to the daily total, not to each individual clock event;
- systematic minutes (the ten minutes past the hour every evening) are not a rounding problem, they are a planning problem. We wrote about it in overtime.
What you have to keep
Hours are not only for payroll: they are also how you demonstrate that the limits were respected.
In the UK an employer must keep records adequate to show the 48-hour average limit is being complied with, and National Minimum Wage records have to be kept for six years. Spain has required a daily record of hours for every worker since 2019, retained for four years. Italy records each employee's hours in the Libro Unico del Lavoro, compiled monthly.
The common denominator is that the record has to be kept separate from the plan. The plan says what you intended, the record says what happened. If the two live in the same file, overwriting each other, you have nothing to show the first time it is questioned.
Going from the week to the month
One last trap, subtler. A month almost never contains a whole number of weeks, so the monthly total is not the sum of four weeks, it is the sum of the days in the month. If your sheet is organised by week, the straddling days have to be split, and always split the same way.
The same applies to the 48-hour average, which runs on rolling periods rather than the calendar: the reasoning is in how many hours can you work per week.
In Sked Solve planned hours and clocked hours sit side by side, with the balance visible to the person earning it. See how it works at Sked Solve.
