Work Hours Calculator

How to calculate hours worked

This calculator works out hours worked from a start time, end time, and an unpaid break, in two modes: a single shift, or a full Monday-to-Sunday weekly timesheet with a running total. An end time earlier than the start time is treated as an overnight shift rather than an error, so late-night or graveyard shifts still calculate correctly.

How to use it

For a single day, enter your start time, end time, and break length in minutes — the result shows hours worked as both a duration (like "8h 0m") and decimal hours (like "8.00") for payroll-style math. For a weekly timesheet, fill in start, end, and break for each day you worked and leave the rest blank; each row totals itself, and the week sums at the bottom. Nothing is saved — the timesheet resets if you leave the page.

Example work shift

A 9:00 AM to 5:30 PM shift with a 30-minute break comes out to exactly 8 hours worked (8.00 decimal hours).

Weekly hours

Weekly timesheet mode holds one row per day, Monday through Sunday. Fill in a start time, end time, and break length only for the days actually worked and leave the rest blank — each row totals itself while the week sums at the bottom, so you can see both the daily and the full-week total without adding shifts up by hand. Five identical 8:30 AM to 5:00 PM shifts with a 30-minute break, for example, total 40 hours for the week.

Overnight shifts

If your end time is earlier than your start time — a 10:00 PM to 6:00 AM shift, for example — the calculator recognizes that as an overnight shift rather than treating it as an error or a negative duration. It assumes the shift ends the following day and calculates the correct number of hours worked.

Common use cases

  • Checking a single shift's hours before submitting a timesheet
  • Building a full weekly timesheet total across multiple shifts
  • Converting hours worked into decimal hours for payroll or invoicing
  • Calculating overnight or graveyard shift durations that cross midnight

Frequently asked questions

How many hours did I work?

Enter your start time, end time, and break length in minutes in "Single day" mode — the result shows total hours worked as both a duration and as decimal hours.

Do I subtract lunch breaks myself?

No — enter your unpaid break length in minutes and it's subtracted from the total automatically.

Can I calculate multiple shifts?

Yes — switch to "Weekly timesheet" mode to enter a start, end, and break for each day of the week, with a running weekly total.

Can it handle overnight shifts?

Yes — if the end time is earlier than the start time, it's treated as an overnight shift rather than an error, so a shift like 10 PM to 6 AM calculates correctly.