How hours worked are calculated
Convert both times to minutes after midnight, subtract, and take off the unpaid break. If the end is earlier than the start, add 24 hours (1,440 minutes) first. Divide the minutes by 60 for decimal hours.
Minutes worked = (End − Start, + 1,440 if overnight) − Break
Decimal hours = minutes worked ÷ 60. In h:mm, hours = minutes ÷ 60 rounded down and the remainder is the minutes.
Example: a day shift
08:45 to 17:15 with a 30-minute unpaid break.
- Time between: 510 minutes (8 hours 30 minutes)
- Less the break: 510 − 30 = 480 minutes = 8:00
- Decimal hours: 480 ÷ 60 = 8.00
Example: an overnight shift
22:00 to 06:30 with a 45-minute break. The end is earlier than the start, so the shift crosses midnight.
- Time between: (06:30 + 24:00) − 22:00 = 510 minutes
- Less the break: 510 − 45 = 465 minutes = 7:45
- Decimal hours: 465 ÷ 60 = 7.75
Example: three days
- Mon: 09:00 to 17:30, 30-minute break = 480 minutes
- Tue: 09:15 to 17:00, 30-minute break = 435 minutes
- Wed: 08:30 to 16:45, 45-minute break = 450 minutes
- Total: 480 + 435 + 450 = 1,365 minutes = 22:45 = 22.75 decimal hours
Questions
How do I convert hours and minutes to decimal hours?
Divide the minutes by 60 and add them to the hours. 7 hours 45 minutes is 7 + 45 ÷ 60 = 7.75 hours; 8 hours 20 minutes is 8.33 hours. The calculator shows both forms.
How are overnight shifts handled?
If the end time is earlier than the start time, the shift is taken to run past midnight into the next day. A shift from 22:00 to 06:30 is 8 hours 30 minutes before any break.
What if the start and end time are the same?
That counts as 0 hours, not 24. For a span of a day or more between two dates, use the time duration calculator.
Does it handle daylight saving time?
No. It works with clock times on a single day, so a shift during which the clocks change will be an hour off. Add or subtract that hour yourself.
Does it work out pay or overtime?
No, only hours. Take the decimal hours it gives you and multiply by your rate; the decimal form is the one to use for that.
How do I enter a break?
Put the unpaid break in minutes. Leave it blank for none. A break longer than the shift is flagged as an error.