Data source & methodology
AuthoritativeDataSource: ISO 8601-1:2019 (Date and time — Representations for information interchange) and broadly used payroll conventions for rounding and overtime thresholds (employer/jurisdiction specific). For regulatory contexts, consult the EU Working Time Directive 2003/88/EC or the U.S. Department of Labor FLSA guidance.
- ISO 8601-1:2019 — Date/time arithmetic.
- EU Working Time Directive 2003/88/EC — Maximum weekly hours, rest breaks (jurisdictional policy).
- U.S. DOL FLSA Fact Sheet (e.g., #22) — Overtime (jurisdictional policy).
“Tutti i calcoli si basano rigorosamente sulle formule e sui dati forniti da questa fonte.”
The formula explained
\\[ m_{worked} = \\operatorname{round}_{q}\\!\\Big(\\max\\{0,\\; (t_{end} - t_{start})_{24h} - m_{break}\\}\\Big) \\] where \\( (t_{end} - t_{start})_{24h} = \\begin{cases} (t_{end}-t_{start}) & t_{end} \\ge t_{start}\\\\ (t_{end}+24\\,\\mathrm{h}-t_{start}) & t_{end} < t_{start} \\end{cases} \\) and \\( q \\in \\{0,5,6,10,15\\}\\) minutes.
Daily overtime (if enabled):
\\[ h^{\\text{OT}}_{d} = \\max\\big(0,\\; h_{worked,d} - T_d\\big) \\] Weekly overtime (if enabled):
\\[ h^{\\text{OT}}_{w} = \\max\\big(0,\\; h_{worked,w} - T_w\\big) \\] Gross pay estimate:
\\[ \\text{Pay} = r \\cdot h_{reg} + (\\alpha_d r)\\cdot h^{\\text{OT}}_{d} + (\\alpha_w r)\\cdot h^{\\text{OT}}_{w} \\] where \\(r\\) is hourly rate, \\(\\alpha_d,\\alpha_w\\) are multipliers, and hours are split into regular vs. OT buckets.
Glossary of variables
- Date: Calendar date of the shift.
- Start/End: Local times; if end < start, the shift is treated as crossing midnight.
- Unpaid break (min): Minutes subtracted from the raw duration.
- Rounding rule: Nearest increment applied to worked minutes (after break).
- Daily/Weekly thresholds: Hours after which overtime buckets start.
- Multipliers: Factor applied to base hourly rate for OT hours.
How it works: a step-by-step example
Inputs: Two shifts this week. Rounding: 15 min. Daily OT: 8 h ×1.5. Weekly OT: 40 h ×1.5. Pay rate: $20/h.
- Shift A: 2025-10-20, 09:00–17:30, 30 min break → raw 8.5 h − 0.5 h = 8.0 h → rounded 8.0 h → daily OT 0.0 h.
- Shift B: 2025-10-21, 22:00–06:15 (overnight), 15 min break → raw 8.25 h − 0.25 h = 8.0 h → rounded 8.0 h → daily OT 0.0 h.
- Weekly totals so far: 16.0 h. Weekly OT not triggered. Gross pay = 16 × $20 = $320.
Frequently asked questions
Does rounding apply before or after breaks?
After. The calculator subtracts unpaid breaks from the raw duration, then applies the rounding rule.
How are daily and weekly overtime combined?
Daily OT is computed per shift; weekly OT is computed from the weekly total. Totals are displayed separately to support diverse policies. Consult your jurisdiction to avoid double counting.
What if I forget to enter a break?
The tool assumes zero unpaid break if the field is empty or 0. Many workplaces enforce specific break policies; confirm with your employer.
Can I use decimal hours?
Yes—results are shown in decimal hours for clarity (e.g., 7.75 h = 7 hours 45 minutes).
Which week does the calculator use for weekly OT?
Weeks are grouped Monday–Sunday. Adding a pre-filled Mon–Sun grid helps keep entries aligned.
Tool developed by Ugo Candido. Content verified by CalcDomain Editorial Board.
Last accuracy review: