Working Hours Calculator
Smart time card & timesheet calculator with breaks, overtime, rounding, and pay estimation.
Enter your working hours
Week & Pay Settings
Overtime & Rounding
| Day | Date | Start | End | Unpaid break | Hours | Notes |
|---|
Weekly Summary
- Total hours
- 0.00
- Regular hours
- 0.00
- Overtime hours
- 0.00
- Days worked
- 0
Estimated Pay
- Regular pay
- 0.00
- Overtime pay
- 0.00
- Total pay
- 0.00
Pay is shown in your selected currency and uses the overtime multiplier above.
How to use the working hours calculator
This working hours calculator helps you total your daily and weekly hours, including unpaid breaks and overtime. It works well for employees, freelancers, and managers preparing timesheets or payroll.
- Select the week start day and optionally enter your hourly rate and currency.
-
For each day you worked, enter:
- Date (optional but useful for records).
- Start and End times (e.g. 9:00, 17:30, 7:15pm).
- Unpaid break duration (e.g. 30 min lunch).
- Choose your overtime mode (none, daily, or weekly) and thresholds if needed.
- Pick a rounding rule if your company rounds to the nearest 5, 6, 10, or 15 minutes.
- Click Calculate to see daily hours, weekly totals, overtime, and estimated pay.
- Use Copy summary, Download CSV, or Print to export your timesheet.
Time and hours calculation rules
The calculator converts all times to minutes since midnight, then applies these rules:
1. Raw daily hours
If the shift does not cross midnight:
\(\text{minutes\_worked} = \text{end} - \text{start} - \text{break\_minutes}\)
If the shift crosses midnight (end time earlier than start time):
\(\text{minutes\_worked} = (\text{end} + 24 \times 60) - \text{start} - \text{break\_minutes}\)
Then convert to hours:
\(\text{hours\_worked} = \dfrac{\text{minutes\_worked}}{60}\)
2. Rounding
If you choose a rounding step \(s\) in minutes (e.g. 15):
\(\text{rounded\_minutes} = \text{round}\left(\dfrac{\text{minutes\_worked}}{s}\right) \times s\)
Rounding is applied to each day before weekly totals and overtime are calculated.
3. Daily overtime (if enabled)
For each day:
\(\text{regular\_hours\_day} = \min(\text{hours\_day}, H_\text{daily})\)
\(\text{overtime\_hours\_day} = \max(0, \text{hours\_day} - H_\text{daily})\)
where \(H_\text{daily}\) is your daily overtime threshold (e.g. 8 hours).
4. Weekly overtime (if enabled)
First sum all weekly hours:
\(\text{total\_hours} = \sum \text{hours\_day}\)
Then:
\(\text{regular\_hours} = \min(\text{total\_hours}, H_\text{weekly})\)
\(\text{overtime\_hours} = \max(0, \text{total\_hours} - H_\text{weekly})\)
where \(H_\text{weekly}\) is your weekly overtime threshold (e.g. 40 hours).
5. Pay calculation
If your hourly rate is \(R\) and overtime multiplier is \(M\):
\(\text{regular\_pay} = \text{regular\_hours} \times R\)
\(\text{overtime\_pay} = \text{overtime\_hours} \times R \times M\)
\(\text{total\_pay} = \text{regular\_pay} + \text{overtime\_pay}\)
Examples
Example 1 – Standard 9–5 week with lunch break
Suppose you work Monday to Friday, 9:00–17:00, with a 30-minute unpaid lunch, no overtime.
- Daily hours: \(8\text{h} - 0.5\text{h} = 7.5\text{h}\)
- Weekly hours: \(7.5 \times 5 = 37.5\text{h}\)
Example 2 – Overnight shift with daily overtime
You work 22:00–06:30 with a 30-minute break, daily overtime after 8 hours.
- Raw duration: 22:00 → 06:30 next day = 8.5 hours
- Unpaid break: 0.5 hours → paid hours = 8.0
- Daily overtime: 0 hours (exactly at threshold)
FAQ
Can I leave some days blank?
Yes. Empty rows are ignored. Only days with a valid start and end time are included in the totals.
What time formats are supported?
You can use 24‑hour times (07:30, 18:00) or 12‑hour times with am/pm (7:30am, 6pm). Minutes are optional (e.g. “9” is treated as 9:00).
Is this calculator suitable for payroll?
It’s designed to help you prepare accurate timesheets and estimate pay. For official payroll, always confirm overtime rules, rounding policies, and tax calculations with your employer or accountant.