Work hours calculator
Hours over a period from shift start and end with a break, night shifts included.
Fill in the fields and the result will appear here automatically.
Counts hours actually worked rather than working days on a calendar: the break is subtracted from the length of the shift, and what is left is multiplied by the number of shifts. Night shifts are handled separately — when the end is earlier than the start the shift crosses midnight, and a plain subtraction returns a negative number. Adding a day there is not a convenience fudge but the only way to get eight hours out of «22:00 — 06:00» instead of minus sixteen. A break longer than the shift is rejected: negative working time does not exist, and showing it would be plausible nonsense.
How it works
Formula and logic
Clock components and shift count must be whole numbers; hours 0–23 and minutes 0–59. When the end is not later than the start,1440 minutes are added: identical start and end mean a complete 24-hour shift here. A break is a non-negative whole minute count strictly shorter than the shift; an equal break is also rejected. Period hours = (shift length − break)/60 × shifts. Earnings = hours × entered rate; rate 0 is valid, negative or malformed rates are rejected. Rate and output must use the same currency, with no exchange conversion. Paid-break entitlement, overtime, tax, holidays and daylight-saving rules are not determined. Pay normally displays two decimal places. A positive amount below 0.005 currency units uses scientific notation so it is not mistaken for zero.
Example
A 9:00–18:00 shift with an hour's break gives 8 hours — 168 hours over 21 shifts, or 84000 at a rate of 500.
Fields and units
- Shift start, hours — h. Whole numbers within the displayed range; invalid entries are not clamped to a boundary.
- Shift start, minutes — min. Whole numbers within the displayed range; invalid entries are not clamped to a boundary.
- Shift end, hours — h. Whole numbers within the displayed range; invalid entries are not clamped to a boundary.
- Shift end, minutes — min. Whole numbers within the displayed range; invalid entries are not clamped to a boundary.
- Break, minutes — min. Whole minutes from 0, strictly shorter than the shift. An equal break is rejected.
- Number of shifts — unitless. Positive whole number of identical shifts; total working minutes must stay within the exact integer range.
- Hourly rate — currency units/h. Use one chosen currency unit for the rate and result; no currency exchange. 0 means no pay.
How to use
- — Enter the shift start time in hours and minutes.
- — Enter the end time — for a night shift simply give the morning hour.
- — Enter the length of the break in minutes.
- — Set the number of shifts in the period and the hourly rate.
Method and limitations
- Calculation method
- Formula and logic
- Limitation
- Rate and output must use the same currency, with no exchange conversion. Paid-break entitlement, overtime, tax, holidays and daylight-saving rules are not determined.
FAQ
How is a shift across midnight handled?
If the end time is earlier than the start time, a day is added to the difference. A 22:00–06:00 shift therefore gives eight hours rather than minus sixteen.
Why is a break longer than the shift rejected?
The break must be strictly shorter than the shift. An equal break is also rejected because this model requires positive working hours.
How is this different from counting working days?
This counts hours inside a shift, not days on a calendar. A working calendar with public holidays is a separate calculator.
Is overtime at a higher rate included?
No, the rate applies to every hour equally. For premium hours, count them as a separate shift at a different rate.
What does the shift length before the break show?
Total time on site from start to end, break included. Paid time is the row above, already without it.