Work Hours Calculator NEW

Enter a week of clock-in/out shifts and calculate net hours, overtime, and gross pay with full midnight support.

Private by architecture: All processing is 100% client-side memory. Your data never leaves this browser tab.
Weekly Shift Timesheet
Day Clock In Clock Out Break (min) Net Hours
Pay & Overtime Configuration
Summary & Gross Pay
Regular Hours
-
Overtime Hours
-
Total Net Hours
-
Gross Pay
-

About This Tool

Calculates a full week of clock-in and clock-out shifts with net working hours, overtime splits, and total gross pay. Each shift duration is calculated with midnight handling (shifts from 22:00 to 06:30 correctly compute as 8.5 hours rather than negative durations), with unpaid breaks subtracted per shift.

Overtime rules can be configured per day (any time beyond the daily limit on a shift) or across the full week (hours exceeding the weekly quota), or turned off completely. Both regular and overtime hours are multiplied by your hourly wage and overtime rate multiplier.

Key Features

  • Midnight Shift Support: Shifts crossing past midnight calculate continuously without negative duration errors.
  • Dual Overtime Modes: Switch between California-style daily 8h overtime and standard weekly 40h overtime rules.
  • Per-Row Break Deduction: Specify unpaid meal or break minutes deducted cleanly from net work time.
  • Gross Pay Calculation: Instant earnings breakdown accounting for standard wages and 1.5x overtime rates.
  • One-Click Presets: Quickly populate typical 40-hour office workweeks or overnight shift schedules.
  • Strict Local Privacy: All shift math and rate calculations execute in your browser with zero server egress.

Frequently Asked Questions

How are overnight shifts (crossing midnight) handled?
If the clock-out time is earlier than the clock-in time, the shift is treated as crossing midnight and its length is computed as the time from clock-in to 24:00 plus clock-out to 00:00, not a negative duration.
What is the difference between daily and weekly overtime?
Daily overtime applies the threshold per shift (for example, anything over 8h in one day is overtime, even if the week total is under 40h). Weekly overtime applies the threshold to the running weekly total instead, so only hours past the weekly cutoff count as overtime regardless of which day they fall on.
What happens if the break is longer than the shift?
That row shows an error instead of a negative duration: fix the break or the clock-in/out times.
Can I leave days blank?
Yes. A row with no clock-in and no clock-out is treated as a day off and contributes zero hours, no error shown.
Is my pay rate or schedule sent anywhere?
No. All parsing and math run locally in your browser: nothing is uploaded.