Example Data Table
| Date | Start | End | Break | Project | Notes |
|---|---|---|---|---|---|
| 2026-02-23 | 09:00 | 17:30 | 30 | Internal Admin | Reporting and planning |
| 2026-02-24 | 08:30 | 19:00 | 45 | Client A | Implementation support |
| 2026-02-25 | 22:00 | 02:00 | 15 | Client B | Night maintenance window |
Tip: When end time is earlier than start time, the calculator assumes the shift passes midnight.
Formula Used
1) Worked minutes: worked_minutes = max(0, (end − start) − break_minutes)
2) Rounding: Round worked_minutes to the chosen increment using nearest, up, or down.
3) Hours: total_hours = rounded_minutes / 60
4) Daily overtime split:
- regular = min(total_hours, daily_ot1_after)
- ot1 = min(max(total_hours − daily_ot1_after, 0), daily_ot2_after − daily_ot1_after)
- ot2 = max(total_hours − daily_ot2_after, 0)
5) Weekly rule (optional): If weekly regular exceeds the threshold, extra regular hours are reclassified to OT1.
6) Pay (optional): pay = regular·rate + ot1·rate·ot1_mult + ot2·rate·ot2_mult
How to Use This Calculator
- Set your rounding increment and rounding mode.
- Enter daily overtime thresholds and optional weekly threshold.
- Optionally enter hourly rate, currency, and overtime multipliers.
- Add each work entry with date, start, end, and break minutes.
- Click Calculate to view totals and breakdowns.
- Download CSV or PDF for payroll and recordkeeping.