How Timesheet Calculator works
Hours worked are the time between clock-in and clock-out, minus unpaid breaks. A 09:00 to 17:30 shift with a 30-minute lunch is 8 hours. This calculator does that subtraction for a whole list of shifts at once. Type or paste one shift per line as day, start time, end time and break minutes, and it returns a table of hours per shift plus the total, shown both as hours and minutes and as decimal hours for payroll. Add an hourly rate to see total pay. There are no fixed rows, so it handles one shift, a week, a fortnight or two shifts in one day, and it counts shifts that run past midnight.
Timesheet examples: a standard week, night shifts and split days
Each input is exactly what goes in the Shifts box, with lines separated by a slash here for space.
Standard week with a 30-minute lunch, paid at 18.50
Monday, 09:00, 17:30, 30 / Tuesday, 09:00, 17:00, 30 / Wednesday, 09:00, 17:30, 30 / Thursday, 09:00, 17:30, 30 / Friday, 09:00, 16:00, 30. Hourly rate 18.50
8h 00m, 7h 30m, 8h 00m, 8h 00m, 6h 30m. Total hours 38h 00m, Decimal hours 38.00, Total pay $703.00
This is the sample that loads with the page, with a rate added.
Three night shifts across midnight
Mon, 22:00, 06:00, 30 / Tue, 22:00, 06:00, 30 / Wed, 22:00, 06:15, 30. Hourly rate 21, Currency symbol £
7h 30m, 7h 30m, 7h 45m. Total hours 22h 45m, Decimal hours 22.75, Total pay £477.75
Split shift entered as two lines for the same day
Mon, 08:00, 12:00 / Mon, 13:00, 17:15 / Tue, 07:45, 16:20, 45
4h 00m, 4h 15m, 7h 50m. Total hours 16h 05m, Decimal hours 16.08
Leaving off the fourth value means no break is deducted. The gap between the two Monday lines is simply not counted.
Uneven punch times
Mon, 9:05, 17:20, 30 / Tue, 8:55, 17:40, 30. Hourly rate 16.80
7h 45m, 8h 15m. Total hours 16h 00m, Decimal hours 16.00, Total pay $268.80
Two-week pay period in one go
Nine lines of 08:00, 16:30, 30, one of which runs to 18:00, plus Fri, 08:00, 13:00, 0. Hourly rate 20
Total hours 78h 30m, Decimal hours 78.50, Total pay $1,570.00
Minutes to decimal hours conversion chart
Payroll multiplies decimal hours by the rate, so 7 hours 30 minutes is entered as 7.5, not 7.30.
| Minutes | Decimal hours | Minutes | Decimal hours |
|---|---|---|---|
| 5 | 0.08 | 35 | 0.58 |
| 6 | 0.10 | 36 | 0.60 |
| 10 | 0.17 | 40 | 0.67 |
| 12 | 0.20 | 42 | 0.70 |
| 15 | 0.25 | 45 | 0.75 |
| 18 | 0.30 | 48 | 0.80 |
| 20 | 0.33 | 50 | 0.83 |
| 24 | 0.40 | 54 | 0.90 |
| 25 | 0.42 | 55 | 0.92 |
| 30 | 0.50 | 60 | 1.00 |
The calculator works out pay from the exact minutes, not the rounded decimal. For 7h 37m at 20 an hour it shows 7.62 decimal hours and pay of 152.33, where multiplying the rounded 7.62 by 20 would give 152.40.
Common shifts and the hours they add up to
Hours worked per shift after the unpaid break, as returned by the calculator.
| Start | End | Break | Hours worked | Decimal |
|---|---|---|---|---|
| 09:00 | 17:00 | 30 min | 7h 30m | 7.50 |
| 09:00 | 17:00 | 60 min | 7h 00m | 7.00 |
| 08:00 | 17:00 | 60 min | 8h 00m | 8.00 |
| 08:00 | 16:30 | 30 min | 8h 00m | 8.00 |
| 07:00 | 15:30 | 30 min | 8h 00m | 8.00 |
| 06:00 | 14:00 | 20 min | 7h 40m | 7.67 |
| 14:00 | 22:00 | 30 min | 7h 30m | 7.50 |
| 22:00 | 06:00 | 30 min | 7h 30m | 7.50 |
| 07:00 | 19:00 | 60 min | 11h 00m | 11.00 |
| 09:00 | 13:00 | none | 4h 00m | 4.00 |
12-hour to 24-hour time for clock-in and clock-out
Start and end times must be in 24-hour format. Morning hours stay the same; add 12 to afternoon and evening hours.
| 12-hour | 24-hour | 12-hour | 24-hour |
|---|---|---|---|
| 12:00 AM (midnight) | 00:00 | 12:00 PM (noon) | 12:00 |
| 1:00 AM | 01:00 | 1:00 PM | 13:00 |
| 5:00 AM | 05:00 | 2:00 PM | 14:00 |
| 6:00 AM | 06:00 | 3:00 PM | 15:00 |
| 7:00 AM | 07:00 | 4:00 PM | 16:00 |
| 8:00 AM | 08:00 | 5:00 PM | 17:00 |
| 9:00 AM | 09:00 | 6:00 PM | 18:00 |
| 10:00 AM | 10:00 | 8:00 PM | 20:00 |
| 11:00 AM | 11:00 | 10:00 PM | 22:00 |
Include the colon. 09:00 and 9:00 are both accepted; 0900, 9am and 5:30 PM are not.
Input rules that prevent errors
- Separate the four values with commas. Spaces alone are not enough.
- The first value is always the label. It can be a weekday, a date, a name or anything else, but it must be there: a line that starts with the time is rejected or misread. Start the line with a comma to leave the label blank and it is shown as Shift 1, Shift 2 and so on.
- Times run from 00:00 to 23:59. Use 00:00 for midnight, not 24:00.
- If the end time is earlier than or equal to the start time, the shift is treated as ending the next day. Identical start and end times therefore count as 24 hours.
- Enter breaks as whole minutes. Text after the number is ignored, so 30 min is read as 30.
- A break longer than the shift gives 0 hours for that line, never a negative figure.
- Blank lines are skipped, so you can space out weeks.
Overtime, rounding and what the total pay figure covers
Total pay is total hours multiplied by one hourly rate. Nothing is added for overtime, night or weekend premiums, and nothing is taken off for tax. If hours beyond a threshold are paid at a higher rate, run the regular hours and the overtime hours as two separate lists with their own rates and add the two totals.
The calculator does not round punch times. Some employers round to the nearest 5, 6 or 15 minutes before paying; if yours does, enter the rounded times so the total matches your payslip.
Whether a break is unpaid is a matter for your contract and local law. Only put time in the break column that should not be paid. Short paid rest breaks should be left out so they stay inside the hours worked.
There is no export, print layout or saved history. Results stay on screen until the page is closed, and the shift list is processed in your browser without being uploaded.
Step by step
- 1
In Shifts, enter one shift per line in the form day, start time, end time, break minutes. Example: Monday, 09:00, 17:30, 30
- 2
Write the start and end in 24-hour HH:MM time, so 5:30 in the afternoon is 17:30.
- 3
Give the unpaid break in minutes as the fourth value, or leave it off for a shift with no break.
- 4
To calculate pay, enter a rate in Hourly rate (optional) and, if you want one other than $, a Currency symbol.
- 5
Read Hours worked for each line in the Shifts table, then Total hours and Decimal hours under Totals. Total pay appears there too once a rate above zero is entered.