Time Duration Calculator: How to Find the Hours Between Two Times Without Slipping on the 60-Minute Hour
Work out the hours between two times for timesheets and shift pay, handle shifts that cross midnight, and avoid the base-10 mistake that breaks manual clock math.
Time Duration Calculator: How to Find the Hours Between Two Times Without Slipping on the 60-Minute Hour
Clock math looks like the easiest arithmetic on earth until you actually try it on paper at the end of a pay period. Someone clocked in at 9:15 and out at 17:45, took a 30-minute break, and worked three split shifts that week, one of which ran past midnight. Now add it all up and tell payroll how many hours to pay. This is where the subtraction that "should take ten seconds" quietly produces a wrong number, and the wrong number becomes a wrong paycheck.
The reason is simple and worth saying out loud: minutes do not carry in base 10. A normal number rolls over at 10 — 9 plus 1 is 10. An hour rolls over at 60. So when you subtract two clock times the way you'd subtract two ordinary numbers, you get an answer that is off by however much that hidden base-60 boundary cost you. The time duration calculator exists to take that boundary off your hands so you never have to think about it again.
Why Manual Subtraction Trips on the Hour
Here is the trap in one example. Go from 9:50 to 10:10. Your gut, treating the digits like decimals, wants to subtract 9.50 from 10.10 and call it 60 — a full hour. But it isn't. From 9:50, ten minutes gets you to 10:00, and another ten gets you to 10:10. That's 20 minutes, not 60. The two extra zeros after the colon are not tenths of anything; they are minutes out of sixty, and base 10 has no idea that 60 is the ceiling.
The same trap shows up whenever the minutes of the end time are smaller than the minutes of the start time. Take 8:45 to 11:20. Subtracting straight down gives you 3 hours and "minus 25 minutes," which is nonsense, so you mentally borrow an hour — 60 minutes — turning it into 2 hours and 35 minutes. That borrow is correct, but it is also exactly the step people skip when they are tired or rushing through twelve rows of a timesheet. The right method is to convert both times to total minutes since midnight, subtract once, then split the result back into hours and minutes. 11:20 is 680 minutes, 8:45 is 525 minutes, the gap is 155 minutes, and 155 divided by 60 is 2 hours 35 minutes. The tool does that conversion every time, which is why it never borrows wrong.
A Worked Shift, Break Included
Let's run the most common real case all the way through: one shift with one break.
A worker is on from 9:15 to 17:45 and takes a 30-minute unpaid lunch. What do you pay?
- Convert the clock-out: 17:45 is 17 × 60 + 45 = 1065 minutes since midnight.
- Convert the clock-in: 9:15 is 9 × 60 + 15 = 555 minutes.
- Gross span: 1065 − 555 = 510 minutes, which is 8 hours 30 minutes.
- Subtract the break: 510 − 30 = 480 minutes.
- 480 minutes ÷ 60 = 8 hours flat.
Notice that the gross span landed on a clean 8 h 30 m only because we did the minute subtraction properly; eyeballing "9:15 to 17:45" as "8 and a bit" would have left you guessing at the bit. Drop the start and end into Between mode, read 8 h 30 m, then knock off the half-hour break and you have an honest eight hours to pay. No borrowing, no second-guessing the sign.
Crossing Midnight Without Going Negative
Night shifts are where naive subtraction doesn't just round wrong — it produces a negative number and stops making sense entirely. A shift from 23:00 to 07:00 subtracted straight gives you 7 minus 23, or minus 16 hours, because 7 is a smaller clock number than 23. Obviously nobody worked negative sixteen hours.
The fix is to recognize that the end time belongs to the next day. Flip the overnight toggle and the calculator adds 24 hours to the end before subtracting, so 23:00 to 07:00 reads a correct 8 hours, and 22:30 to 06:15 reads 7 h 45 m. This is exactly how a graveyard-shift timesheet is supposed to count the hours worked past midnight, and it is the single most common thing people get wrong by hand. If a shift "ends tomorrow," the overnight switch is not optional — it is the difference between a right answer and a number with a minus sign in front of it.
Decimal Hours: The Number Payroll Actually Wants
Here is the part that quietly causes the most pay disputes. You cannot multiply an HH:MM duration by an hourly rate. Trying to multiply 7 h 45 m by a $20 rate gives you 140 of something meaningless, because "7:45" is not the number 7.75 — it just looks adjacent to it.
To pay correctly you convert to decimal hours first: divide the minutes by 60 and add to the hours. 45 ÷ 60 = 0.75, so 7 h 45 m = 7.75 hours, and 7.75 × 20 = 155. A few worth memorizing so you can sanity-check the tool: 15 min = 0.25 h, 20 min = 0.33 h, 30 min = 0.5 h, 45 min = 0.75 h. The calculator shows the decimal value next to the HH:MM in every mode precisely so you stop reaching for the readable string when you should be reaching for the payable number. When you are figuring overtime premiums on top of base pay, push the decimal total into the overtime pay calculator rather than trying to layer the multiplier onto an HH:MM figure.
Adding Up a Week, and What Not to Type
I keep a running timesheet for a small contract team, and the mistake I made for an embarrassingly long time was typing clock times into the total instead of durations. I'd enter "08:00" meaning the row was the 8 a.m. start, when the timesheet wants "08:00" to mean eight hours long. Those are different facts. The week's total came out plausible-looking and wrong, and I only caught it when one day's "hours" was larger than the number of hours that exist in a day. Now my rule is fixed: clock-in and clock-out go through Between mode to become a duration first, and only the duration goes into the timesheet rows.
Done that way, stacking a week is painless. Add one row per day or per session — 08:00, 07:30, 08:15, and so on as durations — and the tool sums them to something like 38 h 45 m with the decimal total 38.75 sitting beside it. Add your hourly rate and it multiplies the decimal hours straight into gross pay. A day with a split shift just gets two rows. If what you actually need is to convert a pile of loose minutes and seconds into clean hours rather than to do clock arithmetic, the duration converter is the better fit; this tool is for "what time, how long between, how many hours this week."
The Short Version
Three habits cover almost every clock-math error. First, never subtract clock times like decimals — minutes carry at 60, not 10, so 9:50 to 10:10 is 20 minutes. Second, on any shift that ends the next day, turn on overnight so the end is read as tomorrow and you never go negative. Third, pay off the decimal-hour figure, never the HH:MM string, because 7 h 45 m is 7.75 hours and only one of those can be multiplied by a rate. Get those three right and the end-of-period total stops being a coin flip.
Everything runs in your browser tab, nothing is uploaded, and the link carries your inputs so a coworker opens the exact same times and result. For a confidential pay figure, copy the text instead of sharing the URL.
Made by Toolora · Updated 2026-06-13