Hours Calculator
Work out exactly how many hours you worked — subtract unpaid breaks, handle overnight shifts, and get payroll-ready decimal hours. Free, no sign-up.
End time earlier than start time? We treat it as an overnight shift automatically.
How the hours calculator works
Enter your start time and end time, then enter any unpaid break in minutes — a lunch break, for example. The calculator converts both clock times to minutes, subtracts the break, and shows the result two ways: as hours and minutes (7h 30m) and as decimal hours (7.50), which is the format payroll systems expect.
Use Single day mode for one shift, or switch to Full week mode to build a complete weekly timesheet: check the days you worked, enter each shift, and the weekly total updates as you type. Add your hourly rate to see estimated gross pay. One click copies the result so you can paste it into a timesheet, an email, or a note.
Why 8:45 is not 8.45 hours
The single most common timesheet mistake is treating hours-and-minutes like a decimal number. 8:45 means 8 hours and 45 minutes, and 45 minutes is three quarters of an hour — so in decimal form it is 8.75, not 8.45. If you enter 8.45 on a payroll system you are quietly throwing away about 18 minutes of pay. Every result on this site shows both formats so you can double-check at a glance.
Overnight shifts and daylight saving
If your end time is earlier than your start time — say 11:00 PM to 7:00 AM — the shift crossed midnight. This calculator automatically adds a day to the end time before subtracting, so a graveyard shift comes out as 8 hours, not a negative number. Note that on the two daylight-saving transition nights a real shift is one hour shorter or longer than the clock suggests; payroll systems handle this differently, so check with your employer on those specific dates.
Worked examples
| Shift | Unpaid break | Hours (h:mm) | Decimal |
|---|---|---|---|
| 7:00 AM – 3:00 PM | none | 8h 00m | 8.00 |
| 7:00 AM – 3:00 PM | 30 min | 7h 30m | 7.50 |
| 9:00 AM – 5:00 PM | 60 min | 7h 00m | 7.00 |
| 11:00 PM – 7:00 AM | 30 min | 7h 30m | 7.50 |
| 6:30 AM – 2:45 PM | 45 min | 7h 30m | 7.50 |
| 2:00 PM – 10:15 PM | none | 8h 15m | 8.25 |
Who uses this hours calculator
- Hourly employees checking their timesheet against their paycheck before payday.
- Freelancers and contractors adding up billable hours for an invoice.
- Shift workers on rotating or overnight schedules who need overnight spans handled correctly.
- Small-business owners totalling a week of handwritten time cards before running payroll.
Questions people ask
How do I calculate hours worked between two times?
Convert both times to minutes, subtract the start time from the end time, then divide by 60. For example, 9:00 AM to 5:00 PM is 480 minutes, which is 8 hours. Subtract any unpaid break before dividing — a 30-minute lunch turns 8 hours into 7.5.
How do I calculate hours worked minus a lunch break?
First calculate the total span between clock-in and clock-out, then subtract the unpaid break in minutes. Example: 8:00 AM to 4:30 PM is 510 minutes; minus a 30-minute lunch leaves 480 minutes, or 8.00 decimal hours.
How do overnight or graveyard shifts work?
If the end time is earlier than the start time, the shift crossed midnight. For example, 11:00 PM to 7:00 AM is 8 hours, because the calculator adds 24 hours to the end time before subtracting. Our tool detects this automatically.
What is 8:45 in decimal hours?
8 hours 45 minutes equals 8.75 in decimal hours, because 45 minutes is 45/60 = 0.75 of an hour. Payroll systems almost always use decimal hours, so 8:45 should be entered as 8.75, never 8.45.
How many hours is 7am to 3pm?
7:00 AM to 3:00 PM is exactly 8 hours. With a 30-minute unpaid lunch it is 7.5 hours, and with a 1-hour lunch it is 7 hours.
Why does my paycheck show 7.88 hours instead of 7 hours 53 minutes?
Payroll converts minutes to decimal. 53 minutes is 53/60 = 0.883, which rounds to 0.88. Some employers round to the nearest quarter hour instead, so 53 minutes might appear as 7.75 or 8.0 depending on their rounding policy.