Skip to content

Timesheet Calculator with Breaks, Hours and Pay

List your shifts one per line in 24-hour time and get the hours worked for each, the total as hours and minutes and as a decimal, and gross pay at an hourly rate.

Runs in your browserFree, no sign-upLast reviewed

Settings

One shift per line: day, start time, end time, break minutes (24-hour HH:MM — break is optional, defaults to 0).

Results update automatically as you type.

Shifts

DayStartEndBreakHours worked
Monday09:0017:3030 min8h 00m
Tuesday09:0017:0030 min7h 30m
Wednesday09:0017:3030 min8h 00m
Thursday09:0017:3030 min8h 00m
Friday09:0016:0030 min6h 30m

Totals

Total hours
38h 00m
Decimal hours
38.00

Quick answers

How do I calculate hours worked with a lunch break?
Subtract the start time from the end time, then subtract the unpaid break. For 08:30 to 17:00 with a 60-minute lunch: 8 hours 30 minutes minus 1 hour leaves 7 hours 30 minutes, or 7.5 decimal hours.
How many hours is 9 to 5 with a 30-minute break?
7 hours 30 minutes, or 7.5 hours. Five such days come to 37.5 hours a week. With a full hour for lunch, 9 to 5 is 7 hours a day and 35 hours a week.
How do I convert minutes to decimal hours for payroll?
Divide the minutes by 60. Fifteen minutes is 0.25, 30 minutes is 0.5 and 45 minutes is 0.75, so 7 hours 45 minutes is 7.75 hours. Pay is the decimal hours multiplied by the hourly rate.
How do I calculate hours for a shift that crosses midnight?
Add 24 hours to the end time before subtracting. For 22:00 to 06:00: 06:00 becomes 30:00, and 30:00 minus 22:00 is 8 hours. With a 30-minute break the shift is 7 hours 30 minutes. The calculator does this automatically when the end is earlier than the start.
How do I work out pay from a timesheet?
Add up the hours worked, convert the total to decimal hours and multiply by the hourly rate. A week of 38 hours at 18.50 an hour is 38 × 18.50 = 703.00 before tax and deductions.
What is 17:30 in 12-hour time?
5:30 PM. For any time from 13:00 to 23:59, subtract 12 from the hour to get the PM time. To go the other way, add 12 to a PM hour: 3:15 PM is 15:15. Midnight is 00:00 and noon is 12:00.

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.

MinutesDecimal hoursMinutesDecimal hours
50.08350.58
60.10360.60
100.17400.67
120.20420.70
150.25450.75
180.30480.80
200.33500.83
240.40540.90
250.42550.92
300.50601.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.

StartEndBreakHours workedDecimal
09:0017:0030 min7h 30m7.50
09:0017:0060 min7h 00m7.00
08:0017:0060 min8h 00m8.00
08:0016:3030 min8h 00m8.00
07:0015:3030 min8h 00m8.00
06:0014:0020 min7h 40m7.67
14:0022:0030 min7h 30m7.50
22:0006:0030 min7h 30m7.50
07:0019:0060 min11h 00m11.00
09:0013:00none4h 00m4.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-hour24-hour12-hour24-hour
12:00 AM (midnight)00:0012:00 PM (noon)12:00
1:00 AM01:001:00 PM13:00
5:00 AM05:002:00 PM14:00
6:00 AM06:003:00 PM15:00
7:00 AM07:004:00 PM16:00
8:00 AM08:005:00 PM17:00
9:00 AM09:006:00 PM18:00
10:00 AM10:008:00 PM20:00
11:00 AM11:0010:00 PM22: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. 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. 2

    Write the start and end in 24-hour HH:MM time, so 5:30 in the afternoon is 17:30.

  3. 3

    Give the unpaid break in minutes as the fourth value, or leave it off for a shift with no break.

  4. 4

    To calculate pay, enter a rate in Hourly rate (optional) and, if you want one other than $, a Currency symbol.

  5. 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.

Questions people ask

Can I enter times as 5:30 PM instead of 17:30?
No. Only 24-hour HH:MM is accepted, and a 12-hour time with AM or PM produces an error naming the line. Convert afternoon times by adding 12 to the hour, so 5:30 PM becomes 17:30.
Does it calculate overtime?
No. Every hour is multiplied by the same rate. For overtime, total the regular hours at the base rate, total the extra hours at the overtime rate in a second run, and add the two pay figures.
Can I add more than seven days or more than one shift a day?
Yes. Each line is one shift and there is no limit on lines, so a fortnight, a month or several shifts on the same date all work. The total covers every line in the box.
What if I had two breaks in one shift?
Add them together and enter the sum. A 30-minute lunch and a 15-minute unpaid break go in as 45. Alternatively, enter each worked block as its own line with no break value.
Why does decimal hours show 16.08 for 16 hours 5 minutes?
Five minutes is 5 ÷ 60 = 0.0833 of an hour, which rounds to 0.08. Decimal hours express minutes as a fraction of 60, so they never match the minutes digits unless the minutes are zero.
Can I paste shifts from a spreadsheet?
Yes, if each row ends up as one line with commas between the values. Copying cells directly usually gives tab-separated text, so export or save the range as CSV first, or replace the tabs with commas.
Does the day name affect the calculation?
No. The first value is only a label copied into the results table. The calculator does not check dates, sort the lines or treat weekends differently.
Is the total gross or net pay?
Gross. It is hours multiplied by the rate, with no tax, insurance or other deductions. The currency symbol you type is placed in front of the figure and does not convert anything.

Looking for something else? Browse all calculators or see every tool.