Hours Calculator
This hours calculator finds the time worked between a start and an end time, deducts the break, and shows the result both in hours and minutes and in decimal hours for payroll, with the pay if you add an hourly rate.
Time worked
8:00
Decimal hours
8
7:30 means 7 hours 30 minutes, which is 7.5 in decimal.
Pay
200
Minutes to decimal
5 min
0.08
10 min
0.17
15 min
0.25
20 min
0.33
30 min
0.5
40 min
0.67
45 min
0.75
50 min
0.83
Examples
How to use
- 1
Enter your start time and end time. An end time before the start counts as the next day.
- 2
Add your unpaid break in minutes, 30 for a half hour lunch.
- 3
Read the net time worked in h:mm and in decimal hours, the format payroll systems use.
- 4
Enter an hourly rate to see the pay for the shift.
How do you work out hours worked?
Hours worked = end time - start time - unpaid breaks. A 9:00 to 17:30 day with a 30 minute lunch runs 8 hours 30 minutes gross, minus the break, so 8 hours net. At 25.00 an hour that shift pays 200.00.
The calculator keeps everything in minutes to stay exact: 9:00 is minute 540, 17:30 is minute 1050, the gap is 510 minutes; 510 - 30 = 480 minutes, which reads as 8.0 hours.
Why does payroll want decimal hours?
You cannot multiply 7:30 by an hourly rate as it stands, because the 30 means minutes, not hundredths. Payroll software reads decimal hours, where 7:30 becomes 7.5 since 30 minutes are half an hour. The conversion is minutes divided by 60.
| Minutes | Decimal hours |
|---|---|
| 15 | 0.25 |
| 20 | 0.33 |
| 30 | 0.50 |
| 40 | 0.67 |
| 45 | 0.75 |
The classic slip is typing 7.30 into payroll for 7 hours 30 minutes. That pays 7 hours 18 minutes of work: at 20.00 an hour the employee drops 4.00 on one shift, roughly 20.00 across a five day week.
How does the tool handle night shifts?
When the end time falls before the start time, the calculator assumes the shift finishes the next day. A 22:00 to 06:00 run is 8 hours gross; take off a 45 minute break and it nets 7:15, or 7.25 decimal hours. You never enter a date.
How do you go from one shift to a full week?
Work out each day on its own, then add the decimal values. Five days at 7.5 hours plus one at 6.25 make 43.75 hours. In many countries, hours past a weekly threshold (40 in the US under the FLSA) earn an overtime premium, often 1.5 times the rate. Decimal hours make the split easy: 43.75 hours against a 40 hour threshold leaves 3.75 overtime hours.
How do you convert minutes to decimal hours?
Divide the minutes by 60 and keep two decimals. The short table above covers the usual breaks; here is the full grid in 5 minute steps:
| Minutes | Decimal | Minutes | Decimal |
|---|---|---|---|
| 5 | 0.08 | 35 | 0.58 |
| 10 | 0.17 | 40 | 0.67 |
| 15 | 0.25 | 45 | 0.75 |
| 20 | 0.33 | 50 | 0.83 |
| 25 | 0.42 | 55 | 0.92 |
| 30 | 0.50 | 60 | 1.00 |
Three payroll checks with the grid:
- 7 hours 45 minutes at 16.00 an hour: 7.75 times 16.00 gives 124.00.
- 6 hours 30 minutes at 22.40: 6.50 times 22.40 gives 145.60.
- A week of 38 hours 15 minutes at 19.60: 38.25 times 19.60 gives 749.70.
Rounding each line to two decimals is safe for pay: the error stays under 0.005 hours per entry, about 18 seconds, and it mostly cancels out over a week. If your time cards are stamped in 24-hour notation, convert them first with the military time converter, then feed the times into this page.
Military Time Chart
| Military time | 12-hour time | Spoken |
|---|---|---|
| 0000 | 12:00 AM (midnight) | zero hundred hours |
| 0100 | 1:00 AM | zero one hundred hours |
| 0200 | 2:00 AM | zero two hundred hours |
| 0300 | 3:00 AM | zero three hundred hours |
| 0400 | 4:00 AM | zero four hundred hours |
| 0500 | 5:00 AM | zero five hundred hours |
| 0600 | 6:00 AM | zero six hundred hours |
| 0700 | 7:00 AM | zero seven hundred hours |
| 0800 | 8:00 AM | zero eight hundred hours |
| 0900 | 9:00 AM | zero nine hundred hours |
| 1000 | 10:00 AM | ten hundred hours |
| 1100 | 11:00 AM | eleven hundred hours |
| 1200 | 12:00 PM (noon) | twelve hundred hours |
| 1300 | 1:00 PM | thirteen hundred hours |
| 1400 | 2:00 PM | fourteen hundred hours |
| 1500 | 3:00 PM | fifteen hundred hours |
| 1600 | 4:00 PM | sixteen hundred hours |
| 1700 | 5:00 PM | seventeen hundred hours |
| 1800 | 6:00 PM | eighteen hundred hours |
| 1900 | 7:00 PM | nineteen hundred hours |
| 2000 | 8:00 PM | twenty hundred hours |
| 2100 | 9:00 PM | twenty-one hundred hours |
| 2200 | 10:00 PM | twenty-two hundred hours |
| 2300 | 11:00 PM | twenty-three hundred hours |
| 2400 | 12:00 AM (midnight, end of day) | twenty-four hundred hours |
Parameters
Every field of this tool can be prefilled from the URL. Use these query parameters:
| Parameter | Type | Default |
|---|---|---|
| start | string | 09:00 |
| end | string | 17:30 |
| breakMinutes | number | 30 |
| rate | number | 0 |
Example : https://www.veltotools.com/date/hours-calculator?start=09%3A00&end=17%3A30
API
The same tool is available as a free JSON API, with the same parameters as above. No key, no sign-up.
Frequently asked questions
Updated Jul 17, 2026