How to calculate hours worked
For each shift:
- Find the elapsed time: the end time minus the start time. If the shift ends after midnight, count to midnight and then on into the next day.
- Subtract unpaid breaks, such as an unpaid meal break. Paid breaks stay in.
- Add up the shifts in hours and minutes, and convert to decimal hours only at the end.
Adding hours and minutes first, and converting once, avoids the small errors that come from rounding each shift to a decimal and then adding.
Worked example
Two shifts: 8:57 AM to 5:04 PM with a 30-minute unpaid lunch, and an overnight shift from 10:00 PM to 6:30 AM with a 45-minute unpaid break.
| Shift | Elapsed | Unpaid break | Paid |
|---|---|---|---|
| 8:57 AM – 5:04 PM | 8h 07m | 30m | 7h 37m |
| 10:00 PM – 6:30 AM | 2h 00m + 6h 30m = 8h 30m | 45m | 7h 45m |
| Total | 16h 37m | 1h 15m | 15h 22m |
15 hours 22 minutes is 15 + 22 ÷ 60 = 15.3667 hours, or 15.37 hours to two decimals.
How rounding changes the same shifts
Some employers round each clock-in and clock-out to a step, such as the nearest 5, 6 or 15 minutes. The same two shifts come out differently under each rule, because 8:57 AM and 5:04 PM land on different steps. The overnight shift starts and ends on the hour, so it doesn’t change.
| Rounding | First shift rounded | Total paid | Difference |
|---|---|---|---|
| Exact | 8:57 AM – 5:04 PM | 15h 22m | — |
| Nearest 5 minutes | 8:55 AM – 5:05 PM | 15h 25m | +3m |
| Nearest 6 minutes | 9:00 AM – 5:06 PM | 15h 21m | −1m |
| Nearest 15 minutes | 9:00 AM – 5:00 PM | 15h 15m | −7m |
Rounding happens at each punch, not on the week’s total, and the break is subtracted at its real length. A time exactly halfway between two steps, like 8:03 with 6-minute rounding, goes to the later step (8:06). Timecard rounding explained covers how rounding works and how to check whether it evens out over time.
Converting minutes to decimal hours
Payroll often shows hours as decimals. Divide the minutes by 60:
| Minutes | Decimal hours |
|---|---|
| 6 | 0.1 |
| 15 | 0.25 |
| 20 | 0.33 (0.3333…) |
| 30 | 0.5 |
| 40 | 0.67 (0.6667…) |
| 45 | 0.75 |
| 50 | 0.83 (0.8333…) |
So 7 hours 45 minutes is 7.75 hours, but 7:45 is not 7.45 hours. Mixing the two up is one of the most common mistakes when checking a timesheet.
Overnight and 24-hour shifts
The calculator uses clock times without dates. An end time earlier than the start time is read as the next day, so 10:00 PM to 6:30 AM is 8 hours 30 minutes, and 4:00 PM to 12:00 AM (midnight) is 8 hours. A shift can’t be longer than 24 hours.
When the start and end are the same time, the calculator doesn’t guess. Either it’s a mistake, or the shift lasted exactly 24 hours: select “Full 24-hour shift” for that shift, and the end time is taken to be the same time the next day.
Daylight saving time
Because the times have no date or time zone, the calculator can’t tell when a shift crosses a daylight-saving change. On the night the clocks go forward, a 10:00 PM to 6:00 AM shift really lasts 7 hours; on the night they go back, 9 hours. This calculator shows 8 hours either way. The EarnSure app records the time zone of each shift and counts the real time.
Which breaks are unpaid?
That depends on the law where you work and on your employer’s policy, not on this calculator. Under US federal rules, short rest breaks of about 5 to 20 minutes are generally counted as hours worked, while a bona fide meal period, ordinarily 30 minutes or more, during which you’re completely relieved from duty generally isn’t. Many states have their own meal and rest break rules. Enter only the breaks your employer treats as unpaid.
What this calculator doesn’t do
- Pay: it adds up time. To turn hours into gross pay with overtime, use the overtime pay calculator.
- Dates, time zones and daylight saving, as above.
- Rounding up or down only, or different rules for clock-in and clock-out: it offers nearest 5, 6 or 15 minutes for both.
- Break times on the clock: a break is a number of minutes, so it’s never rounded. If your employer rounds break punches too, the result can differ by a few minutes.
- Automatic break deductions and decisions about which time the law requires to be paid.
Questions
How do I calculate hours worked with a lunch break?
Take the end time minus the start time, then subtract the unpaid lunch. 8:00 AM to 4:30 PM with a 30-minute unpaid lunch is 8 hours 30 minutes minus 30 minutes: 8 hours.
How do I calculate hours for a shift that goes past midnight?
Count to midnight, then add the time after it. 10:00 PM to 6:30 AM is 2 hours before midnight plus 6 hours 30 minutes after: 8 hours 30 minutes. The calculator does this when the end time is earlier than the start.
Is 7:45 the same as 7.45 hours?
No. 7 hours 45 minutes is 7.75 hours, because 45 minutes is three quarters of an hour. 7.45 hours is 7 hours 27 minutes.
Why does rounding change my total?
Each punch moves to the nearest step, so a shift can gain or lose a few minutes. Over many shifts the differences may even out, or they may not, depending on when you usually clock in and out.
Are my times stored or sent anywhere?
No. The calculation runs on this page, in your browser. Nothing you type is sent to a server or saved, and reloading the page clears it. This website sets no cookies and has no analytics.
Can EarnSure keep track of this for me?
Yes. The EarnSure app records each shift to the second in the time zone you worked it, with breaks you start and end, your job’s rounding rules, and the original times kept when you fix a punch.
Sources
- U.S. Department of Labor, Fact Sheet #22: Hours Worked Under the Fair Labor Standards Act
- Code of Federal Regulations, 29 CFR 785.18, Rest and 29 CFR 785.19, Meal (Legal Information Institute, Cornell Law School)
- Code of Federal Regulations, 29 CFR 785.48, Use of time clocks (rounding)
- U.S. Department of Labor, Fact Sheet #21: Recordkeeping Requirements under the FLSA
Checked October 23, 2026. This calculator and page explain common calculations. They aren’t legal, tax or financial advice.