Skip to content

Time card calculator

Paint your working hours on a 24-hour timetable. Keep a local draft and export totals.

Inputs

Processed in your browser.

Drafts stay in this browser; they do not sync between devices.

Drag across a row to mark work time.

Drag to add separate work periods. Overlaps merge. Drag left across midnight. Use × beside a period to remove it.

Remove this dayDate
0123456789101112131415161718192021222324
Unpaid break (min)

Result

Enter values, then calculate.

Paint hours instead of filling a form

Seven dated rows are ready to use. The ruler above them runs from 0 to 24 hours. Drag from your start time to your end time to paint a shift in 15-minute steps. Enter unpaid-break minutes in the column beside it; the default is zero. Empty rows do not count. The live total updates as you edit.

Adjust or remove a row

Drag either edge to adjust the painted time. Dragging the end left of the start marks an overnight shift, painted on both sides of midnight. Exact times opens optional minute-precise fields. With a keyboard, Enter on an empty timeline sets 09:00–17:00; arrow keys on either handle adjust 15 minutes, or one minute with Shift. Each row has its own remove button at the front. Add next day copies the last row and advances its date, up to 31 rows. Review copied hours.

Paint several separate periods in one row, such as 09:00–12:00 and 13:00–17:00. These total 7 hours before any additional unpaid break. Overlapping or touching periods merge so time is never counted twice. The gaps between periods are already excluded: enter only additional unpaid minutes in the break column. Use × beside a period to delete only that period; the × at the front removes the whole day. Click a period’s time label to edit it precisely. Empty Exact times fields can add another interval.

Keep and export your draft

Edits, including incomplete entries, save automatically in this browser when local storage is available. Returning to the same site in the same browser restores them. There is no account or device sync. Clearing browser data or using private browsing can remove the draft. Download CSV after calculating for a separate copy of valid records and totals.

Calculation and examples

Net minutes = end − start + 1,440 if the shift ends next day − unpaid break. A 09:00–17:30 shift with a 30-minute break gives 8:00, or 8.00 decimal hours. A 22:00–06:00 shift with next day selected and the same break gives 7:30, or 7.50 hours. Totals use whole minutes; CSV decimal hours are rounded to two places.

Will my entries survive a reload?

Yes, when browser storage is available: the status above the fields confirms saving or restoration. The draft belongs to this browser and site. If storage fails, the status says so; keep the page open and export a valid result before leaving. Clear deletes the saved draft and all current entries.

Why are decimal hours different from HH:MM?

HH:MM separates whole hours and minutes. Decimal hours divide total minutes by 60, so 7:30 becomes 7.50, not 7.30. Use the minutes column when exact minute totals matter.

How do overnight shifts work?

Dragging an end left of its start automatically marks next-day ending. In Exact times, choose Ends next day explicitly. A row covers at most 24 hours. Break minutes cannot exceed the shift. Use another row for split shifts or longer periods.

Can this calculate payroll?

It totals wall-clock work time only. It does not adjust time zones or daylight-saving transitions, calculate wages or overtime, or assess payroll rules. Verify your records and use the exported minutes in the appropriate payroll system.