Upload a .xlsx, .xls, .ods, or .csv file with a header row and at least one start-timestamp column and one end-timestamp column. If your file keeps date and time in separate columns instead of one combined timestamp, the tool detects that and switches to a four-column mapping mode automatically — Start Date, Start Time, End Date, End Time.
Pick which of the four metrics you want, set your weekend days and business-hours window, and the calculator processes every row in the browser — no upload to a server, no wait for a queue. The result comes back as your original file with the metrics you chose appended as new columns. Nothing you already had gets touched.
| Start | End | Total | Business | Weekend | Weekday |
|---|---|---|---|---|---|
| Fri 8:52 AM | Fri 5:10 PM | 8h 18m | 8h 0m | 0h 0m | 8h 18m |
| Fri 9:40 PM | Mon 10:30 AM | 60h 50m | 1h 30m | 48h 0m | 12h 50m |
Same weekend and 9 AM–5 PM window as above. Row one is a normal Friday shift, so Business Hours and Weekday Hours match. Row two runs from Friday night through Monday morning — 60 hours 50 minutes on the wall clock, but only 1 hour 30 minutes of it falls inside business hours, because most of that span sits on a Saturday and Sunday. Four columns, one upload, no formula to write.
This is the version people reach for when there's a whole file to get through at once — payroll runs, timesheet reconciliation, support-ticket exports where SLA math depends on business hours rather than wall-clock hours. For a single quick answer without a file, the single timespan calculator does the same math for one start and end time, instantly.
You can upload .xlsx, .xls, .ods, or .csv files. The tool reads the file in your browser using the SheetJS library, so no server ever sees your data.
Yes. When the tool detects separate start/end date and time columns, it switches to a four-column mapping mode (Start Date, Start Time, End Date, End Time) instead of requiring a single combined timestamp column.
No. The calculator appends new columns for each metric you choose and returns a new downloadable .xlsx file. Your original columns and your original file are left untouched.
Total Hours is every elapsed hour between start and end with no exclusions. Business Hours counts only the hours that fall on non-weekend days within your configured daily window (e.g. 9 AM–5 PM). Weekend Hours counts hours that fall on the days you've marked as weekend, midnight to midnight. Weekday Hours is Total Hours minus Weekend Hours — the full 24-hour span on non-weekend days.
Yes. When Business Hours is selected, you can check boxes to exclude US federal holidays and/or UK bank holidays from the calculation, in addition to your chosen weekend days.
There's no hard row limit built into the tool. Since everything runs in your browser rather than on a server, the practical limit is your device's memory — spreadsheets with tens of thousands of rows generally process without issue.
No. The file is read directly into your browser's memory and never transmitted anywhere. Closing the tab clears everything. Nothing is stored in a database.