How to calculate hours worked

To calculate hours worked, subtract the start time from the end time and then subtract any unpaid break: 09:00 to 17:30 with a 30 minute break is 8 hours. Add the days together for the weekly total, and the hours above your overtime limit are overtime. This guide covers night shifts, converting minutes to decimal hours for payroll, daily and weekly overtime and calculating pay.

5 min read

Hours for one shift

The working time of a shift is the end time minus the start time, minus unpaid breaks. Times are easiest to subtract in minutes. 09:00 is 540 minutes after midnight and 17:30 is 1,050, so the shift is 510 minutes long. Subtract a 30 minute lunch break and 480 minutes remain, which is 8 hours.

If the minutes of the end time are smaller than those of the start time, borrow an hour: 16:15 minus 08:40 is 15:75 minus 08:40, which is 7 hours 35 minutes. Only unpaid breaks are subtracted. Paid breaks, such as short rest breaks in many workplaces, count as working time.

In the calculator each row is one shift. Enter the start, the end and the break in minutes, and the hours appear at the end of the row. If a break is longer than the shift, the row shows a message instead of a negative number.

Try it here: Work Hours Calculator

Open the full tool page

Night shifts and split shifts

A night shift crosses midnight, so the end time is smaller than the start time. Add 24 hours to the end time before subtracting: 22:00 to 06:00 becomes 22:00 to 30:00, which is 8 hours. The calculator does this automatically whenever the end is earlier than the start, and marks the row as ending the next day. The hours are counted on the day the shift started.

A split shift, for example 07:00 to 11:00 and 16:00 to 20:00, is two shifts on the same day. Add a second row for the same day. Both rows count toward that day's total, which matters if you have a daily overtime limit.

Converting minutes to decimal hours

Payroll and invoicing systems usually want decimal hours, where the part after the point is a fraction of an hour, not minutes. 7 hours 45 minutes is 7.75 hours, not 7.45. To convert, divide the minutes by 60: 45 / 60 = 0.75. To go back, multiply the decimal part by 60: 0.4 × 60 = 24 minutes.

Mixing up the two formats is a common payroll mistake. Writing 7.30 when you mean 7 hours 30 minutes loses 12 minutes of pay, because 7.30 decimal hours is only 7 hours 18 minutes. The calculator can show every value as h:mm or as decimal hours, and the CSV file contains both.

MinutesDecimalMinutesDecimal
50.08350.58
100.17400.67
150.25450.75
200.33500.83
250.42550.92
300.50601.00

Weekly and daily overtime

Overtime rules come from your contract and from the law where you work, and they differ a lot between countries and even between regions. A common rule is that hours above 40 in a week are overtime. Some places also have a daily limit, for example hours above 8 in one day. Others use a 35, 38 or 45 hour week. Check the rule that applies to you and enter it in the calculator.

When both limits apply, count the daily overtime first. The remaining regular hours are then compared with the weekly limit, so that no hour is counted as overtime twice. Example: Monday 10 hours, Tuesday to Friday 8 hours each and Saturday 8 hours gives 50 hours. With a daily limit of 8, Monday has 2 hours of daily overtime. The other 48 hours are compared with the weekly limit of 40, which adds 8 more. Overtime is 10 hours and regular time 40 hours.

Calculating pay

Gross pay is regular hours times the hourly rate plus overtime hours times the hourly rate times the overtime multiplier. Using decimal hours makes this a simple multiplication. With 40 regular hours, 10 overtime hours, a rate of 20 and a multiplier of 1.5: 40 × 20 = 800, 10 × 20 × 1.5 = 300, total 1,100.

Enter an hourly rate and the overtime rate in the calculator to see the gross pay for the week. Amounts have no currency symbol, so it works with any currency. The result is before taxes and deductions; payslips can also include allowances for nights, weekends or holidays that the calculator does not add.

Keeping a weekly time card

A simple time card has one row per shift with the date or day, start, end, break and hours, and a total at the bottom. The calculator starts with Monday to Friday filled in from 09:00 to 17:30 with a 30 minute break; change the times to your own, clear rows you did not work, or use Clear all to start empty. Rows and settings are kept in your browser on this device, so you can fill in the week day by day.

To keep a record or send it to your employer, download the week as a CSV file. It lists every shift with hours in both formats and the totals for regular time and overtime, and it opens in Excel, Google Sheets or Numbers. Nothing is uploaded: the file is created on your device.

Step by step

  1. Enter each shiftChoose the day and type the start time, the end time and the unpaid break in minutes.
  2. Add extra rows if neededUse Add shift for split shifts or a second shift on the same day.
  3. Set overtime and payEnter the weekly limit, an optional daily limit, the hourly rate and the overtime rate.
  4. Check the totalsSwitch between h:mm and decimal hours and read the total, regular time, overtime and pay.
  5. Download the time cardUse Download CSV to save the week for a spreadsheet or your employer.

Frequently asked questions

How do I calculate hours worked between two times?

Subtract the start time from the end time and then the unpaid break. 08:30 to 17:00 with 30 minutes break is 8 hours.

How do I calculate a night shift that ends after midnight?

Add 24 hours to the end time before subtracting. 22:00 to 06:00 is 30:00 minus 22:00, which is 8 hours.

What is 7 hours 30 minutes in decimal?

7.5 hours. Divide the minutes by 60: 30 / 60 = 0.5.

How many hours is overtime?

It depends on your contract and local law. Hours above 40 a week is common, sometimes with a daily limit such as 8 hours.

Should I subtract paid breaks?

No. Only unpaid breaks are subtracted. Paid breaks count as working time.

Is my time card stored online?

No. It is calculated and kept only in your browser, and the CSV file is created on your device. The tool is free.